From 48b2f5237a74a43d73297b1afc00ce3eba2846e2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 3 Feb 2019 11:45:48 +0000 Subject: [PATCH 01/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- wingpanel.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index 3b161ef..3e8c852 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.2.2 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ URL: https://github.com/elementary/%{name} @@ -108,6 +108,9 @@ desktop-file-validate \ %changelog +* Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Fri Jan 18 2019 Fabio Valentini - 2.2.2-1 - Update to version 2.2.2. From 12aa142f5af5cf748d6d3373e3092fe8c45a5257 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Mon, 18 Mar 2019 22:19:43 +0100 Subject: [PATCH 02/44] update to version 2.2.3 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 7 +++++-- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 2e1efae..2cfe5e8 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ /wingpanel-2.2.0.tar.gz /wingpanel-2.2.1.tar.gz /wingpanel-2.2.2.tar.gz +/wingpanel-2.2.3.tar.gz diff --git a/sources b/sources index dd7cc48..b7c1266 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-2.2.2.tar.gz) = 5407eb8752aac45878005923d71db56d6e7dc278313269e91003dc030d0ec3310d732bacd5be1cddb6a52bf2bc6f06dec6bda39ee335e688351b13fd94382f90 +SHA512 (wingpanel-2.2.3.tar.gz) = c123ed735bb669c449cc576d2eccc3fb75a79c4d13a3cabe23958c5e44f04115960c49f9918d3bf128afd835786bc2a3aec85fd5deb07fbe313455130de6a572 diff --git a/wingpanel.spec b/wingpanel.spec index 3e8c852..58166e8 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -6,8 +6,8 @@ launcher.} Name: wingpanel Summary: Stylish top panel -Version: 2.2.2 -Release: 2%{?dist} +Version: 2.2.3 +Release: 1%{?dist} License: GPLv2+ URL: https://github.com/elementary/%{name} @@ -108,6 +108,9 @@ desktop-file-validate \ %changelog +* Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 +- Update to version 2.2.3. + * Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From 36f43288301d3e054eb06c050fd3ed8b0a3e9636 Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Tue, 16 Apr 2019 13:08:10 -0700 Subject: [PATCH 03/44] Rebuild with Meson fix for #1699099 --- wingpanel.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index 58166e8..143dbc9 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.2.3 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ URL: https://github.com/elementary/%{name} @@ -108,6 +108,9 @@ desktop-file-validate \ %changelog +* Tue Apr 16 2019 Adam Williamson - 2.2.3-2 +- Rebuild with Meson fix for #1699099 + * Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 - Update to version 2.2.3. From 337934fb66a9307354203539b3b9a786f8b2fc70 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Wed, 24 Apr 2019 23:13:01 +0200 Subject: [PATCH 04/44] update to version 2.2.4 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 7 +++++-- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 2cfe5e8..5b80838 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ /wingpanel-2.2.1.tar.gz /wingpanel-2.2.2.tar.gz /wingpanel-2.2.3.tar.gz +/wingpanel-2.2.4.tar.gz diff --git a/sources b/sources index b7c1266..22dd8d9 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-2.2.3.tar.gz) = c123ed735bb669c449cc576d2eccc3fb75a79c4d13a3cabe23958c5e44f04115960c49f9918d3bf128afd835786bc2a3aec85fd5deb07fbe313455130de6a572 +SHA512 (wingpanel-2.2.4.tar.gz) = b75d6235fd88145bdc42ae323953d9477ecfa582a0c91eefbaaeec3dfc01d926b24cfa2fea76b1c8ba4e1c4a83db17d8813a5de1c3f24ee71dd231c04ae49864 diff --git a/wingpanel.spec b/wingpanel.spec index 143dbc9..b809230 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -6,8 +6,8 @@ launcher.} Name: wingpanel Summary: Stylish top panel -Version: 2.2.3 -Release: 2%{?dist} +Version: 2.2.4 +Release: 1%{?dist} License: GPLv2+ URL: https://github.com/elementary/%{name} @@ -108,6 +108,9 @@ desktop-file-validate \ %changelog +* Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 +- Update to version 2.2.4. + * Tue Apr 16 2019 Adam Williamson - 2.2.3-2 - Rebuild with Meson fix for #1699099 From 859ea94a536bec57e9fa30a09cb22f1b905721af Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Thu, 6 Jun 2019 20:39:11 +0200 Subject: [PATCH 05/44] update to version 2.2.5 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 5 ++++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 5b80838..40cd8f1 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ /wingpanel-2.2.2.tar.gz /wingpanel-2.2.3.tar.gz /wingpanel-2.2.4.tar.gz +/wingpanel-2.2.5.tar.gz diff --git a/sources b/sources index 22dd8d9..f971636 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-2.2.4.tar.gz) = b75d6235fd88145bdc42ae323953d9477ecfa582a0c91eefbaaeec3dfc01d926b24cfa2fea76b1c8ba4e1c4a83db17d8813a5de1c3f24ee71dd231c04ae49864 +SHA512 (wingpanel-2.2.5.tar.gz) = 938789267c41b4760164e2a1adc7e14e077b376fc139a5937489f156a74323ce661428f4eca38a65e5d53fb17d55bd6d2a32e2bdeba3fb7818d897336fb216ca diff --git a/wingpanel.spec b/wingpanel.spec index b809230..e8c727a 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -6,7 +6,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel -Version: 2.2.4 +Version: 2.2.5 Release: 1%{?dist} License: GPLv2+ @@ -108,6 +108,9 @@ desktop-file-validate \ %changelog +* Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 +- Update to version 2.2.5. + * Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 - Update to version 2.2.4. From 7d8a46b4272c1caf2a090f33e975d1411df7e95c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jul 2019 03:31:14 +0000 Subject: [PATCH 06/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- wingpanel.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index e8c727a..80d8f3e 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.2.5 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ URL: https://github.com/elementary/%{name} @@ -108,6 +108,9 @@ desktop-file-validate \ %changelog +* Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 - Update to version 2.2.5. From 8363d7658b34aed3a2d2fde64ed602ae81686f8f Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Fri, 1 Nov 2019 13:52:26 +0100 Subject: [PATCH 07/44] update to version 2.2.6 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 24 ++++++++++++++++-------- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index 40cd8f1..46f7970 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ /wingpanel-2.2.3.tar.gz /wingpanel-2.2.4.tar.gz /wingpanel-2.2.5.tar.gz +/wingpanel-2.2.6.tar.gz diff --git a/sources b/sources index f971636..2bede81 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-2.2.5.tar.gz) = 938789267c41b4760164e2a1adc7e14e077b376fc139a5937489f156a74323ce661428f4eca38a65e5d53fb17d55bd6d2a32e2bdeba3fb7818d897336fb216ca +SHA512 (wingpanel-2.2.6.tar.gz) = 19057c25f32e6591cd691bb98387b94050333303b72a942bc1fc0004887de5f0d5cc9888975c53f8ae5d5087f9e5863a0b355a772d3e3146aebe206420989f51 diff --git a/wingpanel.spec b/wingpanel.spec index 80d8f3e..dad731c 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,4 +1,4 @@ -%global appname io.elementary.desktop.wingpanel +%global appname io.elementary.wingpanel %global common_description %{expand: Stylish top panel that holds indicators and spawns an application @@ -6,15 +6,16 @@ launcher.} Name: wingpanel Summary: Stylish top panel -Version: 2.2.5 -Release: 2%{?dist} +Version: 2.2.6 +Release: 1%{?dist} License: GPLv2+ -URL: https://github.com/elementary/%{name} +URL: https://github.com/elementary/wingpanel Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz BuildRequires: desktop-file-utils BuildRequires: gettext +BuildRequires: libappstream-glib BuildRequires: meson BuildRequires: vala >= 0.24.0 @@ -67,7 +68,10 @@ mkdir -p %{buildroot}/%{_sysconfdir}/wingpanel.d %check desktop-file-validate \ - %{buildroot}/%{_datadir}/applications/wingpanel.desktop + %{buildroot}/%{_datadir}/applications/%{appname}.desktop + +appstream-util validate-relax --nonet \ + %{buildroot}/%{_datadir}/metainfo/%{appname}.appdata.xml %files -f wingpanel.lang @@ -78,9 +82,10 @@ desktop-file-validate \ %{_libdir}/gala/plugins/libwingpanel-interface.so -%{_datadir}/applications/wingpanel.desktop -%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml -%{_datadir}/icons/hicolor/scalable/apps/wingpanel.svg +%{_datadir}/applications/%{appname}.desktop +%{_datadir}/glib-2.0/schemas/io.elementary.desktop.wingpanel.gschema.xml +%{_datadir}/icons/hicolor/scalable/apps/%{appname}.svg +%{_datadir}/metainfo/%{appname}.appdata.xml %files libs @@ -108,6 +113,9 @@ desktop-file-validate \ %changelog +* Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 +- Update to version 2.2.6. + * Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From fa4c288fc2c63bb77d14caec7179a3453074faf5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 31 Jan 2020 03:44:47 +0000 Subject: [PATCH 08/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- wingpanel.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index dad731c..d780621 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.2.6 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel @@ -113,6 +113,9 @@ appstream-util validate-relax --nonet \ %changelog +* Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 - Update to version 2.2.6. From bef6ee0fb18bf93a03da7aaddb93bdb8f0dda0e0 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Tue, 3 Mar 2020 18:46:01 +0100 Subject: [PATCH 09/44] update to version 2.3.0 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 12 ++++++++++-- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 46f7970..c69cc8c 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ /wingpanel-2.2.4.tar.gz /wingpanel-2.2.5.tar.gz /wingpanel-2.2.6.tar.gz +/wingpanel-2.3.0.tar.gz diff --git a/sources b/sources index 2bede81..75ac110 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-2.2.6.tar.gz) = 19057c25f32e6591cd691bb98387b94050333303b72a942bc1fc0004887de5f0d5cc9888975c53f8ae5d5087f9e5863a0b355a772d3e3146aebe206420989f51 +SHA512 (wingpanel-2.3.0.tar.gz) = c4bbcd2af98511a6957578fef087c0324db876f377b17fe14a0df3d324682c733804b8b2d0653cc7d77f160bc05e73826f19959e5f5a02fc70e161d37fb327e4 diff --git a/wingpanel.spec b/wingpanel.spec index d780621..8337178 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -6,8 +6,8 @@ launcher.} Name: wingpanel Summary: Stylish top panel -Version: 2.2.6 -Release: 2%{?dist} +Version: 2.3.0 +Release: 1%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel @@ -70,6 +70,9 @@ mkdir -p %{buildroot}/%{_sysconfdir}/wingpanel.d desktop-file-validate \ %{buildroot}/%{_datadir}/applications/%{appname}.desktop +desktop-file-validate \ + %{buildroot}/%{_sysconfdir}/xdg/autostart/%{appname}.desktop + appstream-util validate-relax --nonet \ %{buildroot}/%{_datadir}/metainfo/%{appname}.appdata.xml @@ -78,6 +81,8 @@ appstream-util validate-relax --nonet \ %license COPYING %doc README.md +%config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}.desktop + %{_bindir}/wingpanel %{_libdir}/gala/plugins/libwingpanel-interface.so @@ -113,6 +118,9 @@ appstream-util validate-relax --nonet \ %changelog +* Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 +- Update to version 2.3.0. + * Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 041cd67995d852456b2873700df01ed599c2d2c0 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Sat, 4 Apr 2020 00:25:20 +0200 Subject: [PATCH 10/44] bump to commit 88305e0 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 15 ++++++++++++--- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index c69cc8c..90750b2 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ /wingpanel-2.2.5.tar.gz /wingpanel-2.2.6.tar.gz /wingpanel-2.3.0.tar.gz +/wingpanel-88305e0.tar.gz diff --git a/sources b/sources index 75ac110..d3fae50 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-2.3.0.tar.gz) = c4bbcd2af98511a6957578fef087c0324db876f377b17fe14a0df3d324682c733804b8b2d0653cc7d77f160bc05e73826f19959e5f5a02fc70e161d37fb327e4 +SHA512 (wingpanel-88305e0.tar.gz) = d8a293b26d6faab1c8d3da337727d9be18ce6fb51a4e60ec899b93edc61c4fc2b0ce9973b222a5dbbde02e0ab74f939874aa267ed8372a2eddc307e18fbeacb1 diff --git a/wingpanel.spec b/wingpanel.spec index 8337178..821fd2f 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,3 +1,7 @@ +%global commit 88305e0e526b5257e67b778c236a7a4333c18be8 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20200313 + %global appname io.elementary.wingpanel %global common_description %{expand: @@ -7,11 +11,11 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.3.0 -Release: 1%{?dist} +Release: 2.%{commitdate}.git%{shortcommit}%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel -Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz +Source0: %{url}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz BuildRequires: desktop-file-utils BuildRequires: gettext @@ -19,6 +23,8 @@ BuildRequires: libappstream-glib BuildRequires: meson BuildRequires: vala >= 0.24.0 +BuildRequires: mesa-libEGL-devel + BuildRequires: pkgconfig(gala) BuildRequires: pkgconfig(gee-0.8) BuildRequires: pkgconfig(glib-2.0) >= 2.32 @@ -46,7 +52,7 @@ This package contains the files required for developing for wingpanel. %prep -%autosetup +%autosetup -n %{name}-%{commit} -p1 %build @@ -118,6 +124,9 @@ appstream-util validate-relax --nonet \ %changelog +* Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 +- Bump to commit 88305e0. + * Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 - Update to version 2.3.0. From 0d749dcb628fd5f9ecbf08a8c1c75511028d38b9 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Mon, 6 Apr 2020 11:46:14 +0200 Subject: [PATCH 11/44] update to version 2.3.1 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 15 +++++++-------- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index 90750b2..82e3fa9 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,4 @@ /wingpanel-2.2.6.tar.gz /wingpanel-2.3.0.tar.gz /wingpanel-88305e0.tar.gz +/wingpanel-2.3.1.tar.gz diff --git a/sources b/sources index d3fae50..2293672 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-88305e0.tar.gz) = d8a293b26d6faab1c8d3da337727d9be18ce6fb51a4e60ec899b93edc61c4fc2b0ce9973b222a5dbbde02e0ab74f939874aa267ed8372a2eddc307e18fbeacb1 +SHA512 (wingpanel-2.3.1.tar.gz) = 5afb5e2dbc25ee345fece0dd679d04581738295a958be79a7e2eb2d5caf01b0ac7f431c5bf499e515dbafa686d13a6b798bd93069728c855eb77289706a73b43 diff --git a/wingpanel.spec b/wingpanel.spec index 821fd2f..19db7f3 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,7 +1,3 @@ -%global commit 88305e0e526b5257e67b778c236a7a4333c18be8 -%global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20200313 - %global appname io.elementary.wingpanel %global common_description %{expand: @@ -10,12 +6,12 @@ launcher.} Name: wingpanel Summary: Stylish top panel -Version: 2.3.0 -Release: 2.%{commitdate}.git%{shortcommit}%{?dist} +Version: 2.3.1 +Release: 1%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel -Source0: %{url}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz +Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz BuildRequires: desktop-file-utils BuildRequires: gettext @@ -52,7 +48,7 @@ This package contains the files required for developing for wingpanel. %prep -%autosetup -n %{name}-%{commit} -p1 +%autosetup -p1 %build @@ -124,6 +120,9 @@ appstream-util validate-relax --nonet \ %changelog +* Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 +- Update to version 2.3.1. + * Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 - Bump to commit 88305e0. From ca68f4deb7f1dfa6ca46b52cc21fe23d7bea5226 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Mon, 6 Apr 2020 14:13:54 +0200 Subject: [PATCH 12/44] rebuild for gala 3.3.0 and mutter 3.36 --- wingpanel.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index 19db7f3..f71b790 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.3.1 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel @@ -120,6 +120,9 @@ appstream-util validate-relax --nonet \ %changelog +* Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 +- Rebuild for gala 3.3.0 and mutter 3.36. + * Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 - Update to version 2.3.1. From 146c8bb511da4e6620ea90be360e5363ea1264c2 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Fri, 1 May 2020 14:57:54 +0200 Subject: [PATCH 13/44] obsolete the retired wingpanel-indicator-ayatana package --- wingpanel.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index f71b790..825c4a9 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.3.1 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel @@ -29,6 +29,10 @@ BuildRequires: pkgconfig(gtk+-3.0) >= 3.10 Requires: %{name}-libs%{?_isa} = %{version}-%{release} +# wingpanel ayatana appindicator support was abandoned by upstream +# wingpanel-indicator-ayatana-2.0.3-10.fc32 retired for fedora 33+ +Obsoletes: wingpanel-indicator-ayatana < 2.0.3-11 + %description %{common_description} @@ -120,6 +124,9 @@ appstream-util validate-relax --nonet \ %changelog +* Fri May 01 2020 Fabio Valentini - 2.3.1-3 +- Obsolete the retired wingpanel-indicator-ayatana package. + * Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 - Rebuild for gala 3.3.0 and mutter 3.36. From 7c65aafdc507401660b589e4b5ba8e688e059c92 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Sun, 21 Jun 2020 22:49:02 +0200 Subject: [PATCH 14/44] update to version 2.3.2 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 9 ++++++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 82e3fa9..225e6ad 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,4 @@ /wingpanel-2.3.0.tar.gz /wingpanel-88305e0.tar.gz /wingpanel-2.3.1.tar.gz +/wingpanel-2.3.2.tar.gz diff --git a/sources b/sources index 2293672..9767bf4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-2.3.1.tar.gz) = 5afb5e2dbc25ee345fece0dd679d04581738295a958be79a7e2eb2d5caf01b0ac7f431c5bf499e515dbafa686d13a6b798bd93069728c855eb77289706a73b43 +SHA512 (wingpanel-2.3.2.tar.gz) = de4ebf23fedd13dc6719beb29ef6490f466839aa1b25aa8ea0023c3296c1f54423a52c7edd70127c1ba59d03c78f6ed5ecf3dc262046895b86bcd93d537347ae diff --git a/wingpanel.spec b/wingpanel.spec index 825c4a9..662b4a3 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -6,8 +6,8 @@ launcher.} Name: wingpanel Summary: Stylish top panel -Version: 2.3.1 -Release: 3%{?dist} +Version: 2.3.2 +Release: 1%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel @@ -24,7 +24,7 @@ BuildRequires: mesa-libEGL-devel BuildRequires: pkgconfig(gala) BuildRequires: pkgconfig(gee-0.8) BuildRequires: pkgconfig(glib-2.0) >= 2.32 -BuildRequires: pkgconfig(granite) +BuildRequires: pkgconfig(granite) >= 5.4.0 BuildRequires: pkgconfig(gtk+-3.0) >= 3.10 Requires: %{name}-libs%{?_isa} = %{version}-%{release} @@ -124,6 +124,9 @@ appstream-util validate-relax --nonet \ %changelog +* Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 +- Update to version 2.3.2. + * Fri May 01 2020 Fabio Valentini - 2.3.1-3 - Obsolete the retired wingpanel-indicator-ayatana package. From 8720ade6446e1bb4fb6c263b480163bf98c0dcf9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 29 Jul 2020 14:10:19 +0000 Subject: [PATCH 15/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- wingpanel.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index 662b4a3..4b248bd 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.3.2 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel @@ -124,6 +124,9 @@ appstream-util validate-relax --nonet \ %changelog +* Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 - Update to version 2.3.2. From c165717db9c7556cf389746b9fd20f55f67015ec Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 1 Aug 2020 09:39:36 +0000 Subject: [PATCH 16/44] - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- wingpanel.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index 4b248bd..0e61aa8 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.3.2 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel @@ -124,6 +124,10 @@ appstream-util validate-relax --nonet \ %changelog +* Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 139884d2548529b5a28f2775e80eba2dff1adbde Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Sat, 29 Aug 2020 21:11:02 +0200 Subject: [PATCH 17/44] add patch for initial mutter 3.38 support --- ...-support-for-libmutter-7-mutter-3.38.patch | 1923 +++++++++++++++++ wingpanel.spec | 7 +- 2 files changed, 1929 insertions(+), 1 deletion(-) create mode 100644 0001-initial-support-for-libmutter-7-mutter-3.38.patch diff --git a/0001-initial-support-for-libmutter-7-mutter-3.38.patch b/0001-initial-support-for-libmutter-7-mutter-3.38.patch new file mode 100644 index 0000000..6847bcf --- /dev/null +++ b/0001-initial-support-for-libmutter-7-mutter-3.38.patch @@ -0,0 +1,1923 @@ +From ba7e1a71c73c3a50a9c00449425533d5a73d3efd Mon Sep 17 00:00:00 2001 +From: Fabio Valentini +Date: Mon, 24 Aug 2020 17:59:10 +0200 +Subject: [PATCH] initial support for libmutter-7 / mutter 3.38 + +--- + vapi/Clutter-7-custom.vala | 42 +++++++ + vapi/Clutter-7.metadata | 189 +++++++++++++++++++++++++++++++ + vapi/Cogl-7-custom.vala | 161 +++++++++++++++++++++++++++ + vapi/Cogl-7.metadata | 84 ++++++++++++++ + vapi/Meta-7.metadata | 190 ++++++++++++++++++++++++++++++++ + vapi/libmutter-7.deps | 1 + + vapi/libmutter-7.vapi | 1 + + vapi/libmutter.vapi | 72 +++++++++++- + vapi/meson.build | 69 ++++++++++++ + vapi/mutter-clutter-7.deps | 6 + + vapi/mutter-clutter-7.vapi | 1 + + vapi/mutter-clutter.vapi | 156 ++++++++++++++++++++++++-- + vapi/mutter-cogl-6.vapi | 53 +++++++-- + vapi/mutter-cogl-7.deps | 1 + + vapi/mutter-cogl-7.vapi | 1 + + vapi/mutter-cogl-pango-6.vapi | 21 ++-- + vapi/mutter-cogl-pango-7.vapi | 1 + + vapi/mutter-cogl-path-7.vapi | 1 + + wingpanel-interface/meson.build | 12 +- + 19 files changed, 1037 insertions(+), 25 deletions(-) + create mode 100644 vapi/Clutter-7-custom.vala + create mode 100644 vapi/Clutter-7.metadata + create mode 100644 vapi/Cogl-7-custom.vala + create mode 100644 vapi/Cogl-7.metadata + create mode 100644 vapi/Meta-7.metadata + create mode 120000 vapi/libmutter-7.deps + create mode 120000 vapi/libmutter-7.vapi + create mode 100644 vapi/mutter-clutter-7.deps + create mode 120000 vapi/mutter-clutter-7.vapi + create mode 120000 vapi/mutter-cogl-7.deps + create mode 120000 vapi/mutter-cogl-7.vapi + create mode 120000 vapi/mutter-cogl-pango-7.vapi + create mode 120000 vapi/mutter-cogl-path-7.vapi + +diff --git a/vapi/Clutter-7-custom.vala b/vapi/Clutter-7-custom.vala +new file mode 100644 +index 0000000..7350fd9 +--- /dev/null ++++ b/vapi/Clutter-7-custom.vala +@@ -0,0 +1,42 @@ ++namespace Clutter { ++ ++ 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 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 (); ++ } ++ ++ 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); ++ } ++ ++ [CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)] ++ public struct Capture { ++ } ++} +diff --git a/vapi/Clutter-7.metadata b/vapi/Clutter-7.metadata +new file mode 100644 +index 0000000..1d44d3f +--- /dev/null ++++ b/vapi/Clutter-7.metadata +@@ -0,0 +1,189 @@ ++// Non mini-object ++ActorBox struct ++Color struct ++Knot struct ++Margin struct ++PaintVolume struct ++PathNode struct ++Perspective struct ++Units struct ++ ++*.ref unowned ++ ++init.argv unowned ++init_with_args ++ .argv unowned ++Actor ++ .apply_transform.matrix ref ++ .get_abs_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#virtual_method name="get_paint_volume_vfunc" ++ .get_paint_volume#virtual_method.volume out ++ .queue_redraw#signal skip ++ .queue_redraw#virtual_method skip ++Container ++ .add_actor skip=false ++ .class_* skip ++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 ++ ++// 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 ++Backend ++ .get_cogl_context skip=false ++Box ++ .pack skip=false ++ .pack_after skip=false ++ .pack_at skip=false ++ .pack_before skip=false ++Container ++ .child_get skip=false ++ .child_set skip=false ++ .remove 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 ++ ++// Skipped upstream for unknown reasons ++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 ++Margin ++ .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" ++color_from_* skip ++units_from_* skip ++ ++// Struct return values ++color_get_static nullable ++ ++// Upstream ++Event ++ .get_position.position out ++ ++// Remove for clutter-2.0 ++///////////////////////// ++ ++StageView.layout skip ++ ++Stage ++ .event name="emit_event" ++ .paint_view.redraw_clip type="Cairo.Region" ++ ++Capture ++ .image type="Cairo.ImageSurface" ++ ++// *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" ++ProximityEvent struct=false base_type="Clutter.Event" ++PadButtonEvent struct=false base_type="Clutter.Event" ++PadRingEvent struct=false base_type="Clutter.Event" ++PadStripEvent 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" ++ ++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-7-custom.vala b/vapi/Cogl-7-custom.vala +new file mode 100644 +index 0000000..f603471 +--- /dev/null ++++ b/vapi/Cogl-7-custom.vala +@@ -0,0 +1,161 @@ ++namespace Cogl { ++ public struct Color { ++ [Version (since = "1.4")] ++ [CCode (cname="cogl_color_init_from_4f")] ++ public Color.from_4f (float red, float green, float blue, float alpha); ++ [Version (since = "1.4")] ++ [CCode (cname="cogl_color_init_from_4fv")] ++ public Color.from_4fv (float color_array); ++ [Version (since = "1.4")] ++ [CCode (cname="cogl_color_init_from_4ub")] ++ public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha); ++ [Version (since = "1.16")] ++ [CCode (cname="cogl_color_init_from_hsl")] ++ public Color.from_hsl (float hue, float saturation, float luminance); ++ } ++ ++ [Compact] ++ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] ++ public class Shader : Cogl.Handle { ++ } ++ ++ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")] ++ public class Primitive : Cogl.Object { ++ [CCode (has_construct_function = false)] ++ protected Primitive (); ++ [Version (since = "1.10")] ++ public Cogl.Primitive copy (); ++ [Version (since = "1.16")] ++ public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline); ++ public int get_first_vertex (); ++ public Cogl.VerticesMode get_mode (); ++ [Version (since = "1.8")] ++ public int get_n_vertices (); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data); ++ public void set_first_vertex (int first_vertex); ++ public void set_mode (Cogl.VerticesMode mode); ++ [Version (since = "1.8")] ++ public void set_n_vertices (int n_vertices); ++ } ++ ++ [Compact] ++ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] ++ public class Program : Cogl.Handle { ++ } ++ ++ [Compact] ++ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] ++ public class Handle { ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")] ++ [Version (deprecated = true, deprecated_since = "1.16")] ++ public bool is_material (); ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")] ++ [Version (deprecated = true, deprecated_since = "1.16")] ++ public bool is_program (Cogl.Handle handle); ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")] ++ [Version (deprecated = true, deprecated_since = "1.16")] ++ public bool is_shader (); ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")] ++ public bool is_texture (); ++ } ++ ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2 { ++ public float x; ++ public float y; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2C4 { ++ public float x; ++ public float y; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2T2 { ++ public float x; ++ public float y; ++ public float s; ++ public float t; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2T2C4 { ++ public float x; ++ public float y; ++ public float s; ++ public float t; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3 { ++ public float x; ++ public float y; ++ public float z; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3C4 { ++ public float x; ++ public float y; ++ public float z; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3T2 { ++ public float x; ++ public float y; ++ public float z; ++ public float s; ++ public float t; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3T2C4 { ++ public float x; ++ public float y; ++ public float z; ++ public float s; ++ public float t; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++} +diff --git a/vapi/Cogl-7.metadata b/vapi/Cogl-7.metadata +new file mode 100644 +index 0000000..cdf33de +--- /dev/null ++++ b/vapi/Cogl-7.metadata +@@ -0,0 +1,84 @@ ++* cheader_filename="cogl/cogl.h" ++ ++Color struct ++Matrix struct ++ ++Material base_type="Cogl.Handle" ++MaterialLayer base_type="Cogl.Handle" ++ ++_ColorSizeCheck skip ++_MatrixSizeCheck skip ++_TextureVertexSizeCheck skip ++ ++Color ++ .init_* skip ++color_init_from_hsl skip ++color_equal.v1 type="Cogl.Color" ++color_equal.v2 type="Cogl.Color" ++color_equal symbol_type=method ++ ++texture_new_* name="texture_new_(.+)" parent="Cogl.Texture" ++Texture ++ .get_data.data type="uint8[]" ++ .new_from_data.data type="uint8[]" ++ .set_data.data type="uint8[]" ++ .set_region.data type="uint8[]" ++ ++Texture2D ++ .new_from_data skip=false ++ .new_from_data.data array=true ++ ++Matrix ++ .transform_points.points_in type="uint8[]" ++ .transform_points.stride_out out ++ .transform_points.points_out out type="uint8[]" ++ .project_points.points_in type="uint8[]" ++ .project_points.stride_out out ++ .project_points.points_out out type="uint8[]" ++ ++matrix_equal.v1 type="Cogl.Matrix" ++matrix_equal.v2 type="Cogl.Matrix" ++matrix_equal symbol_type=method ++ ++shader_* name="shader_(.+)" parent="Cogl.Shader" ++shader_* symbol_type="method" instance_idx=0 ++ ++program_* name="program_(.+)" parent="Cogl.Program" ++program_attach_shader symbol_type="method" instance_idx=0 ++program_get_uniform_location symbol_type="method" instance_idx=0 ++program_link symbol_type="method" instance_idx=0 ++program_set_uniform_1f symbol_type="method" instance_idx=0 ++program_set_uniform_1i symbol_type="method" instance_idx=0 ++program_set_uniform_float symbol_type="method" instance_idx=0 ++program_set_uniform_int symbol_type="method" instance_idx=0 ++program_set_uniform_matrix symbol_type="method" instance_idx=0 ++ ++is_bitmap parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_offscreen parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_program parent="Cogl.Handle" ++is_shader parent="Cogl.Handle" ++is_texture parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_context parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_framebuffer parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_onscreen parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_pipeline parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_texture_2d parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_texture_2d_sliced parent="Cogl.Object" symbol_type="method" instance_idx=0 ++ ++create_program type="unowned Cogl.Program" name="create" parent="Cogl.Program" ++create_shader type="unowned Cogl.Shader" name="create" parent="Cogl.Shader" ++ ++foreach_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 ++get_clock_time parent="Cogl.Context" symbol_type="method" instance_idx=0 ++get_graphics_reset_status parent="Cogl.Context" symbol_type="method" instance_idx=0 ++has_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 ++ ++Bitmap.error_quark parent="Cogl.BitmapError" name="quark" ++Texture.error_quark parent="Cogl.TextureError" name="quark" ++texture_error_quark skip ++ ++BitmapError errordomain ++BlendStringError errordomain ++RendererError errordomain ++SystemError errordomain ++TextureError errordomain +diff --git a/vapi/Meta-7.metadata b/vapi/Meta-7.metadata +new file mode 100644 +index 0000000..f098bae +--- /dev/null ++++ b/vapi/Meta-7.metadata +@@ -0,0 +1,190 @@ ++* skip=false ++*.* skip=false ++* cheader_filename="meta/main.h" ++ ++Backend cheader_filename="meta/meta-backend.h" ++Backend.gpu_added skip ++get_backend parent="Meta.Backend" cheader_filename="meta/meta-backend.h" ++Background cheader_filename="meta/meta-background.h" ++Background.set_file.file nullable ++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" ++BarrierDirection cheader_filename="meta/barrier.h" ++BarrierEvent cheader_filename="meta/barrier.h" ++ButtonFunction cheader_filename="meta/common.h" ++ButtonLayout cheader_filename="meta/common.h" ++Compositor cheader_filename="meta/compositor.h" ++Compositor.sync_stack.stack type_arguments="Meta.Window" ++get_feedback_group_for_display parent="Meta.Display" symbol_type="method" name="get_feedback_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++get_stage_for_display parent="Meta.Display" symbol_type="method" name="get_stage" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++get_top_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_top_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++get_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++disable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="disable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++enable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="enable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++ ++get_window_actors parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" type_arguments="Meta.WindowActor" ++focus_stage_window parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++ ++CompEffect cheader_filename="meta/compositor.h" ++CloseDialog cheader_filename="meta/meta-close-dialog.h" ++CloseDialogResponse cheader_filename="meta/meta-close-dialog.h" ++Cursor cheader_filename="meta/common.h" ++CursorTracker cheader_filename="meta/meta-cursor-tracker.h" ++CursorTracker.get_for_display parent="Meta.Display" symbol_type="method" instance_idx=0 name="get_cursor_tracker" ++CursorTracker.get_pointer.x out ++CursorTracker.get_pointer.y out ++CursorTracker.get_pointer.mods out ++DebugTopic cheader_filename="meta/util.h" ++Direction cheader_filename="meta/common.h" ++Display cheader_filename="meta/display.h" ++DisplayCorner cheader_filename="meta/display.h" ++DisplayDirection cheader_filename="meta/display.h" ++Dnd cheader_filename="meta/meta-dnd.h" ++EdgeType cheader_filename="meta/boxes.h" ++Edge cheader_filename="meta/boxes.h" ++Frame cheader_filename="meta/types.h" ++FrameBorders cheader_filename="meta/common.h" ++FrameFlags cheader_filename="meta/common.h" ++FrameType cheader_filename="meta/common.h" ++GrabOp cheader_filename="meta/common.h" ++Group cheader_filename="meta/group.h" ++Group.property_notify.event type="X.Event" ref ++IdleMonitor cheader_filename="meta/meta-idle-monitor.h" ++IdleMonitorWatchFunc cheader_filename="meta/meta-idle-monitor.h" ++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" ++InhibitShortcutsDialogResponse cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" ++KeyBinding cheader_filename="meta/keybindings.h" ++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler" cheader_filename="meta/keybindings.h" ++KeyBindingAction cheader_filename="meta/prefs.h" ++KeyBindingFlags cheader_filename="meta/prefs.h" ++KeyHandlerFunc cheader_filename="meta/prefs.h" ++KeyHandlerFunc.event type="Clutter.KeyEvent" ++LaunchContext cheader_filename="meta/meta-launch-context.h" ++LaterType cheader_filename="meta/util.h" ++LocaleDirection cheader_filename="meta/util.h" ++MaximizeFlags cheader_filename="meta/window.h" ++ModalOptions cheader_filename="meta/meta-plugin.h" ++MonitorManager cheader_filename="meta/meta-monitor-manager.h" ++MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" ++MotionDirection cheader_filename="meta/common.h" ++PadActionType cheader_filename="meta/display.h" ++Plugin cheader_filename="meta/meta-plugin.h" ++Plugin.xevent_filter.event type="X.Event" ref ++PluginInfo cheader_filename="meta/meta-plugin.h" ++PluginVersion cheader_filename="meta/meta-plugin.h" ++Preference cheader_filename="meta/prefs.h" ++PrefsChangedFunc cheader_filename="meta/prefs.h" ++Rectangle cheader_filename="meta/boxes.h" struct ++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h" ++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h" ++Selection cheader_filename="meta/meta-selection.h" ++SelectionSource cheader_filename="meta/meta-selection-source.h" ++SelectionSourceMemory cheader_filename="meta/meta-selection-source-memory.h" ++SelectionType cheader_filename="meta/meta-selection-source.h" ++Settings cheader_filename="meta/meta-settings.h" ++Shadow cheader_filename="meta/meta-shadow-factory.h" ++ShadowFactory cheader_filename="meta/meta-shadow-factory.h" ++ShadowMode cheader_filename="meta/meta-window-actor.h" ++ShadowParams cheader_filename="meta/meta-shadow-factory.h" ++ShapedTexture cheader_filename="meta/meta-shaped-texture.h" ++Side cheader_filename="meta/common.h" ++SizeChange cheader_filename="meta/compositor.h" ++SoundPlayer cheader_filename="meta/meta-sound-player.h" ++StartupNotification cheader_filename="meta/meta-startup-notification.h" ++StartupNotification.changed.object type="Meta.StartupSequence" ++StartupNotification.get_sequences type_arguments="Meta.StartupSequence" ++StartupSequence cheader_filename="meta/meta-startup-notification.h" ++StackLayer cheader_filename="meta/common.h" ++Stage cheader_filename="meta/meta-stage.h" ++Stage.is_focused parent="Meta.Display" symbol_type="method" name="stage_is_focused" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++Strut cheader_filename="meta/boxes.h" ++TabList cheader_filename="meta/display.h" ++TabShowType cheader_filename="meta/display.h" ++Theme cheader_filename="meta/theme.h" ++theme_get_default cheader_filename="meta/theme.h" ++theme_new cheader_filename="meta/theme.h" ++VirtualModifier cheader_filename="meta/common.h" ++Workspace cheader_filename="meta/workspace.h" ++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h" ++Window cheader_filename="meta/window.h" ++Window.focus#signal name="focused" ++Window.icon type="Cairo.Surface" ++Window.mini_icon type="Cairo.Surface" ++WindowActor cheader_filename="meta/meta-window-actor.h" ++WindowClientType cheader_filename="meta/window.h" ++WindowForeachFunc cheader_filename="meta/window.h" ++WindowGroup cheader_filename="meta/meta-window-group.h" ++WindowMenuType cheader_filename="meta/compositor.h" ++WindowShape cheader_filename="meta/meta-window-shape.h" ++WindowType cheader_filename="meta/window.h" ++X11Display cheader_filename="meta/meta-x11-display.h" ++ ++rect skip ++prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h" ++ ++g_utf8_strndup skip ++ ++preference_to_string cheader_filename="meta/prefs.h" ++frame_type_to_string cheader_filename="meta/util.h" ++ ++CURRENT_TIME cheader_filename="meta/common.h" ++ICON_WIDTH cheader_filename="meta/common.h" ++ICON_HEIGHT cheader_filename="meta/common.h" ++MINI_ICON_WIDTH cheader_filename="meta/common.h" ++MINI_ICON_HEIGHT cheader_filename="meta/common.h" ++DEFAULT_ICON_NAME cheader_filename="meta/common.h" ++PRIORITY_RESIZE cheader_filename="meta/common.h" ++PRIORITY_BEFORE_REDRAW cheader_filename="meta/common.h" ++PRIORITY_REDRAW cheader_filename="meta/common.h" ++PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h" ++VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h" ++VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h" ++ ++MAJOR_VERSION cheader_filename="meta/meta-version.h" ++MINOR_VERSION cheader_filename="meta/meta-version.h" ++MICRO_VERSION cheader_filename="meta/meta-version.h" ++PLUGIN_API_VERSION cheader_filename="meta/meta-version.h" ++ ++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" ++bug parent="Meta.Util" cheader_filename="meta/util.h" ++debug_spew_real parent="Meta.Util" cheader_filename="meta/util.h" ++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h" ++fatal parent="Meta.Util" cheader_filename="meta/util.h" ++get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h" ++gravity_to_string parent="Meta.Gravity" name="to_string" cheader_filename="meta/util.h" symbol_type="method" instance_idx=0 ++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" ++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" ++show_dialog parent="Meta.Util" cheader_filename="meta/util.h" ++show_dialog.columns type_arguments="string" nullable default=null ++show_dialog.entries type_arguments="string" nullable default=null ++show_dialog.transient_for default=0 ++show_dialog.icon_name nullable default=null ++show_dialog.cancel_text nullable default=null ++show_dialog.ok_text nullable default=null ++show_dialog.display nullable default=null ++show_dialog.timeout nullable default=null ++topic_real parent="Meta.Util" cheader_filename="meta/util.h" ++unsigned_long_equal parent="Meta.Util" name="ulong_equal" cheader_filename="meta/util.h" ++unsigned_long_equal.v1 type="ulong?" ++unsigned_long_equal.v2 type="ulong?" ++unsigned_long_hash parent="Meta.Util" name="ulong_hash" cheader_filename="meta/util.h" ++unsigned_long_hash.v type="ulong?" ++verbose_real parent="Meta.Util" cheader_filename="meta/util.h" ++warning parent="Meta.Util" cheader_filename="meta/util.h" ++set_gnome_wm_keybindings parent="Meta.Util" ++set_wm_name parent="Meta.Util" ++ ++x11_error_trap_pop parent="Meta.X11Display" symbol_type="method" name="error_trap_pop" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" ++x11_error_trap_pop_with_return parent="Meta.X11Display" symbol_type="method" name="error_trap_pop_with_return" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" ++x11_error_trap_push parent="Meta.X11Display" symbol_type="method" name="error_trap_push" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" ++x11_init_gdk_display parent="Meta.X11Display" cheader_filename="meta/meta-x11-display.h" +diff --git a/vapi/libmutter-7.deps b/vapi/libmutter-7.deps +new file mode 120000 +index 0000000..3654978 +--- /dev/null ++++ b/vapi/libmutter-7.deps +@@ -0,0 +1 @@ ++libmutter-6.deps +\ No newline at end of file +diff --git a/vapi/libmutter-7.vapi b/vapi/libmutter-7.vapi +new file mode 120000 +index 0000000..7e33cf8 +--- /dev/null ++++ b/vapi/libmutter-7.vapi +@@ -0,0 +1 @@ ++libmutter-6.vapi +\ No newline at end of file +diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi +index d50ac79..b2521a1 100644 +--- a/vapi/libmutter.vapi ++++ b/vapi/libmutter.vapi +@@ -27,6 +27,10 @@ namespace Meta { + public static Meta.ButtonLayout get_button_layout (); + [CCode (cheader_filename = "meta/prefs.h")] + public static bool get_center_new_windows (); ++#if HAS_MUTTER336 ++ [CCode (cheader_filename = "meta/prefs.h")] ++ public static uint get_check_alive_timeout (); ++#endif + [CCode (cheader_filename = "meta/prefs.h")] + public static bool get_compositing_manager (); + [CCode (cheader_filename = "meta/prefs.h")] +@@ -117,8 +121,10 @@ namespace Meta { + public static void fatal (string format, ...); + [CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")] + public static Meta.LocaleDirection get_locale_direction (); ++#if !HAS_MUTTER336 + [CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")] + public static unowned string gravity_to_string (int gravity); ++#endif + [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")] +@@ -166,12 +172,19 @@ namespace Meta { + #endif + public unowned Meta.Settings get_settings (); + public unowned Clutter.Actor get_stage (); ++#if HAS_MUTTER336 ++ public bool is_rendering_hardware_accelerated (); ++#endif + 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); ++#if HAS_MUTTER336 ++ public signal void last_device_changed (Clutter.InputDevice object); ++#else + public signal void last_device_changed (int object); ++#endif + #if HAS_MUTTER330 + public signal void lid_is_closed_changed (bool object); + #endif +@@ -335,6 +348,9 @@ namespace Meta { + public Meta.Display display { owned get; construct; } + #else + public void window_surface_changed (Meta.Window window); ++#endif ++#if HAS_MUTTER338 ++ public signal void pre_paint (); + #endif + } + [CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")] +@@ -505,6 +521,9 @@ namespace Meta { + public void ungrab_keyboard (uint32 timestamp); + #if !HAS_MUTTER330 + public void unmanage_screen (Meta.Screen screen, uint32 timestamp); ++#endif ++#if HAS_MUTTER336 ++ public void unset_input_focus (uint32 timestamp); + #endif + public bool xserver_time_is_before (uint32 time1, uint32 time2); + #if !HAS_MUTTER330 +@@ -528,6 +547,9 @@ namespace Meta { + #else + public signal void grab_op_begin (Meta.Screen object, Meta.Window p0, Meta.GrabOp p1); + public signal void grab_op_end (Meta.Screen object, Meta.Window p0, Meta.GrabOp p1); ++#endif ++#if HAS_MUTTER334 ++ public signal bool init_xserver (GLib.Task object); + #endif + public signal bool modifiers_accelerator_activated (); + public signal void overlay_key (); +@@ -590,11 +612,17 @@ namespace Meta { + 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 (); ++#if !HAS_MUTTER336 + public static unowned Meta.IdleMonitor get_for_device (int device_id); ++#endif + public int64 get_idletime (); + public void remove_watch (uint id); + [NoAccessorMethod] ++#if HAS_MUTTER336 ++ public Clutter.InputDevice device { owned get; construct; } ++#else + public int device_id { get; construct; } ++#endif + } + [CCode (cheader_filename = "meta/keybindings.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")] + [Compact] +@@ -718,12 +746,19 @@ namespace Meta { + public class RemoteAccessController : GLib.Object { + [CCode (has_construct_function = false)] + protected RemoteAccessController (); ++#if HAS_MUTTER338 ++ public void inhibit_remote_access (); ++ public void uninhibit_remote_access (); ++#endif + 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 (); ++#if HAS_MUTTER336 ++ public bool get_disable_animations (); ++#endif + public virtual void stop (); + public signal void stopped (); + } +@@ -1029,8 +1064,10 @@ namespace Meta { + 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 (); ++#if !HAS_MUTTER338 + public bool requested_bypass_compositor (); + public bool requested_dont_bypass_compositor (); ++#endif + public void set_compositor_private (GLib.Object priv); + public void set_demands_attention (); + public void set_icon_geometry (Meta.Rectangle? rect); +@@ -1098,6 +1135,9 @@ namespace Meta { + #endif + public signal void size_changed (); + public signal void unmanaged (); ++#if HAS_MUTTER336 ++ public signal void unmanaging (); ++#endif + public signal void workspace_changed (); + } + [CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")] +@@ -1124,10 +1164,12 @@ namespace Meta { + public bool is_destroyed (); + public void sync_visibility (); + public Meta.Window meta_window { get; construct; } ++#if !HAS_MUTTER338 + [NoAccessorMethod] + public string shadow_class { owned get; set; } + [NoAccessorMethod] + public Meta.ShadowMode shadow_mode { get; set; } ++#endif + #if HAS_MUTTER334 + public signal void damaged (); + #endif +@@ -1135,6 +1177,9 @@ namespace Meta { + public signal void effects_completed (); + #endif + public signal void first_frame (); ++#if HAS_MUTTER336 ++ public signal void thawed (); ++#endif + } + [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 { +@@ -1186,7 +1231,7 @@ namespace Meta { + 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 unowned Meta.Workspace? get_workspace_by_index (int index); + public unowned GLib.List get_workspaces (); + 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); +@@ -1396,6 +1441,9 @@ namespace Meta { + POINTING_HAND, + CROSSHAIR, + IBEAM, ++#if HAS_MUTTER338 ++ BLANK, ++#endif + LAST + } + [CCode (cheader_filename = "meta/util.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")] +@@ -1424,6 +1472,7 @@ namespace Meta { + SHAPES, + COMPOSITOR, + EDGE_RESISTANCE, ++ INPUT, + DBUS + } + [CCode (cheader_filename = "meta/common.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")] +@@ -1531,6 +1580,24 @@ namespace Meta { + KEYBOARD_RESIZING_SE, + KEYBOARD_RESIZING_W + } ++#if HAS_MUTTER336 ++ [CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAVITY_", type_id = "meta_gravity_get_type ()")] ++ public enum Gravity { ++ NONE, ++ NORTH_WEST, ++ NORTH, ++ NORTH_EAST, ++ WEST, ++ CENTER, ++ EAST, ++ SOUTH_WEST, ++ SOUTH, ++ SOUTH_EAST, ++ STATIC; ++ [CCode (cheader_filename = "meta/util.h")] ++ public unowned string to_string (); ++ } ++#endif + [CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")] + public enum InhibitShortcutsDialogResponse { + ALLOW, +@@ -1737,6 +1804,9 @@ namespace Meta { + CENTER_NEW_WINDOWS, + #if HAS_MUTTER334 + LOCATE_POINTER, ++#endif ++#if HAS_MUTTER336 ++ CHECK_ALIVE_TIMEOUT, + #endif + DRAG_THRESHOLD; + [CCode (cheader_filename = "meta/prefs.h")] +diff --git a/vapi/meson.build b/vapi/meson.build +index 1b57bfc..e30fb75 100644 +--- a/vapi/meson.build ++++ b/vapi/meson.build +@@ -335,3 +335,72 @@ if mutter336_dep.found() + output: 'libmutter-6.vapi' + ) + endif ++if mutter338_dep.found() ++ cogl_target = custom_target('mutter-cogl-7', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'Cogl-7.gir', ++ '--library=mutter-cogl-7', ++ '--pkg=gobject-2.0', ++ '--pkg=cairo', ++ '--pkg=graphene-gobject-1.0', ++ vapigen_args, ++ files('Cogl-7-custom.vala') ++ ], ++ output: 'mutter-cogl-7.vapi' ++ ) ++ ++ cogl_pango_target = custom_target('mutter-cogl-pango-7', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'CoglPango-7.gir', ++ '--library=mutter-cogl-pango-7', ++ '--pkg=mutter-cogl-7', ++ '--pkg=pangocairo', ++ vapigen_args ++ ], ++ depends: cogl_target, ++ output: 'mutter-cogl-pango-7.vapi' ++ ) ++ ++ clutter_target = custom_target('mutter-clutter-7', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'Clutter-7.gir', ++ '--library=mutter-clutter-7', ++ '--pkg=graphene-gobject-1.0', ++ '--pkg=mutter-cogl-7', ++ '--pkg=mutter-cogl-pango-7', ++ '--pkg=atk', ++ '--pkg=gio-2.0', ++ '--pkg=json-glib-1.0', ++ '--pkg=pangocairo', ++ vapigen_args, ++ files('Clutter-7-custom.vala') ++ ], ++ depends: [ cogl_target, cogl_pango_target ], ++ output: 'mutter-clutter-7.vapi' ++ ) ++ ++ libmutter_target = custom_target('libmutter-7', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'Meta-7.gir', ++ '--library=libmutter-7', ++ '--pkg=graphene-gobject-1.0', ++ '--pkg=mutter-cogl-7', ++ '--pkg=mutter-cogl-pango-7', ++ '--pkg=mutter-clutter-7', ++ '--pkg=atk', ++ '--pkg=gio-2.0', ++ '--pkg=json-glib-1.0', ++ '--pkg=pangocairo', ++ '--pkg=gtk+-3.0', ++ '--pkg=x11', ++ '--pkg=xfixes-4.0', ++ vapigen_args ++ ], ++ depends: [ cogl_target, cogl_pango_target, clutter_target ], ++ output: 'libmutter-7.vapi' ++ ) ++endif +diff --git a/vapi/mutter-clutter-7.deps b/vapi/mutter-clutter-7.deps +new file mode 100644 +index 0000000..be79555 +--- /dev/null ++++ b/vapi/mutter-clutter-7.deps +@@ -0,0 +1,6 @@ ++atk ++cairo ++pango ++json-glib-1.0 ++mutter-cogl-7 ++graphene-gobject-1.0 +diff --git a/vapi/mutter-clutter-7.vapi b/vapi/mutter-clutter-7.vapi +new file mode 120000 +index 0000000..8e28a58 +--- /dev/null ++++ b/vapi/mutter-clutter-7.vapi +@@ -0,0 +1 @@ ++mutter-clutter-6.vapi +\ No newline at end of file +diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi +index d353c91..4d3fc52 100644 +--- a/vapi/mutter-clutter.vapi ++++ b/vapi/mutter-clutter.vapi +@@ -4696,23 +4696,43 @@ namespace Clutter { + [Version (since = "1.10")] + public void add_transition (string name, Clutter.Transition transition); + [Version (since = "0.8")] ++#if HAS_MUTTER338 ++ public virtual void allocate (Clutter.ActorBox box); ++#else + public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags); ++#endif + [Version (since = "1.4")] ++#if HAS_MUTTER338 ++ public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill); ++#else + public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags); ++#endif + [Version (since = "1.0")] ++#if HAS_MUTTER338 ++ public void allocate_available_size (float x, float y, float available_width, float available_height); ++#else + public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags); ++#endif + [Version (since = "0.8")] ++#if HAS_MUTTER338 ++ public void allocate_preferred_size (float x, float y); ++#else + public void allocate_preferred_size (Clutter.AllocationFlags flags); ++#endif ++#if !HAS_MUTTER338 + [Version (deprecated = true, deprecated_since = "1.12", since = "1.0")] + public unowned Clutter.Animation animate (ulong mode, uint duration, ...); ++#endif + #if !HAS_MUTTER336 + [Version (deprecated = true, deprecated_since = "1.10", since = "1.0")] + public unowned Clutter.Animation animate_with_alpha (Clutter.Alpha alpha, ...); + [Version (deprecated = true, deprecated_since = "1.10", since = "1.0")] + public unowned Clutter.Animation animate_with_alphav (Clutter.Alpha alpha, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5)] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5)] GLib.Value[] values); + #endif ++#if !HAS_MUTTER338 + [Version (deprecated = true, deprecated_since = "1.12", since = "1.0")] + public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...); ++#endif + #if !HAS_MUTTER336 + [Version (deprecated = true, deprecated_since = "1.12", since = "1.0")] + public unowned Clutter.Animation animate_with_timelinev (ulong mode, Clutter.Timeline timeline, [CCode (array_length_cname = "n_properties", array_length_pos = 2.5)] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 2.5)] GLib.Value[] values); +@@ -4781,18 +4801,22 @@ namespace Clutter { + [Version (deprecated = true, deprecated_since = "1.12", since = "0.8")] + public Clutter.Geometry get_allocation_geometry (); + #endif ++#if !HAS_MUTTER338 + [Version (since = "0.6")] + #if HAS_MUTTER336 + public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]); + #else + public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Clutter.Vertex verts[4]); ++#endif + #endif + [Version (deprecated = true, deprecated_since = "1.12", since = "0.6")] + public void get_anchor_point (out float anchor_x, out float anchor_y); + [Version (deprecated = true, deprecated_since = "1.12", since = "1.0")] + public Clutter.Gravity get_anchor_point_gravity (); ++#if !HAS_MUTTER336 + [Version (deprecated = true, deprecated_since = "1.12", since = "1.0")] + public unowned Clutter.Animation get_animation (); ++#endif + [Version (since = "1.10")] + public Clutter.Color get_background_color (); + [CCode (cname = "clutter_get_actor_by_gid")] +@@ -4966,6 +4990,9 @@ namespace Clutter { + public Clutter.Gravity get_z_rotation_gravity (); + [Version (since = "1.0")] + public void grab_key_focus (); ++#if HAS_MUTTER336 ++ public virtual bool has_accessible (); ++#endif + [Version (since = "1.10")] + public bool has_actions (); + [Version (since = "1.4")] +@@ -4989,6 +5016,9 @@ namespace Clutter { + [Version (deprecated = true, deprecated_since = "1.10", since = "0.2")] + #endif + public virtual void hide_all (); ++#if HAS_MUTTER336 ++ public void inhibit_culling (); ++#endif + [Version (since = "1.10")] + public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling); + [Version (since = "1.10")] +@@ -5076,7 +5106,11 @@ namespace Clutter { + [Version (since = "1.10")] + public void save_easing_state (); + [Version (since = "1.10")] ++#if HAS_MUTTER338 ++ public void set_allocation (Clutter.ActorBox box); ++#else + public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags); ++#endif + [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")] +@@ -5203,6 +5237,9 @@ namespace Clutter { + 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); ++#if HAS_MUTTER336 ++ public void uninhibit_culling (); ++#endif + [Version (since = "1.0")] + public virtual void unmap (); + [Version (deprecated = true, deprecated_since = "1.10", since = "0.2")] +@@ -5442,8 +5479,10 @@ namespace Clutter { + public bool y_expand { get; set; } + [Version (since = "1.12")] + public float z_position { get; set; } ++#if !HAS_MUTTER338 + [Version (since = "1.0")] + public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags); ++#endif + [Version (since = "0.6")] + public virtual signal bool button_press_event (Clutter.ButtonEvent event); + [Version (since = "0.6")] +@@ -5519,7 +5558,11 @@ namespace Clutter { + public unowned string get_name (); + [NoWrapper] + public virtual void set_actor (Clutter.Actor? actor); ++#if HAS_MUTTER338 ++ public virtual void set_enabled (bool is_enabled); ++#else + public void set_enabled (bool is_enabled); ++#endif + public void set_name (string name); + public Clutter.Actor actor { get; } + public bool enabled { get; set; } +@@ -5547,6 +5590,7 @@ namespace Clutter { + public float factor { get; set construct; } + public Clutter.Actor source { get; set construct; } + } ++#if !HAS_MUTTER338 + [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 { +@@ -5639,6 +5683,7 @@ namespace Clutter { + public virtual signal void completed (); + public virtual signal void started (); + } ++#endif + #if !HAS_MUTTER336 + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animator_get_type ()")] + [Version (deprecated = true, deprecated_since = "1.12", since = "1.2")] +@@ -5990,6 +6035,7 @@ namespace Clutter { + public class BoxLayout : Clutter.LayoutManager { + [CCode (has_construct_function = false, type = "ClutterLayoutManager*")] + public BoxLayout (); ++#if !HAS_MUTTER338 + [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")] +@@ -6000,12 +6046,14 @@ namespace Clutter { + 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); ++#endif + [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 (); ++#if !HAS_MUTTER338 + [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")] +@@ -6022,12 +6070,14 @@ namespace Clutter { + 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); ++#endif + [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); ++#if !HAS_MUTTER338 + [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")] +@@ -6036,16 +6086,19 @@ namespace Clutter { + public uint easing_duration { get; set; } + [Version (deprecated = true, deprecated_since = "1.12", since = "1.2")] + public ulong easing_mode { get; set; } ++#endif + [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; } ++#if !HAS_MUTTER338 + [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; } ++#endif + } + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")] + [Version (since = "1.10")] +@@ -6208,7 +6261,7 @@ namespace Clutter { + [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); ++ public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, ref float minimum_size, ref float natural_size); + } + [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] + [Compact] +@@ -6287,6 +6340,7 @@ namespace Clutter { + public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0); + } + #endif ++#if !HAS_MUTTER338 + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")] + [Version (since = "1.4")] + public class DragAction : Clutter.Action { +@@ -6344,6 +6398,7 @@ namespace Clutter { + public virtual signal void over_in (Clutter.Actor actor); + public virtual signal void over_out (Clutter.Actor actor); + } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")] + [Version (since = "1.4")] + public abstract class Effect : Clutter.ActorMeta { +@@ -6814,7 +6869,7 @@ namespace Clutter { + [NoWrapper] + public virtual void commit_text (string text); + [NoWrapper] +- public virtual void delete_surrounding (uint offset, uint len); ++ public virtual void delete_surrounding (int offset, uint len); + public bool filter_key_event (Clutter.KeyEvent key); + [NoWrapper] + public virtual void focus_in (Clutter.InputMethod input_method); +@@ -6886,7 +6941,7 @@ namespace Clutter { + public signal void cursor_location_changed (Clutter.Rect object); + #endif + [HasEmitter] +- public signal void delete_surrounding (uint offset, uint len); ++ public signal void delete_surrounding (int offset, uint len); + public signal void input_panel_state (Clutter.InputPanelState object); + [HasEmitter] + public signal void request_surrounding (); +@@ -6976,7 +7031,11 @@ namespace Clutter { + public abstract class LayoutManager : GLib.InitiallyUnowned { + [CCode (has_construct_function = false)] + protected LayoutManager (); ++#if HAS_MUTTER338 ++ public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation); ++#else + public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags); ++#endif + #if !HAS_MUTTER336 + [Version (deprecated = true, deprecated_since = "1.12", since = "1.2")] + public virtual unowned Clutter.Alpha begin_animation (uint duration, ulong mode); +@@ -6987,19 +7046,23 @@ namespace Clutter { + 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); ++#if !HAS_MUTTER338 + #if HAS_MUTTER336 + [NoWrapper] + #else + [Version (deprecated = true, deprecated_since = "1.12", since = "1.2")] + #endif + public virtual void end_animation (); ++#endif + public unowned GLib.ParamSpec find_child_property (string name); ++#if !HAS_MUTTER338 + #if HAS_MUTTER336 + [NoWrapper] + #else + [Version (deprecated = true, deprecated_since = "1.12", since = "1.2")] + #endif + public virtual double get_animation_progress (); ++#endif + [Version (since = "1.0")] + public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor); + [NoWrapper] +@@ -7197,6 +7260,7 @@ namespace Clutter { + public class PaintContext { + public void destroy (); + public unowned Cogl.Framebuffer get_framebuffer (); ++ public unowned Cairo.Region get_redraw_clip (); + public void pop_framebuffer (); + public void push_framebuffer (Cogl.Framebuffer framebuffer); + public unowned Clutter.PaintContext @ref (); +@@ -7431,15 +7495,19 @@ namespace Clutter { + 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); ++#if !HAS_MUTTER338 + [Version (deprecated = true, deprecated_since = "1.12", since = "1.8")] + public void add_states (string? name, Clutter.State state); ++#endif + 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 (...); ++#if !HAS_MUTTER338 + [Version (deprecated = true, deprecated_since = "1.12", since = "1.8")] + public unowned Clutter.State get_states (string? name); ++#endif + [Version (since = "1.10")] + public unowned string get_translation_domain (); + public virtual GLib.Type get_type_from_name (string type_name); +@@ -7517,16 +7585,20 @@ namespace Clutter { + public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings); + public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types (); + public bool get_touch_mode (); ++ public void inhibit_unfocus (); ++ public bool is_unfocus_inhibited (); + public virtual GLib.List 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 void uninhibit_unfocus (); + public virtual void warp_pointer (int x, int y); + [NoAccessorMethod] + public Clutter.Backend backend { owned get; construct; } + public bool touch_mode { get; } + public signal void device_added (Clutter.InputDevice object); + public signal void device_removed (Clutter.InputDevice object); ++ public signal void is_unfocus_inhibited_changed (); + 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); +@@ -7668,7 +7740,9 @@ namespace Clutter { + [CCode (has_construct_function = false, type = "ClutterActor*")] + [Version (since = "0.8")] + public Stage (); +- public bool capture (bool paint, Cairo.RectangleInt rect, [CCode (array_length_cname = "n_captures", array_length_pos = 3.1, type = "ClutterCapture**")] out Clutter.Capture[] captures); ++#if !HAS_MUTTER338 ++ public bool capture (bool paint, Cairo.RectangleInt rect, [CCode (array_length_cname = "out_n_captures", array_length_pos = 3.1)] out Clutter.Capture[] out_captures); ++#endif + public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data); + [CCode (cname = "clutter_stage_event")] + [Version (since = "0.4")] +@@ -7714,11 +7788,13 @@ namespace Clutter { + public bool get_no_clear_hint (); + #endif + public Clutter.Perspective get_perspective (); ++#if !HAS_MUTTER338 + [Version (since = "1.8")] + #if HAS_MUTTER336 + public Cairo.Region get_redraw_clip (); + #else + public Cairo.RectangleInt get_redraw_clip_bounds (); ++#endif + #endif + [Version (since = "1.0")] + public bool get_throttle_motion_events (); +@@ -7732,16 +7808,29 @@ namespace Clutter { + [Version (since = "0.4")] + public bool get_user_resizable (); + #endif ++#if !HAS_MUTTER338 + [Version (since = "0.4")] + public void hide_cursor (); ++#endif + [Version (deprecated = true, deprecated_since = "1.10", since = "0.8")] + public bool is_default (); ++#if HAS_MUTTER338 ++ public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, uint8 data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; ++ public void paint_to_framebuffer (Cogl.Framebuffer framebuffer, Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags); ++#endif ++#if !HAS_MUTTER338 + [Version (deprecated = true, deprecated_since = "1.10", since = "0.8")] + public void queue_redraw (); ++#endif + [CCode (array_length = false)] + public uint8[] read_pixels (int x, int y, int width = -1, int height = -1); ++#if HAS_MUTTER338 ++ public void schedule_update (); ++#endif ++#if !HAS_MUTTER338 + [Version (since = "1.6")] + public void set_accept_focus (bool accept_focus); ++#endif + [Version (deprecated = true, deprecated_since = "1.10")] + public void set_color (Clutter.Color color); + #if !HAS_MUTTER336 +@@ -7760,7 +7849,9 @@ namespace Clutter { + [Version (since = "1.4")] + public void set_no_clear_hint (bool no_clear); + #endif ++#if !HAS_MUTTER338 + public void set_perspective (Clutter.Perspective perspective); ++#endif + [Version (since = "1.0")] + public void set_throttle_motion_events (bool throttle); + [Version (since = "0.4")] +@@ -7773,17 +7864,23 @@ namespace Clutter { + [Version (since = "0.4")] + public void set_user_resizable (bool resizable); + #endif ++#if !HAS_MUTTER338 + public void show_cursor (); ++#endif + #if HAS_MUTTER336 + public void thaw_updates (); + public void update_resource_scales (); + #endif ++#if !HAS_MUTTER338 + [Version (since = "1.6")] + public bool accept_focus { get; set; } ++#endif + [Version (deprecated = true, deprecated_since = "1.10")] + public Clutter.Color color { get; set; } ++#if !HAS_MUTTER338 + [NoAccessorMethod] + public bool cursor_visible { get; set; } ++#endif + #if !HAS_MUTTER336 + [Version (deprecated = true, deprecated_since = "1.10", since = "1.0")] + public Clutter.Fog fog { get; set; } +@@ -7800,15 +7897,21 @@ namespace Clutter { + public bool offscreen { get; set; } + #endif + [Version (since = "0.8")] ++#if HAS_MUTTER338 ++ public Clutter.Perspective perspective { get; } ++#else + public Clutter.Perspective perspective { get; set; } ++#endif + [Version (since = "0.4")] + public string title { get; set; } ++#if !HAS_MUTTER338 + [Version (since = "1.2")] + public bool use_alpha { get; set; } + [Version (deprecated = true, deprecated_since = "1.10", since = "0.6")] + public bool use_fog { get; set; } + [Version (since = "0.4")] + public bool user_resizable { get; set; } ++#endif + [Version (since = "0.6")] + public virtual signal void activate (); + [Version (since = "1.20")] +@@ -7818,7 +7921,7 @@ namespace Clutter { + [Version (since = "1.2")] + public virtual signal bool delete_event (Clutter.Event event); + #if HAS_MUTTER336 +- public virtual signal void paint_view (Clutter.StageView view); ++ public virtual signal void paint_view (Clutter.StageView view, Cairo.Region redraw_clip); + #endif + #if !HAS_MUTTER336 + [Version (since = "0.6")] +@@ -7867,6 +7970,9 @@ namespace Clutter { + public class StageView : GLib.Object { + [CCode (has_construct_function = false)] + protected StageView (); ++#if HAS_MUTTER338 ++ public void assign_next_scanout (Cogl.Scanout scanout); ++#endif + public unowned Cogl.Framebuffer get_framebuffer (); + public void get_layout (Cairo.RectangleInt rect); + public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix); +@@ -7875,13 +7981,25 @@ namespace Clutter { + public void invalidate_offscreen_blit_pipeline (); + [NoWrapper] + public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline); ++#if HAS_MUTTER338 ++ [NoWrapper] ++ public virtual void transform_rect_to_onscreen (Cairo.RectangleInt src_rect, int dst_width, int dst_height, Cairo.RectangleInt dst_rect); ++#else + public void transform_to_onscreen (float x, float y); ++#endif ++#if HAS_MUTTER338 + [NoAccessorMethod] +- public Cairo.RectangleInt layout { owned get; set construct; } ++ public string name { owned get; construct; } ++#endif + [NoAccessorMethod] + public float scale { get; set construct; } ++#if HAS_MUTTER338 ++ [NoAccessorMethod] ++ public bool use_shadowfb { get; construct; } ++#endif + } + #endif ++#if !HAS_MUTTER338 + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")] + [Version (since = "1.4")] + public class State : GLib.Object, Clutter.Scriptable { +@@ -7954,6 +8072,7 @@ namespace Clutter { + public bool get_value (GLib.Value value); + #endif + } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")] + [Version (since = "1.8")] + public class SwipeAction : Clutter.GestureAction { +@@ -8563,12 +8682,14 @@ namespace Clutter { + [Version (since = "1.0")] + #endif + public interface Animatable : GLib.Object { ++#if !HAS_MUTTER338 + #if HAS_MUTTER336 + [NoWrapper] + #else + [Version (deprecated = true, deprecated_since = "1.8", since = "1.0")] + #endif + public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value); ++#endif + [Version (since = "1.4")] + public abstract unowned GLib.ParamSpec find_property (string property_name); + [Version (since = "1.4")] +@@ -9093,6 +9214,7 @@ namespace Clutter { + Y_AXIS, + BOTH + } ++#if !HAS_MUTTER338 + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")] + [Flags] + [Version (since = "1.0")] +@@ -9101,6 +9223,7 @@ namespace Clutter { + ABSOLUTE_ORIGIN_CHANGED, + DELEGATE_LAYOUT + } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")] + [Version (since = "1.0")] + public enum AnimationMode { +@@ -9249,11 +9372,11 @@ namespace Clutter { + 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 ()")] ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_", type_id = "clutter_effect_paint_flags_get_type ()")] + [Flags] + public enum EffectPaintFlags { +- [CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")] +- ACTOR_DIRTY ++ ACTOR_DIRTY, ++ BYPASS_EFFECT + } + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")] + [Flags] +@@ -9303,9 +9426,11 @@ namespace Clutter { + #if HAS_MUTTER336 + SWAP_THROTTLE, + #else ++#if !HAS_MUTTER338 + SYNC_TO_VBLANK, + TEXTURE_YUV, + TEXTURE_READ_PIXELS, ++#endif + #endif + STAGE_STATIC, + #if !HAS_MUTTER336 +@@ -9545,6 +9670,9 @@ namespace Clutter { + [Version (since = "1.8")] + public enum OffscreenRedirect { + AUTOMATIC_FOR_OPACITY, ++#if HAS_MUTTER336 ++ ON_IDLE, ++#endif + ALWAYS + } + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")] +@@ -9553,6 +9681,14 @@ namespace Clutter { + HORIZONTAL, + VERTICAL + } ++#if HAS_MUTTER338 ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAINT_FLAG_", type_id = "clutter_paint_flag_get_type ()")] ++ [Flags] ++ public enum PaintFlag { ++ NONE, ++ NO_CURSORS ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")] + [Version (since = "1.12")] + public enum PanAxis { +@@ -9884,9 +10020,11 @@ namespace Clutter { + [CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)] + [Version (since = "1.24")] + public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item); ++#if !HAS_MUTTER338 + [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); ++#endif + #if !HAS_MUTTER336 + [CCode (cheader_filename = "clutter/clutter.h", instance_pos = 2.9)] + [Version (deprecated = true, deprecated_since = "1.6", since = "0.2")] +diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi +index 4118874..8f77d34 100644 +--- a/vapi/mutter-cogl-6.vapi ++++ b/vapi/mutter-cogl-6.vapi +@@ -82,6 +82,9 @@ namespace Cogl { + 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); ++#if HAS_MUTTER338 ++ public void set_layer_max_mipmap_level (int layer, int max_level); ++#endif + [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")] +@@ -311,7 +314,7 @@ namespace Cogl { + [Version (since = "1.8")] + public void set_n_vertices (int n_vertices); + } +- [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", type_id = "cogl_handle_get_gtype ()", unref_function = "cogl_program_unref")] ++ [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_object_ref", type_id = "cogl_handle_get_gtype ()", unref_function = "cogl_object_unref")] + [Compact] + public class Program : Cogl.Handle { + [CCode (cheader_filename = "cogl/cogl.h")] +@@ -342,7 +345,13 @@ namespace Cogl { + [Version (deprecated = true, deprecated_since = "1.16", since = "1.4")] + public void set_uniform_matrix (int uniform_location, int dimensions, bool transpose, [CCode (array_length_cname = "count", array_length_pos = 2.5)] float[] value); + } +- [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", type_id = "cogl_handle_get_gtype ()", unref_function = "cogl_shader_unref")] ++#if HAS_MUTTER338 ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Compact] ++ public class Scanout { ++ } ++#endif ++ [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_object_ref", type_id = "cogl_handle_get_gtype ()", unref_function = "cogl_object_unref")] + [Compact] + public class Shader : Cogl.Handle { + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_create_shader")] +@@ -376,6 +385,12 @@ namespace Cogl { + [Version (since = "1.16")] + public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste); + } ++#if HAS_MUTTER338 ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Compact] ++ public class TraceContext { ++ } ++#endif + [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")] + public interface Framebuffer : Cogl.Object { + [Version (since = "1.8")] +@@ -399,6 +414,7 @@ namespace Cogl { + public static uint32 error_quark (); + [Version (since = "1.10")] + public void finish (); ++ public void flush (); + [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")] +@@ -485,8 +501,10 @@ namespace Cogl { + 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); ++#if !HAS_MUTTER338 + [CCode (cheader_filename = "cogl-path/cogl-path.h")] + public void stroke_path (Cogl.Pipeline pipeline, Cogl.Path path); ++#endif + [Version (since = "1.10")] + public void transform (Cogl.Matrix matrix); + [Version (since = "1.10")] +@@ -500,13 +518,13 @@ namespace Cogl { + public static Cogl.Texture from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format); + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_data")] + [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] +- public static Cogl.Texture from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data); ++ public static Cogl.Texture from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] uint8[] data); + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_file")] + [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] + public static Cogl.Texture from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error; + [Version (since = "1.18")] + public Cogl.TextureComponents get_components (); +- public int get_data (Cogl.PixelFormat format, uint rowstride, [CCode (array_length = false, type = "uint8_t*")] uint8[] data); ++ public int get_data (Cogl.PixelFormat format, uint rowstride, [CCode (array_length = false)] 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 (); +@@ -517,7 +535,7 @@ namespace Cogl { + [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, [CCode (array_length = false, type = "const uint8_t*")] uint8[] data); ++ public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] 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")] +@@ -526,10 +544,10 @@ namespace Cogl { + 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, [CCode (array_length = false, type = "const uint8_t*")] uint8[] data, int level) throws GLib.Error; ++ public bool set_data (Cogl.PixelFormat format, int rowstride, [CCode (array_length = false)] 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, [CCode (array_length = false, type = "const uint8_t*")] uint8[] data); ++ 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, [CCode (array_length = false)] 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", cname = "cogl_texture_new_with_size")] +@@ -683,6 +701,13 @@ namespace Cogl { + public float ty; + public Cogl.Color color; + } ++#if HAS_MUTTER338 ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ public struct TraceHead { ++ public uint64 begin_time; ++ public weak string name; ++ } ++#endif + [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] + [Version (since = "1.4")] + public struct UserDataKey { +@@ -824,6 +849,10 @@ namespace Cogl { + OGL_FEATURE_ID_TEXTURE_RG, + [CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")] + OGL_FEATURE_ID_BUFFER_AGE, ++#if HAS_MUTTER338 ++ [CCode (cname = "COGL_FEATURE_ID_BLIT_FRAMEBUFFER")] ++ OGL_FEATURE_ID_BLIT_FRAMEBUFFER, ++#endif + [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] + OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL + } +@@ -1138,6 +1167,16 @@ namespace Cogl { + [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")] ++ public static void set_tracing_disabled_on_thread (GLib.MainContext main_context); ++ [CCode (cheader_filename = "cogl/cogl.h")] ++ public static void set_tracing_enabled_on_thread (GLib.MainContext main_context, string group, string filename); ++ [CCode (cheader_filename = "cogl/cogl.h")] ++ public static void set_tracing_enabled_on_thread_with_fd (GLib.MainContext main_context, string group, int fd); ++#if HAS_MUTTER338 ++ [CCode (cheader_filename = "cogl/cogl.h")] ++ public static void trace_end (Cogl.TraceHead head); ++#endif + [CCode (cheader_filename = "cogl/cogl.h")] + [Version (since = "1.10")] + public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen); +diff --git a/vapi/mutter-cogl-7.deps b/vapi/mutter-cogl-7.deps +new file mode 120000 +index 0000000..4fe696b +--- /dev/null ++++ b/vapi/mutter-cogl-7.deps +@@ -0,0 +1 @@ ++mutter-cogl-6.deps +\ No newline at end of file +diff --git a/vapi/mutter-cogl-7.vapi b/vapi/mutter-cogl-7.vapi +new file mode 120000 +index 0000000..8c664da +--- /dev/null ++++ b/vapi/mutter-cogl-7.vapi +@@ -0,0 +1 @@ ++mutter-cogl-6.vapi +\ No newline at end of file +diff --git a/vapi/mutter-cogl-pango-6.vapi b/vapi/mutter-cogl-pango-6.vapi +index 957a8b2..fcdf829 100644 +--- a/vapi/mutter-cogl-pango-6.vapi ++++ b/vapi/mutter-cogl-pango-6.vapi +@@ -2,15 +2,15 @@ + + [CCode (cprefix = "CoglPango", gir_namespace = "CoglPango", gir_version = "6", lower_case_cprefix = "cogl_pango_")] + namespace CoglPango { +- [CCode (cheader_filename = "cogl-pango.h", type_id = "cogl_pango_renderer_get_type ()")] +- public class Renderer : Pango.Renderer { +- [CCode (has_construct_function = false)] +- protected Renderer (); +- [NoAccessorMethod] +- public void* context { construct; } +- } ++#if HAS_MUTTER338 + [CCode (cheader_filename = "cogl-pango.h")] + public interface FontMap : Pango.CairoFontMap, GLib.Object { ++#else ++ [CCode (cheader_filename = "cogl-pango.h", type_id = "pango_font_map_get_type ()")] ++ public class FontMap : Pango.FontMap { ++ [CCode (has_construct_function = false)] ++ protected FontMap (); ++#endif + [Version (since = "1.0")] + public void clear_glyph_cache (); + public Pango.Context create_context (); +@@ -25,6 +25,13 @@ namespace CoglPango { + [Version (since = "1.0")] + public void set_use_mipmapping (bool value); + } ++ [CCode (cheader_filename = "cogl-pango.h", type_id = "cogl_pango_renderer_get_type ()")] ++ public class Renderer : Pango.Renderer { ++ [CCode (has_construct_function = false)] ++ protected Renderer (); ++ [NoAccessorMethod] ++ public void* context { construct; } ++ } + [CCode (cheader_filename = "cogl-pango.h")] + [Version (since = "1.0")] + public static void ensure_glyph_cache_for_layout (Pango.Layout layout); +diff --git a/vapi/mutter-cogl-pango-7.vapi b/vapi/mutter-cogl-pango-7.vapi +new file mode 120000 +index 0000000..2ab701a +--- /dev/null ++++ b/vapi/mutter-cogl-pango-7.vapi +@@ -0,0 +1 @@ ++mutter-cogl-pango-6.vapi +\ No newline at end of file +diff --git a/vapi/mutter-cogl-path-7.vapi b/vapi/mutter-cogl-path-7.vapi +new file mode 120000 +index 0000000..47842e7 +--- /dev/null ++++ b/vapi/mutter-cogl-path-7.vapi +@@ -0,0 +1 @@ ++mutter-cogl-path-6.vapi +\ No newline at end of file +diff --git a/wingpanel-interface/meson.build b/wingpanel-interface/meson.build +index d27f746..5d26000 100644 +--- a/wingpanel-interface/meson.build ++++ b/wingpanel-interface/meson.build +@@ -44,7 +44,7 @@ if mutter334_dep.found() + vala_flags = ['--define', 'HAS_MUTTER330', '--define', 'HAS_MUTTER332', '--define', 'HAS_MUTTER334'] + endif + +-mutter336_dep = dependency('libmutter-6', version: ['>= 3.35.1', '< 3.38'], required: false) ++mutter336_dep = dependency('libmutter-6', version: ['>= 3.35.1', '< 3.37'], required: false) + if mutter336_dep.found() + libmutter_dep = dependency('libmutter-6', version: '>= 3.35.1') + mutter_dep = [ +@@ -54,6 +54,16 @@ if mutter336_dep.found() + vala_flags = ['--define', 'HAS_MUTTER330', '--define', 'HAS_MUTTER332', '--define', 'HAS_MUTTER334', '--define', 'HAS_MUTTER336'] + endif + ++mutter338_dep = dependency('libmutter-7', version: ['>= 3.37', '< 3.39'], required: false) ++if mutter338_dep.found() ++ libmutter_dep = dependency('libmutter-7', version: '>= 3.37') ++ mutter_dep = [ ++ dependency('mutter-cogl-7'), dependency('mutter-cogl-pango-7'), ++ dependency('mutter-clutter-7') ++ ] ++ vala_flags = ['--define', 'HAS_MUTTER330', '--define', 'HAS_MUTTER332', '--define', 'HAS_MUTTER334', '--define', 'HAS_MUTTER336', '--define', 'HAS_MUTTER338'] ++endif ++ + if mutter_dep.length() == 0 + error ('No supported mutter library found!') + endif +-- +2.26.2 + diff --git a/wingpanel.spec b/wingpanel.spec index 0e61aa8..a8d8db8 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,12 +7,14 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.3.2 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz +Patch1: 0001-initial-support-for-libmutter-7-mutter-3.38.patch + BuildRequires: desktop-file-utils BuildRequires: gettext BuildRequires: libappstream-glib @@ -124,6 +126,9 @@ appstream-util validate-relax --nonet \ %changelog +* Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 +- Add patch for initial mutter 3.38 support. + * Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From f03e207ad2acec8037de30716274623ecbd55361 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 27 Jan 2021 23:31:26 +0000 Subject: [PATCH 18/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- wingpanel.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index a8d8db8..6b3908b 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 2.3.2 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel @@ -126,6 +126,9 @@ appstream-util validate-relax --nonet \ %changelog +* Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 - Add patch for initial mutter 3.38 support. From 1eb9a088b9a26d59100e2f7bce07ec20cd00d265 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Thu, 18 Feb 2021 14:42:26 +0100 Subject: [PATCH 19/44] bump to 3.0.0 pre-release at commit db24c73; rebuilt for granite 6 soname bump --- .gitignore | 1 + ...-support-for-libmutter-7-mutter-3.38.patch | 1923 ----------------- sources | 2 +- wingpanel.spec | 46 +- 4 files changed, 24 insertions(+), 1948 deletions(-) delete mode 100644 0001-initial-support-for-libmutter-7-mutter-3.38.patch diff --git a/.gitignore b/.gitignore index 225e6ad..a512f08 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,4 @@ /wingpanel-88305e0.tar.gz /wingpanel-2.3.1.tar.gz /wingpanel-2.3.2.tar.gz +/wingpanel-db24c73.tar.gz diff --git a/0001-initial-support-for-libmutter-7-mutter-3.38.patch b/0001-initial-support-for-libmutter-7-mutter-3.38.patch deleted file mode 100644 index 6847bcf..0000000 --- a/0001-initial-support-for-libmutter-7-mutter-3.38.patch +++ /dev/null @@ -1,1923 +0,0 @@ -From ba7e1a71c73c3a50a9c00449425533d5a73d3efd Mon Sep 17 00:00:00 2001 -From: Fabio Valentini -Date: Mon, 24 Aug 2020 17:59:10 +0200 -Subject: [PATCH] initial support for libmutter-7 / mutter 3.38 - ---- - vapi/Clutter-7-custom.vala | 42 +++++++ - vapi/Clutter-7.metadata | 189 +++++++++++++++++++++++++++++++ - vapi/Cogl-7-custom.vala | 161 +++++++++++++++++++++++++++ - vapi/Cogl-7.metadata | 84 ++++++++++++++ - vapi/Meta-7.metadata | 190 ++++++++++++++++++++++++++++++++ - vapi/libmutter-7.deps | 1 + - vapi/libmutter-7.vapi | 1 + - vapi/libmutter.vapi | 72 +++++++++++- - vapi/meson.build | 69 ++++++++++++ - vapi/mutter-clutter-7.deps | 6 + - vapi/mutter-clutter-7.vapi | 1 + - vapi/mutter-clutter.vapi | 156 ++++++++++++++++++++++++-- - vapi/mutter-cogl-6.vapi | 53 +++++++-- - vapi/mutter-cogl-7.deps | 1 + - vapi/mutter-cogl-7.vapi | 1 + - vapi/mutter-cogl-pango-6.vapi | 21 ++-- - vapi/mutter-cogl-pango-7.vapi | 1 + - vapi/mutter-cogl-path-7.vapi | 1 + - wingpanel-interface/meson.build | 12 +- - 19 files changed, 1037 insertions(+), 25 deletions(-) - create mode 100644 vapi/Clutter-7-custom.vala - create mode 100644 vapi/Clutter-7.metadata - create mode 100644 vapi/Cogl-7-custom.vala - create mode 100644 vapi/Cogl-7.metadata - create mode 100644 vapi/Meta-7.metadata - create mode 120000 vapi/libmutter-7.deps - create mode 120000 vapi/libmutter-7.vapi - create mode 100644 vapi/mutter-clutter-7.deps - create mode 120000 vapi/mutter-clutter-7.vapi - create mode 120000 vapi/mutter-cogl-7.deps - create mode 120000 vapi/mutter-cogl-7.vapi - create mode 120000 vapi/mutter-cogl-pango-7.vapi - create mode 120000 vapi/mutter-cogl-path-7.vapi - -diff --git a/vapi/Clutter-7-custom.vala b/vapi/Clutter-7-custom.vala -new file mode 100644 -index 0000000..7350fd9 ---- /dev/null -+++ b/vapi/Clutter-7-custom.vala -@@ -0,0 +1,42 @@ -+namespace Clutter { -+ -+ 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 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 (); -+ } -+ -+ 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); -+ } -+ -+ [CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)] -+ public struct Capture { -+ } -+} -diff --git a/vapi/Clutter-7.metadata b/vapi/Clutter-7.metadata -new file mode 100644 -index 0000000..1d44d3f ---- /dev/null -+++ b/vapi/Clutter-7.metadata -@@ -0,0 +1,189 @@ -+// Non mini-object -+ActorBox struct -+Color struct -+Knot struct -+Margin struct -+PaintVolume struct -+PathNode struct -+Perspective struct -+Units struct -+ -+*.ref unowned -+ -+init.argv unowned -+init_with_args -+ .argv unowned -+Actor -+ .apply_transform.matrix ref -+ .get_abs_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#virtual_method name="get_paint_volume_vfunc" -+ .get_paint_volume#virtual_method.volume out -+ .queue_redraw#signal skip -+ .queue_redraw#virtual_method skip -+Container -+ .add_actor skip=false -+ .class_* skip -+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 -+ -+// 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 -+Backend -+ .get_cogl_context skip=false -+Box -+ .pack skip=false -+ .pack_after skip=false -+ .pack_at skip=false -+ .pack_before skip=false -+Container -+ .child_get skip=false -+ .child_set skip=false -+ .remove 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 -+ -+// Skipped upstream for unknown reasons -+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 -+Margin -+ .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" -+color_from_* skip -+units_from_* skip -+ -+// Struct return values -+color_get_static nullable -+ -+// Upstream -+Event -+ .get_position.position out -+ -+// Remove for clutter-2.0 -+///////////////////////// -+ -+StageView.layout skip -+ -+Stage -+ .event name="emit_event" -+ .paint_view.redraw_clip type="Cairo.Region" -+ -+Capture -+ .image type="Cairo.ImageSurface" -+ -+// *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" -+ProximityEvent struct=false base_type="Clutter.Event" -+PadButtonEvent struct=false base_type="Clutter.Event" -+PadRingEvent struct=false base_type="Clutter.Event" -+PadStripEvent 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" -+ -+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-7-custom.vala b/vapi/Cogl-7-custom.vala -new file mode 100644 -index 0000000..f603471 ---- /dev/null -+++ b/vapi/Cogl-7-custom.vala -@@ -0,0 +1,161 @@ -+namespace Cogl { -+ public struct Color { -+ [Version (since = "1.4")] -+ [CCode (cname="cogl_color_init_from_4f")] -+ public Color.from_4f (float red, float green, float blue, float alpha); -+ [Version (since = "1.4")] -+ [CCode (cname="cogl_color_init_from_4fv")] -+ public Color.from_4fv (float color_array); -+ [Version (since = "1.4")] -+ [CCode (cname="cogl_color_init_from_4ub")] -+ public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha); -+ [Version (since = "1.16")] -+ [CCode (cname="cogl_color_init_from_hsl")] -+ public Color.from_hsl (float hue, float saturation, float luminance); -+ } -+ -+ [Compact] -+ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] -+ public class Shader : Cogl.Handle { -+ } -+ -+ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")] -+ public class Primitive : Cogl.Object { -+ [CCode (has_construct_function = false)] -+ protected Primitive (); -+ [Version (since = "1.10")] -+ public Cogl.Primitive copy (); -+ [Version (since = "1.16")] -+ public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline); -+ public int get_first_vertex (); -+ public Cogl.VerticesMode get_mode (); -+ [Version (since = "1.8")] -+ public int get_n_vertices (); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data); -+ public void set_first_vertex (int first_vertex); -+ public void set_mode (Cogl.VerticesMode mode); -+ [Version (since = "1.8")] -+ public void set_n_vertices (int n_vertices); -+ } -+ -+ [Compact] -+ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] -+ public class Program : Cogl.Handle { -+ } -+ -+ [Compact] -+ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] -+ public class Handle { -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")] -+ [Version (deprecated = true, deprecated_since = "1.16")] -+ public bool is_material (); -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")] -+ [Version (deprecated = true, deprecated_since = "1.16")] -+ public bool is_program (Cogl.Handle handle); -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")] -+ [Version (deprecated = true, deprecated_since = "1.16")] -+ public bool is_shader (); -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")] -+ public bool is_texture (); -+ } -+ -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2 { -+ public float x; -+ public float y; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2C4 { -+ public float x; -+ public float y; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2T2 { -+ public float x; -+ public float y; -+ public float s; -+ public float t; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2T2C4 { -+ public float x; -+ public float y; -+ public float s; -+ public float t; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3 { -+ public float x; -+ public float y; -+ public float z; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3C4 { -+ public float x; -+ public float y; -+ public float z; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3T2 { -+ public float x; -+ public float y; -+ public float z; -+ public float s; -+ public float t; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3T2C4 { -+ public float x; -+ public float y; -+ public float z; -+ public float s; -+ public float t; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+} -diff --git a/vapi/Cogl-7.metadata b/vapi/Cogl-7.metadata -new file mode 100644 -index 0000000..cdf33de ---- /dev/null -+++ b/vapi/Cogl-7.metadata -@@ -0,0 +1,84 @@ -+* cheader_filename="cogl/cogl.h" -+ -+Color struct -+Matrix struct -+ -+Material base_type="Cogl.Handle" -+MaterialLayer base_type="Cogl.Handle" -+ -+_ColorSizeCheck skip -+_MatrixSizeCheck skip -+_TextureVertexSizeCheck skip -+ -+Color -+ .init_* skip -+color_init_from_hsl skip -+color_equal.v1 type="Cogl.Color" -+color_equal.v2 type="Cogl.Color" -+color_equal symbol_type=method -+ -+texture_new_* name="texture_new_(.+)" parent="Cogl.Texture" -+Texture -+ .get_data.data type="uint8[]" -+ .new_from_data.data type="uint8[]" -+ .set_data.data type="uint8[]" -+ .set_region.data type="uint8[]" -+ -+Texture2D -+ .new_from_data skip=false -+ .new_from_data.data array=true -+ -+Matrix -+ .transform_points.points_in type="uint8[]" -+ .transform_points.stride_out out -+ .transform_points.points_out out type="uint8[]" -+ .project_points.points_in type="uint8[]" -+ .project_points.stride_out out -+ .project_points.points_out out type="uint8[]" -+ -+matrix_equal.v1 type="Cogl.Matrix" -+matrix_equal.v2 type="Cogl.Matrix" -+matrix_equal symbol_type=method -+ -+shader_* name="shader_(.+)" parent="Cogl.Shader" -+shader_* symbol_type="method" instance_idx=0 -+ -+program_* name="program_(.+)" parent="Cogl.Program" -+program_attach_shader symbol_type="method" instance_idx=0 -+program_get_uniform_location symbol_type="method" instance_idx=0 -+program_link symbol_type="method" instance_idx=0 -+program_set_uniform_1f symbol_type="method" instance_idx=0 -+program_set_uniform_1i symbol_type="method" instance_idx=0 -+program_set_uniform_float symbol_type="method" instance_idx=0 -+program_set_uniform_int symbol_type="method" instance_idx=0 -+program_set_uniform_matrix symbol_type="method" instance_idx=0 -+ -+is_bitmap parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_offscreen parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_program parent="Cogl.Handle" -+is_shader parent="Cogl.Handle" -+is_texture parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_context parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_framebuffer parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_onscreen parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_pipeline parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_texture_2d parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_texture_2d_sliced parent="Cogl.Object" symbol_type="method" instance_idx=0 -+ -+create_program type="unowned Cogl.Program" name="create" parent="Cogl.Program" -+create_shader type="unowned Cogl.Shader" name="create" parent="Cogl.Shader" -+ -+foreach_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 -+get_clock_time parent="Cogl.Context" symbol_type="method" instance_idx=0 -+get_graphics_reset_status parent="Cogl.Context" symbol_type="method" instance_idx=0 -+has_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 -+ -+Bitmap.error_quark parent="Cogl.BitmapError" name="quark" -+Texture.error_quark parent="Cogl.TextureError" name="quark" -+texture_error_quark skip -+ -+BitmapError errordomain -+BlendStringError errordomain -+RendererError errordomain -+SystemError errordomain -+TextureError errordomain -diff --git a/vapi/Meta-7.metadata b/vapi/Meta-7.metadata -new file mode 100644 -index 0000000..f098bae ---- /dev/null -+++ b/vapi/Meta-7.metadata -@@ -0,0 +1,190 @@ -+* skip=false -+*.* skip=false -+* cheader_filename="meta/main.h" -+ -+Backend cheader_filename="meta/meta-backend.h" -+Backend.gpu_added skip -+get_backend parent="Meta.Backend" cheader_filename="meta/meta-backend.h" -+Background cheader_filename="meta/meta-background.h" -+Background.set_file.file nullable -+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" -+BarrierDirection cheader_filename="meta/barrier.h" -+BarrierEvent cheader_filename="meta/barrier.h" -+ButtonFunction cheader_filename="meta/common.h" -+ButtonLayout cheader_filename="meta/common.h" -+Compositor cheader_filename="meta/compositor.h" -+Compositor.sync_stack.stack type_arguments="Meta.Window" -+get_feedback_group_for_display parent="Meta.Display" symbol_type="method" name="get_feedback_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+get_stage_for_display parent="Meta.Display" symbol_type="method" name="get_stage" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+get_top_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_top_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+get_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+disable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="disable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+enable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="enable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+ -+get_window_actors parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" type_arguments="Meta.WindowActor" -+focus_stage_window parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+ -+CompEffect cheader_filename="meta/compositor.h" -+CloseDialog cheader_filename="meta/meta-close-dialog.h" -+CloseDialogResponse cheader_filename="meta/meta-close-dialog.h" -+Cursor cheader_filename="meta/common.h" -+CursorTracker cheader_filename="meta/meta-cursor-tracker.h" -+CursorTracker.get_for_display parent="Meta.Display" symbol_type="method" instance_idx=0 name="get_cursor_tracker" -+CursorTracker.get_pointer.x out -+CursorTracker.get_pointer.y out -+CursorTracker.get_pointer.mods out -+DebugTopic cheader_filename="meta/util.h" -+Direction cheader_filename="meta/common.h" -+Display cheader_filename="meta/display.h" -+DisplayCorner cheader_filename="meta/display.h" -+DisplayDirection cheader_filename="meta/display.h" -+Dnd cheader_filename="meta/meta-dnd.h" -+EdgeType cheader_filename="meta/boxes.h" -+Edge cheader_filename="meta/boxes.h" -+Frame cheader_filename="meta/types.h" -+FrameBorders cheader_filename="meta/common.h" -+FrameFlags cheader_filename="meta/common.h" -+FrameType cheader_filename="meta/common.h" -+GrabOp cheader_filename="meta/common.h" -+Group cheader_filename="meta/group.h" -+Group.property_notify.event type="X.Event" ref -+IdleMonitor cheader_filename="meta/meta-idle-monitor.h" -+IdleMonitorWatchFunc cheader_filename="meta/meta-idle-monitor.h" -+InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" -+InhibitShortcutsDialogResponse cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" -+KeyBinding cheader_filename="meta/keybindings.h" -+keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler" cheader_filename="meta/keybindings.h" -+KeyBindingAction cheader_filename="meta/prefs.h" -+KeyBindingFlags cheader_filename="meta/prefs.h" -+KeyHandlerFunc cheader_filename="meta/prefs.h" -+KeyHandlerFunc.event type="Clutter.KeyEvent" -+LaunchContext cheader_filename="meta/meta-launch-context.h" -+LaterType cheader_filename="meta/util.h" -+LocaleDirection cheader_filename="meta/util.h" -+MaximizeFlags cheader_filename="meta/window.h" -+ModalOptions cheader_filename="meta/meta-plugin.h" -+MonitorManager cheader_filename="meta/meta-monitor-manager.h" -+MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" -+MotionDirection cheader_filename="meta/common.h" -+PadActionType cheader_filename="meta/display.h" -+Plugin cheader_filename="meta/meta-plugin.h" -+Plugin.xevent_filter.event type="X.Event" ref -+PluginInfo cheader_filename="meta/meta-plugin.h" -+PluginVersion cheader_filename="meta/meta-plugin.h" -+Preference cheader_filename="meta/prefs.h" -+PrefsChangedFunc cheader_filename="meta/prefs.h" -+Rectangle cheader_filename="meta/boxes.h" struct -+RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h" -+RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h" -+Selection cheader_filename="meta/meta-selection.h" -+SelectionSource cheader_filename="meta/meta-selection-source.h" -+SelectionSourceMemory cheader_filename="meta/meta-selection-source-memory.h" -+SelectionType cheader_filename="meta/meta-selection-source.h" -+Settings cheader_filename="meta/meta-settings.h" -+Shadow cheader_filename="meta/meta-shadow-factory.h" -+ShadowFactory cheader_filename="meta/meta-shadow-factory.h" -+ShadowMode cheader_filename="meta/meta-window-actor.h" -+ShadowParams cheader_filename="meta/meta-shadow-factory.h" -+ShapedTexture cheader_filename="meta/meta-shaped-texture.h" -+Side cheader_filename="meta/common.h" -+SizeChange cheader_filename="meta/compositor.h" -+SoundPlayer cheader_filename="meta/meta-sound-player.h" -+StartupNotification cheader_filename="meta/meta-startup-notification.h" -+StartupNotification.changed.object type="Meta.StartupSequence" -+StartupNotification.get_sequences type_arguments="Meta.StartupSequence" -+StartupSequence cheader_filename="meta/meta-startup-notification.h" -+StackLayer cheader_filename="meta/common.h" -+Stage cheader_filename="meta/meta-stage.h" -+Stage.is_focused parent="Meta.Display" symbol_type="method" name="stage_is_focused" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+Strut cheader_filename="meta/boxes.h" -+TabList cheader_filename="meta/display.h" -+TabShowType cheader_filename="meta/display.h" -+Theme cheader_filename="meta/theme.h" -+theme_get_default cheader_filename="meta/theme.h" -+theme_new cheader_filename="meta/theme.h" -+VirtualModifier cheader_filename="meta/common.h" -+Workspace cheader_filename="meta/workspace.h" -+WorkspaceManager cheader_filename="meta/meta-workspace-manager.h" -+Window cheader_filename="meta/window.h" -+Window.focus#signal name="focused" -+Window.icon type="Cairo.Surface" -+Window.mini_icon type="Cairo.Surface" -+WindowActor cheader_filename="meta/meta-window-actor.h" -+WindowClientType cheader_filename="meta/window.h" -+WindowForeachFunc cheader_filename="meta/window.h" -+WindowGroup cheader_filename="meta/meta-window-group.h" -+WindowMenuType cheader_filename="meta/compositor.h" -+WindowShape cheader_filename="meta/meta-window-shape.h" -+WindowType cheader_filename="meta/window.h" -+X11Display cheader_filename="meta/meta-x11-display.h" -+ -+rect skip -+prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h" -+ -+g_utf8_strndup skip -+ -+preference_to_string cheader_filename="meta/prefs.h" -+frame_type_to_string cheader_filename="meta/util.h" -+ -+CURRENT_TIME cheader_filename="meta/common.h" -+ICON_WIDTH cheader_filename="meta/common.h" -+ICON_HEIGHT cheader_filename="meta/common.h" -+MINI_ICON_WIDTH cheader_filename="meta/common.h" -+MINI_ICON_HEIGHT cheader_filename="meta/common.h" -+DEFAULT_ICON_NAME cheader_filename="meta/common.h" -+PRIORITY_RESIZE cheader_filename="meta/common.h" -+PRIORITY_BEFORE_REDRAW cheader_filename="meta/common.h" -+PRIORITY_REDRAW cheader_filename="meta/common.h" -+PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h" -+VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h" -+VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h" -+ -+MAJOR_VERSION cheader_filename="meta/meta-version.h" -+MINOR_VERSION cheader_filename="meta/meta-version.h" -+MICRO_VERSION cheader_filename="meta/meta-version.h" -+PLUGIN_API_VERSION cheader_filename="meta/meta-version.h" -+ -+add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" -+bug parent="Meta.Util" cheader_filename="meta/util.h" -+debug_spew_real parent="Meta.Util" cheader_filename="meta/util.h" -+external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h" -+fatal parent="Meta.Util" cheader_filename="meta/util.h" -+get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h" -+gravity_to_string parent="Meta.Gravity" name="to_string" cheader_filename="meta/util.h" symbol_type="method" instance_idx=0 -+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" -+remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" -+show_dialog parent="Meta.Util" cheader_filename="meta/util.h" -+show_dialog.columns type_arguments="string" nullable default=null -+show_dialog.entries type_arguments="string" nullable default=null -+show_dialog.transient_for default=0 -+show_dialog.icon_name nullable default=null -+show_dialog.cancel_text nullable default=null -+show_dialog.ok_text nullable default=null -+show_dialog.display nullable default=null -+show_dialog.timeout nullable default=null -+topic_real parent="Meta.Util" cheader_filename="meta/util.h" -+unsigned_long_equal parent="Meta.Util" name="ulong_equal" cheader_filename="meta/util.h" -+unsigned_long_equal.v1 type="ulong?" -+unsigned_long_equal.v2 type="ulong?" -+unsigned_long_hash parent="Meta.Util" name="ulong_hash" cheader_filename="meta/util.h" -+unsigned_long_hash.v type="ulong?" -+verbose_real parent="Meta.Util" cheader_filename="meta/util.h" -+warning parent="Meta.Util" cheader_filename="meta/util.h" -+set_gnome_wm_keybindings parent="Meta.Util" -+set_wm_name parent="Meta.Util" -+ -+x11_error_trap_pop parent="Meta.X11Display" symbol_type="method" name="error_trap_pop" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" -+x11_error_trap_pop_with_return parent="Meta.X11Display" symbol_type="method" name="error_trap_pop_with_return" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" -+x11_error_trap_push parent="Meta.X11Display" symbol_type="method" name="error_trap_push" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" -+x11_init_gdk_display parent="Meta.X11Display" cheader_filename="meta/meta-x11-display.h" -diff --git a/vapi/libmutter-7.deps b/vapi/libmutter-7.deps -new file mode 120000 -index 0000000..3654978 ---- /dev/null -+++ b/vapi/libmutter-7.deps -@@ -0,0 +1 @@ -+libmutter-6.deps -\ No newline at end of file -diff --git a/vapi/libmutter-7.vapi b/vapi/libmutter-7.vapi -new file mode 120000 -index 0000000..7e33cf8 ---- /dev/null -+++ b/vapi/libmutter-7.vapi -@@ -0,0 +1 @@ -+libmutter-6.vapi -\ No newline at end of file -diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi -index d50ac79..b2521a1 100644 ---- a/vapi/libmutter.vapi -+++ b/vapi/libmutter.vapi -@@ -27,6 +27,10 @@ namespace Meta { - public static Meta.ButtonLayout get_button_layout (); - [CCode (cheader_filename = "meta/prefs.h")] - public static bool get_center_new_windows (); -+#if HAS_MUTTER336 -+ [CCode (cheader_filename = "meta/prefs.h")] -+ public static uint get_check_alive_timeout (); -+#endif - [CCode (cheader_filename = "meta/prefs.h")] - public static bool get_compositing_manager (); - [CCode (cheader_filename = "meta/prefs.h")] -@@ -117,8 +121,10 @@ namespace Meta { - public static void fatal (string format, ...); - [CCode (cheader_filename = "meta/util.h", cname = "meta_get_locale_direction")] - public static Meta.LocaleDirection get_locale_direction (); -+#if !HAS_MUTTER336 - [CCode (cheader_filename = "meta/util.h", cname = "meta_gravity_to_string")] - public static unowned string gravity_to_string (int gravity); -+#endif - [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")] -@@ -166,12 +172,19 @@ namespace Meta { - #endif - public unowned Meta.Settings get_settings (); - public unowned Clutter.Actor get_stage (); -+#if HAS_MUTTER336 -+ public bool is_rendering_hardware_accelerated (); -+#endif - 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); -+#if HAS_MUTTER336 -+ public signal void last_device_changed (Clutter.InputDevice object); -+#else - public signal void last_device_changed (int object); -+#endif - #if HAS_MUTTER330 - public signal void lid_is_closed_changed (bool object); - #endif -@@ -335,6 +348,9 @@ namespace Meta { - public Meta.Display display { owned get; construct; } - #else - public void window_surface_changed (Meta.Window window); -+#endif -+#if HAS_MUTTER338 -+ public signal void pre_paint (); - #endif - } - [CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")] -@@ -505,6 +521,9 @@ namespace Meta { - public void ungrab_keyboard (uint32 timestamp); - #if !HAS_MUTTER330 - public void unmanage_screen (Meta.Screen screen, uint32 timestamp); -+#endif -+#if HAS_MUTTER336 -+ public void unset_input_focus (uint32 timestamp); - #endif - public bool xserver_time_is_before (uint32 time1, uint32 time2); - #if !HAS_MUTTER330 -@@ -528,6 +547,9 @@ namespace Meta { - #else - public signal void grab_op_begin (Meta.Screen object, Meta.Window p0, Meta.GrabOp p1); - public signal void grab_op_end (Meta.Screen object, Meta.Window p0, Meta.GrabOp p1); -+#endif -+#if HAS_MUTTER334 -+ public signal bool init_xserver (GLib.Task object); - #endif - public signal bool modifiers_accelerator_activated (); - public signal void overlay_key (); -@@ -590,11 +612,17 @@ namespace Meta { - 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 (); -+#if !HAS_MUTTER336 - public static unowned Meta.IdleMonitor get_for_device (int device_id); -+#endif - public int64 get_idletime (); - public void remove_watch (uint id); - [NoAccessorMethod] -+#if HAS_MUTTER336 -+ public Clutter.InputDevice device { owned get; construct; } -+#else - public int device_id { get; construct; } -+#endif - } - [CCode (cheader_filename = "meta/keybindings.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_key_binding_get_type ()")] - [Compact] -@@ -718,12 +746,19 @@ namespace Meta { - public class RemoteAccessController : GLib.Object { - [CCode (has_construct_function = false)] - protected RemoteAccessController (); -+#if HAS_MUTTER338 -+ public void inhibit_remote_access (); -+ public void uninhibit_remote_access (); -+#endif - 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 (); -+#if HAS_MUTTER336 -+ public bool get_disable_animations (); -+#endif - public virtual void stop (); - public signal void stopped (); - } -@@ -1029,8 +1064,10 @@ namespace Meta { - 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 (); -+#if !HAS_MUTTER338 - public bool requested_bypass_compositor (); - public bool requested_dont_bypass_compositor (); -+#endif - public void set_compositor_private (GLib.Object priv); - public void set_demands_attention (); - public void set_icon_geometry (Meta.Rectangle? rect); -@@ -1098,6 +1135,9 @@ namespace Meta { - #endif - public signal void size_changed (); - public signal void unmanaged (); -+#if HAS_MUTTER336 -+ public signal void unmanaging (); -+#endif - public signal void workspace_changed (); - } - [CCode (cheader_filename = "meta/meta-window-actor.h", type_id = "meta_window_actor_get_type ()")] -@@ -1124,10 +1164,12 @@ namespace Meta { - public bool is_destroyed (); - public void sync_visibility (); - public Meta.Window meta_window { get; construct; } -+#if !HAS_MUTTER338 - [NoAccessorMethod] - public string shadow_class { owned get; set; } - [NoAccessorMethod] - public Meta.ShadowMode shadow_mode { get; set; } -+#endif - #if HAS_MUTTER334 - public signal void damaged (); - #endif -@@ -1135,6 +1177,9 @@ namespace Meta { - public signal void effects_completed (); - #endif - public signal void first_frame (); -+#if HAS_MUTTER336 -+ public signal void thawed (); -+#endif - } - [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 { -@@ -1186,7 +1231,7 @@ namespace Meta { - 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 unowned Meta.Workspace? get_workspace_by_index (int index); - public unowned GLib.List get_workspaces (); - 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); -@@ -1396,6 +1441,9 @@ namespace Meta { - POINTING_HAND, - CROSSHAIR, - IBEAM, -+#if HAS_MUTTER338 -+ BLANK, -+#endif - LAST - } - [CCode (cheader_filename = "meta/util.h", cprefix = "META_DEBUG_", type_id = "meta_debug_topic_get_type ()")] -@@ -1424,6 +1472,7 @@ namespace Meta { - SHAPES, - COMPOSITOR, - EDGE_RESISTANCE, -+ INPUT, - DBUS - } - [CCode (cheader_filename = "meta/common.h", cprefix = "META_DIRECTION_", type_id = "meta_direction_get_type ()")] -@@ -1531,6 +1580,24 @@ namespace Meta { - KEYBOARD_RESIZING_SE, - KEYBOARD_RESIZING_W - } -+#if HAS_MUTTER336 -+ [CCode (cheader_filename = "meta/main.h", cprefix = "META_GRAVITY_", type_id = "meta_gravity_get_type ()")] -+ public enum Gravity { -+ NONE, -+ NORTH_WEST, -+ NORTH, -+ NORTH_EAST, -+ WEST, -+ CENTER, -+ EAST, -+ SOUTH_WEST, -+ SOUTH, -+ SOUTH_EAST, -+ STATIC; -+ [CCode (cheader_filename = "meta/util.h")] -+ public unowned string to_string (); -+ } -+#endif - [CCode (cheader_filename = "meta/meta-inhibit-shortcuts-dialog.h", cprefix = "META_INHIBIT_SHORTCUTS_DIALOG_RESPONSE_", type_id = "meta_inhibit_shortcuts_dialog_response_get_type ()")] - public enum InhibitShortcutsDialogResponse { - ALLOW, -@@ -1737,6 +1804,9 @@ namespace Meta { - CENTER_NEW_WINDOWS, - #if HAS_MUTTER334 - LOCATE_POINTER, -+#endif -+#if HAS_MUTTER336 -+ CHECK_ALIVE_TIMEOUT, - #endif - DRAG_THRESHOLD; - [CCode (cheader_filename = "meta/prefs.h")] -diff --git a/vapi/meson.build b/vapi/meson.build -index 1b57bfc..e30fb75 100644 ---- a/vapi/meson.build -+++ b/vapi/meson.build -@@ -335,3 +335,72 @@ if mutter336_dep.found() - output: 'libmutter-6.vapi' - ) - endif -+if mutter338_dep.found() -+ cogl_target = custom_target('mutter-cogl-7', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'Cogl-7.gir', -+ '--library=mutter-cogl-7', -+ '--pkg=gobject-2.0', -+ '--pkg=cairo', -+ '--pkg=graphene-gobject-1.0', -+ vapigen_args, -+ files('Cogl-7-custom.vala') -+ ], -+ output: 'mutter-cogl-7.vapi' -+ ) -+ -+ cogl_pango_target = custom_target('mutter-cogl-pango-7', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'CoglPango-7.gir', -+ '--library=mutter-cogl-pango-7', -+ '--pkg=mutter-cogl-7', -+ '--pkg=pangocairo', -+ vapigen_args -+ ], -+ depends: cogl_target, -+ output: 'mutter-cogl-pango-7.vapi' -+ ) -+ -+ clutter_target = custom_target('mutter-clutter-7', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'Clutter-7.gir', -+ '--library=mutter-clutter-7', -+ '--pkg=graphene-gobject-1.0', -+ '--pkg=mutter-cogl-7', -+ '--pkg=mutter-cogl-pango-7', -+ '--pkg=atk', -+ '--pkg=gio-2.0', -+ '--pkg=json-glib-1.0', -+ '--pkg=pangocairo', -+ vapigen_args, -+ files('Clutter-7-custom.vala') -+ ], -+ depends: [ cogl_target, cogl_pango_target ], -+ output: 'mutter-clutter-7.vapi' -+ ) -+ -+ libmutter_target = custom_target('libmutter-7', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'Meta-7.gir', -+ '--library=libmutter-7', -+ '--pkg=graphene-gobject-1.0', -+ '--pkg=mutter-cogl-7', -+ '--pkg=mutter-cogl-pango-7', -+ '--pkg=mutter-clutter-7', -+ '--pkg=atk', -+ '--pkg=gio-2.0', -+ '--pkg=json-glib-1.0', -+ '--pkg=pangocairo', -+ '--pkg=gtk+-3.0', -+ '--pkg=x11', -+ '--pkg=xfixes-4.0', -+ vapigen_args -+ ], -+ depends: [ cogl_target, cogl_pango_target, clutter_target ], -+ output: 'libmutter-7.vapi' -+ ) -+endif -diff --git a/vapi/mutter-clutter-7.deps b/vapi/mutter-clutter-7.deps -new file mode 100644 -index 0000000..be79555 ---- /dev/null -+++ b/vapi/mutter-clutter-7.deps -@@ -0,0 +1,6 @@ -+atk -+cairo -+pango -+json-glib-1.0 -+mutter-cogl-7 -+graphene-gobject-1.0 -diff --git a/vapi/mutter-clutter-7.vapi b/vapi/mutter-clutter-7.vapi -new file mode 120000 -index 0000000..8e28a58 ---- /dev/null -+++ b/vapi/mutter-clutter-7.vapi -@@ -0,0 +1 @@ -+mutter-clutter-6.vapi -\ No newline at end of file -diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi -index d353c91..4d3fc52 100644 ---- a/vapi/mutter-clutter.vapi -+++ b/vapi/mutter-clutter.vapi -@@ -4696,23 +4696,43 @@ namespace Clutter { - [Version (since = "1.10")] - public void add_transition (string name, Clutter.Transition transition); - [Version (since = "0.8")] -+#if HAS_MUTTER338 -+ public virtual void allocate (Clutter.ActorBox box); -+#else - public virtual void allocate (Clutter.ActorBox box, Clutter.AllocationFlags flags); -+#endif - [Version (since = "1.4")] -+#if HAS_MUTTER338 -+ public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill); -+#else - public void allocate_align_fill (Clutter.ActorBox box, double x_align, double y_align, bool x_fill, bool y_fill, Clutter.AllocationFlags flags); -+#endif - [Version (since = "1.0")] -+#if HAS_MUTTER338 -+ public void allocate_available_size (float x, float y, float available_width, float available_height); -+#else - public void allocate_available_size (float x, float y, float available_width, float available_height, Clutter.AllocationFlags flags); -+#endif - [Version (since = "0.8")] -+#if HAS_MUTTER338 -+ public void allocate_preferred_size (float x, float y); -+#else - public void allocate_preferred_size (Clutter.AllocationFlags flags); -+#endif -+#if !HAS_MUTTER338 - [Version (deprecated = true, deprecated_since = "1.12", since = "1.0")] - public unowned Clutter.Animation animate (ulong mode, uint duration, ...); -+#endif - #if !HAS_MUTTER336 - [Version (deprecated = true, deprecated_since = "1.10", since = "1.0")] - public unowned Clutter.Animation animate_with_alpha (Clutter.Alpha alpha, ...); - [Version (deprecated = true, deprecated_since = "1.10", since = "1.0")] - public unowned Clutter.Animation animate_with_alphav (Clutter.Alpha alpha, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5)] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 1.5)] GLib.Value[] values); - #endif -+#if !HAS_MUTTER338 - [Version (deprecated = true, deprecated_since = "1.12", since = "1.0")] - public unowned Clutter.Animation animate_with_timeline (ulong mode, Clutter.Timeline timeline, ...); -+#endif - #if !HAS_MUTTER336 - [Version (deprecated = true, deprecated_since = "1.12", since = "1.0")] - public unowned Clutter.Animation animate_with_timelinev (ulong mode, Clutter.Timeline timeline, [CCode (array_length_cname = "n_properties", array_length_pos = 2.5)] string[] properties, [CCode (array_length_cname = "n_properties", array_length_pos = 2.5)] GLib.Value[] values); -@@ -4781,18 +4801,22 @@ namespace Clutter { - [Version (deprecated = true, deprecated_since = "1.12", since = "0.8")] - public Clutter.Geometry get_allocation_geometry (); - #endif -+#if !HAS_MUTTER338 - [Version (since = "0.6")] - #if HAS_MUTTER336 - public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Graphene.Point3D verts[4]); - #else - public void get_allocation_vertices (Clutter.Actor? ancestor, [CCode (array_length = false)] Clutter.Vertex verts[4]); -+#endif - #endif - [Version (deprecated = true, deprecated_since = "1.12", since = "0.6")] - public void get_anchor_point (out float anchor_x, out float anchor_y); - [Version (deprecated = true, deprecated_since = "1.12", since = "1.0")] - public Clutter.Gravity get_anchor_point_gravity (); -+#if !HAS_MUTTER336 - [Version (deprecated = true, deprecated_since = "1.12", since = "1.0")] - public unowned Clutter.Animation get_animation (); -+#endif - [Version (since = "1.10")] - public Clutter.Color get_background_color (); - [CCode (cname = "clutter_get_actor_by_gid")] -@@ -4966,6 +4990,9 @@ namespace Clutter { - public Clutter.Gravity get_z_rotation_gravity (); - [Version (since = "1.0")] - public void grab_key_focus (); -+#if HAS_MUTTER336 -+ public virtual bool has_accessible (); -+#endif - [Version (since = "1.10")] - public bool has_actions (); - [Version (since = "1.4")] -@@ -4989,6 +5016,9 @@ namespace Clutter { - [Version (deprecated = true, deprecated_since = "1.10", since = "0.2")] - #endif - public virtual void hide_all (); -+#if HAS_MUTTER336 -+ public void inhibit_culling (); -+#endif - [Version (since = "1.10")] - public void insert_child_above (Clutter.Actor child, Clutter.Actor? sibling); - [Version (since = "1.10")] -@@ -5076,7 +5106,11 @@ namespace Clutter { - [Version (since = "1.10")] - public void save_easing_state (); - [Version (since = "1.10")] -+#if HAS_MUTTER338 -+ public void set_allocation (Clutter.ActorBox box); -+#else - public void set_allocation (Clutter.ActorBox box, Clutter.AllocationFlags flags); -+#endif - [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")] -@@ -5203,6 +5237,9 @@ namespace Clutter { - 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); -+#if HAS_MUTTER336 -+ public void uninhibit_culling (); -+#endif - [Version (since = "1.0")] - public virtual void unmap (); - [Version (deprecated = true, deprecated_since = "1.10", since = "0.2")] -@@ -5442,8 +5479,10 @@ namespace Clutter { - public bool y_expand { get; set; } - [Version (since = "1.12")] - public float z_position { get; set; } -+#if !HAS_MUTTER338 - [Version (since = "1.0")] - public signal void allocation_changed (Clutter.ActorBox box, Clutter.AllocationFlags flags); -+#endif - [Version (since = "0.6")] - public virtual signal bool button_press_event (Clutter.ButtonEvent event); - [Version (since = "0.6")] -@@ -5519,7 +5558,11 @@ namespace Clutter { - public unowned string get_name (); - [NoWrapper] - public virtual void set_actor (Clutter.Actor? actor); -+#if HAS_MUTTER338 -+ public virtual void set_enabled (bool is_enabled); -+#else - public void set_enabled (bool is_enabled); -+#endif - public void set_name (string name); - public Clutter.Actor actor { get; } - public bool enabled { get; set; } -@@ -5547,6 +5590,7 @@ namespace Clutter { - public float factor { get; set construct; } - public Clutter.Actor source { get; set construct; } - } -+#if !HAS_MUTTER338 - [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 { -@@ -5639,6 +5683,7 @@ namespace Clutter { - public virtual signal void completed (); - public virtual signal void started (); - } -+#endif - #if !HAS_MUTTER336 - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_animator_get_type ()")] - [Version (deprecated = true, deprecated_since = "1.12", since = "1.2")] -@@ -5990,6 +6035,7 @@ namespace Clutter { - public class BoxLayout : Clutter.LayoutManager { - [CCode (has_construct_function = false, type = "ClutterLayoutManager*")] - public BoxLayout (); -+#if !HAS_MUTTER338 - [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")] -@@ -6000,12 +6046,14 @@ namespace Clutter { - 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); -+#endif - [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 (); -+#if !HAS_MUTTER338 - [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")] -@@ -6022,12 +6070,14 @@ namespace Clutter { - 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); -+#endif - [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); -+#if !HAS_MUTTER338 - [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")] -@@ -6036,16 +6086,19 @@ namespace Clutter { - public uint easing_duration { get; set; } - [Version (deprecated = true, deprecated_since = "1.12", since = "1.2")] - public ulong easing_mode { get; set; } -+#endif - [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; } -+#if !HAS_MUTTER338 - [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; } -+#endif - } - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")] - [Version (since = "1.10")] -@@ -6208,7 +6261,7 @@ namespace Clutter { - [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); -+ public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, ref float minimum_size, ref float natural_size); - } - [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] - [Compact] -@@ -6287,6 +6340,7 @@ namespace Clutter { - public signal void tool_changed (Clutter.InputDevice object, Clutter.InputDeviceTool p0); - } - #endif -+#if !HAS_MUTTER338 - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_drag_action_get_type ()")] - [Version (since = "1.4")] - public class DragAction : Clutter.Action { -@@ -6344,6 +6398,7 @@ namespace Clutter { - public virtual signal void over_in (Clutter.Actor actor); - public virtual signal void over_out (Clutter.Actor actor); - } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")] - [Version (since = "1.4")] - public abstract class Effect : Clutter.ActorMeta { -@@ -6814,7 +6869,7 @@ namespace Clutter { - [NoWrapper] - public virtual void commit_text (string text); - [NoWrapper] -- public virtual void delete_surrounding (uint offset, uint len); -+ public virtual void delete_surrounding (int offset, uint len); - public bool filter_key_event (Clutter.KeyEvent key); - [NoWrapper] - public virtual void focus_in (Clutter.InputMethod input_method); -@@ -6886,7 +6941,7 @@ namespace Clutter { - public signal void cursor_location_changed (Clutter.Rect object); - #endif - [HasEmitter] -- public signal void delete_surrounding (uint offset, uint len); -+ public signal void delete_surrounding (int offset, uint len); - public signal void input_panel_state (Clutter.InputPanelState object); - [HasEmitter] - public signal void request_surrounding (); -@@ -6976,7 +7031,11 @@ namespace Clutter { - public abstract class LayoutManager : GLib.InitiallyUnowned { - [CCode (has_construct_function = false)] - protected LayoutManager (); -+#if HAS_MUTTER338 -+ public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation); -+#else - public virtual void allocate (Clutter.Container container, Clutter.ActorBox allocation, Clutter.AllocationFlags flags); -+#endif - #if !HAS_MUTTER336 - [Version (deprecated = true, deprecated_since = "1.12", since = "1.2")] - public virtual unowned Clutter.Alpha begin_animation (uint duration, ulong mode); -@@ -6987,19 +7046,23 @@ namespace Clutter { - 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); -+#if !HAS_MUTTER338 - #if HAS_MUTTER336 - [NoWrapper] - #else - [Version (deprecated = true, deprecated_since = "1.12", since = "1.2")] - #endif - public virtual void end_animation (); -+#endif - public unowned GLib.ParamSpec find_child_property (string name); -+#if !HAS_MUTTER338 - #if HAS_MUTTER336 - [NoWrapper] - #else - [Version (deprecated = true, deprecated_since = "1.12", since = "1.2")] - #endif - public virtual double get_animation_progress (); -+#endif - [Version (since = "1.0")] - public unowned Clutter.LayoutMeta get_child_meta (Clutter.Container container, Clutter.Actor actor); - [NoWrapper] -@@ -7197,6 +7260,7 @@ namespace Clutter { - public class PaintContext { - public void destroy (); - public unowned Cogl.Framebuffer get_framebuffer (); -+ public unowned Cairo.Region get_redraw_clip (); - public void pop_framebuffer (); - public void push_framebuffer (Cogl.Framebuffer framebuffer); - public unowned Clutter.PaintContext @ref (); -@@ -7431,15 +7495,19 @@ namespace Clutter { - 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); -+#if !HAS_MUTTER338 - [Version (deprecated = true, deprecated_since = "1.12", since = "1.8")] - public void add_states (string? name, Clutter.State state); -+#endif - 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 (...); -+#if !HAS_MUTTER338 - [Version (deprecated = true, deprecated_since = "1.12", since = "1.8")] - public unowned Clutter.State get_states (string? name); -+#endif - [Version (since = "1.10")] - public unowned string get_translation_domain (); - public virtual GLib.Type get_type_from_name (string type_name); -@@ -7517,16 +7585,20 @@ namespace Clutter { - public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings); - public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types (); - public bool get_touch_mode (); -+ public void inhibit_unfocus (); -+ public bool is_unfocus_inhibited (); - public virtual GLib.List 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 void uninhibit_unfocus (); - public virtual void warp_pointer (int x, int y); - [NoAccessorMethod] - public Clutter.Backend backend { owned get; construct; } - public bool touch_mode { get; } - public signal void device_added (Clutter.InputDevice object); - public signal void device_removed (Clutter.InputDevice object); -+ public signal void is_unfocus_inhibited_changed (); - 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); -@@ -7668,7 +7740,9 @@ namespace Clutter { - [CCode (has_construct_function = false, type = "ClutterActor*")] - [Version (since = "0.8")] - public Stage (); -- public bool capture (bool paint, Cairo.RectangleInt rect, [CCode (array_length_cname = "n_captures", array_length_pos = 3.1, type = "ClutterCapture**")] out Clutter.Capture[] captures); -+#if !HAS_MUTTER338 -+ public bool capture (bool paint, Cairo.RectangleInt rect, [CCode (array_length_cname = "out_n_captures", array_length_pos = 3.1)] out Clutter.Capture[] out_captures); -+#endif - public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data); - [CCode (cname = "clutter_stage_event")] - [Version (since = "0.4")] -@@ -7714,11 +7788,13 @@ namespace Clutter { - public bool get_no_clear_hint (); - #endif - public Clutter.Perspective get_perspective (); -+#if !HAS_MUTTER338 - [Version (since = "1.8")] - #if HAS_MUTTER336 - public Cairo.Region get_redraw_clip (); - #else - public Cairo.RectangleInt get_redraw_clip_bounds (); -+#endif - #endif - [Version (since = "1.0")] - public bool get_throttle_motion_events (); -@@ -7732,16 +7808,29 @@ namespace Clutter { - [Version (since = "0.4")] - public bool get_user_resizable (); - #endif -+#if !HAS_MUTTER338 - [Version (since = "0.4")] - public void hide_cursor (); -+#endif - [Version (deprecated = true, deprecated_since = "1.10", since = "0.8")] - public bool is_default (); -+#if HAS_MUTTER338 -+ public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, uint8 data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; -+ public void paint_to_framebuffer (Cogl.Framebuffer framebuffer, Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags); -+#endif -+#if !HAS_MUTTER338 - [Version (deprecated = true, deprecated_since = "1.10", since = "0.8")] - public void queue_redraw (); -+#endif - [CCode (array_length = false)] - public uint8[] read_pixels (int x, int y, int width = -1, int height = -1); -+#if HAS_MUTTER338 -+ public void schedule_update (); -+#endif -+#if !HAS_MUTTER338 - [Version (since = "1.6")] - public void set_accept_focus (bool accept_focus); -+#endif - [Version (deprecated = true, deprecated_since = "1.10")] - public void set_color (Clutter.Color color); - #if !HAS_MUTTER336 -@@ -7760,7 +7849,9 @@ namespace Clutter { - [Version (since = "1.4")] - public void set_no_clear_hint (bool no_clear); - #endif -+#if !HAS_MUTTER338 - public void set_perspective (Clutter.Perspective perspective); -+#endif - [Version (since = "1.0")] - public void set_throttle_motion_events (bool throttle); - [Version (since = "0.4")] -@@ -7773,17 +7864,23 @@ namespace Clutter { - [Version (since = "0.4")] - public void set_user_resizable (bool resizable); - #endif -+#if !HAS_MUTTER338 - public void show_cursor (); -+#endif - #if HAS_MUTTER336 - public void thaw_updates (); - public void update_resource_scales (); - #endif -+#if !HAS_MUTTER338 - [Version (since = "1.6")] - public bool accept_focus { get; set; } -+#endif - [Version (deprecated = true, deprecated_since = "1.10")] - public Clutter.Color color { get; set; } -+#if !HAS_MUTTER338 - [NoAccessorMethod] - public bool cursor_visible { get; set; } -+#endif - #if !HAS_MUTTER336 - [Version (deprecated = true, deprecated_since = "1.10", since = "1.0")] - public Clutter.Fog fog { get; set; } -@@ -7800,15 +7897,21 @@ namespace Clutter { - public bool offscreen { get; set; } - #endif - [Version (since = "0.8")] -+#if HAS_MUTTER338 -+ public Clutter.Perspective perspective { get; } -+#else - public Clutter.Perspective perspective { get; set; } -+#endif - [Version (since = "0.4")] - public string title { get; set; } -+#if !HAS_MUTTER338 - [Version (since = "1.2")] - public bool use_alpha { get; set; } - [Version (deprecated = true, deprecated_since = "1.10", since = "0.6")] - public bool use_fog { get; set; } - [Version (since = "0.4")] - public bool user_resizable { get; set; } -+#endif - [Version (since = "0.6")] - public virtual signal void activate (); - [Version (since = "1.20")] -@@ -7818,7 +7921,7 @@ namespace Clutter { - [Version (since = "1.2")] - public virtual signal bool delete_event (Clutter.Event event); - #if HAS_MUTTER336 -- public virtual signal void paint_view (Clutter.StageView view); -+ public virtual signal void paint_view (Clutter.StageView view, Cairo.Region redraw_clip); - #endif - #if !HAS_MUTTER336 - [Version (since = "0.6")] -@@ -7867,6 +7970,9 @@ namespace Clutter { - public class StageView : GLib.Object { - [CCode (has_construct_function = false)] - protected StageView (); -+#if HAS_MUTTER338 -+ public void assign_next_scanout (Cogl.Scanout scanout); -+#endif - public unowned Cogl.Framebuffer get_framebuffer (); - public void get_layout (Cairo.RectangleInt rect); - public virtual void get_offscreen_transformation_matrix (Cogl.Matrix matrix); -@@ -7875,13 +7981,25 @@ namespace Clutter { - public void invalidate_offscreen_blit_pipeline (); - [NoWrapper] - public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline); -+#if HAS_MUTTER338 -+ [NoWrapper] -+ public virtual void transform_rect_to_onscreen (Cairo.RectangleInt src_rect, int dst_width, int dst_height, Cairo.RectangleInt dst_rect); -+#else - public void transform_to_onscreen (float x, float y); -+#endif -+#if HAS_MUTTER338 - [NoAccessorMethod] -- public Cairo.RectangleInt layout { owned get; set construct; } -+ public string name { owned get; construct; } -+#endif - [NoAccessorMethod] - public float scale { get; set construct; } -+#if HAS_MUTTER338 -+ [NoAccessorMethod] -+ public bool use_shadowfb { get; construct; } -+#endif - } - #endif -+#if !HAS_MUTTER338 - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")] - [Version (since = "1.4")] - public class State : GLib.Object, Clutter.Scriptable { -@@ -7954,6 +8072,7 @@ namespace Clutter { - public bool get_value (GLib.Value value); - #endif - } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")] - [Version (since = "1.8")] - public class SwipeAction : Clutter.GestureAction { -@@ -8563,12 +8682,14 @@ namespace Clutter { - [Version (since = "1.0")] - #endif - public interface Animatable : GLib.Object { -+#if !HAS_MUTTER338 - #if HAS_MUTTER336 - [NoWrapper] - #else - [Version (deprecated = true, deprecated_since = "1.8", since = "1.0")] - #endif - public abstract bool animate_property (Clutter.Animation animation, string property_name, GLib.Value initial_value, GLib.Value final_value, double progress, GLib.Value value); -+#endif - [Version (since = "1.4")] - public abstract unowned GLib.ParamSpec find_property (string property_name); - [Version (since = "1.4")] -@@ -9093,6 +9214,7 @@ namespace Clutter { - Y_AXIS, - BOTH - } -+#if !HAS_MUTTER338 - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_allocation_flags_get_type ()")] - [Flags] - [Version (since = "1.0")] -@@ -9101,6 +9223,7 @@ namespace Clutter { - ABSOLUTE_ORIGIN_CHANGED, - DELEGATE_LAYOUT - } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_animation_mode_get_type ()")] - [Version (since = "1.0")] - public enum AnimationMode { -@@ -9249,11 +9372,11 @@ namespace Clutter { - 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 ()")] -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_", type_id = "clutter_effect_paint_flags_get_type ()")] - [Flags] - public enum EffectPaintFlags { -- [CCode (cname = "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")] -- ACTOR_DIRTY -+ ACTOR_DIRTY, -+ BYPASS_EFFECT - } - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EVENT_", type_id = "clutter_event_flags_get_type ()")] - [Flags] -@@ -9303,9 +9426,11 @@ namespace Clutter { - #if HAS_MUTTER336 - SWAP_THROTTLE, - #else -+#if !HAS_MUTTER338 - SYNC_TO_VBLANK, - TEXTURE_YUV, - TEXTURE_READ_PIXELS, -+#endif - #endif - STAGE_STATIC, - #if !HAS_MUTTER336 -@@ -9545,6 +9670,9 @@ namespace Clutter { - [Version (since = "1.8")] - public enum OffscreenRedirect { - AUTOMATIC_FOR_OPACITY, -+#if HAS_MUTTER336 -+ ON_IDLE, -+#endif - ALWAYS - } - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")] -@@ -9553,6 +9681,14 @@ namespace Clutter { - HORIZONTAL, - VERTICAL - } -+#if HAS_MUTTER338 -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAINT_FLAG_", type_id = "clutter_paint_flag_get_type ()")] -+ [Flags] -+ public enum PaintFlag { -+ NONE, -+ NO_CURSORS -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PAN_", type_id = "clutter_pan_axis_get_type ()")] - [Version (since = "1.12")] - public enum PanAxis { -@@ -9884,9 +10020,11 @@ namespace Clutter { - [CCode (cheader_filename = "clutter/clutter.h", instance_pos = 1.9)] - [Version (since = "1.24")] - public delegate Clutter.Actor ActorCreateChildFunc (GLib.Object item); -+#if !HAS_MUTTER338 - [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); -+#endif - #if !HAS_MUTTER336 - [CCode (cheader_filename = "clutter/clutter.h", instance_pos = 2.9)] - [Version (deprecated = true, deprecated_since = "1.6", since = "0.2")] -diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi -index 4118874..8f77d34 100644 ---- a/vapi/mutter-cogl-6.vapi -+++ b/vapi/mutter-cogl-6.vapi -@@ -82,6 +82,9 @@ namespace Cogl { - 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); -+#if HAS_MUTTER338 -+ public void set_layer_max_mipmap_level (int layer, int max_level); -+#endif - [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")] -@@ -311,7 +314,7 @@ namespace Cogl { - [Version (since = "1.8")] - public void set_n_vertices (int n_vertices); - } -- [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_program_ref", type_id = "cogl_handle_get_gtype ()", unref_function = "cogl_program_unref")] -+ [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_object_ref", type_id = "cogl_handle_get_gtype ()", unref_function = "cogl_object_unref")] - [Compact] - public class Program : Cogl.Handle { - [CCode (cheader_filename = "cogl/cogl.h")] -@@ -342,7 +345,13 @@ namespace Cogl { - [Version (deprecated = true, deprecated_since = "1.16", since = "1.4")] - public void set_uniform_matrix (int uniform_location, int dimensions, bool transpose, [CCode (array_length_cname = "count", array_length_pos = 2.5)] float[] value); - } -- [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_shader_ref", type_id = "cogl_handle_get_gtype ()", unref_function = "cogl_shader_unref")] -+#if HAS_MUTTER338 -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Compact] -+ public class Scanout { -+ } -+#endif -+ [CCode (cheader_filename = "cogl/cogl.h", cname = "CoglHandle", ref_function = "cogl_object_ref", type_id = "cogl_handle_get_gtype ()", unref_function = "cogl_object_unref")] - [Compact] - public class Shader : Cogl.Handle { - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_create_shader")] -@@ -376,6 +385,12 @@ namespace Cogl { - [Version (since = "1.16")] - public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste); - } -+#if HAS_MUTTER338 -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Compact] -+ public class TraceContext { -+ } -+#endif - [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")] - public interface Framebuffer : Cogl.Object { - [Version (since = "1.8")] -@@ -399,6 +414,7 @@ namespace Cogl { - public static uint32 error_quark (); - [Version (since = "1.10")] - public void finish (); -+ public void flush (); - [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")] -@@ -485,8 +501,10 @@ namespace Cogl { - 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); -+#if !HAS_MUTTER338 - [CCode (cheader_filename = "cogl-path/cogl-path.h")] - public void stroke_path (Cogl.Pipeline pipeline, Cogl.Path path); -+#endif - [Version (since = "1.10")] - public void transform (Cogl.Matrix matrix); - [Version (since = "1.10")] -@@ -500,13 +518,13 @@ namespace Cogl { - public static Cogl.Texture from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format); - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_data")] - [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] -- public static Cogl.Texture from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, uint8 data); -+ public static Cogl.Texture from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] uint8[] data); - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_file")] - [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] - public static Cogl.Texture from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error; - [Version (since = "1.18")] - public Cogl.TextureComponents get_components (); -- public int get_data (Cogl.PixelFormat format, uint rowstride, [CCode (array_length = false, type = "uint8_t*")] uint8[] data); -+ public int get_data (Cogl.PixelFormat format, uint rowstride, [CCode (array_length = false)] 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 (); -@@ -517,7 +535,7 @@ namespace Cogl { - [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, [CCode (array_length = false, type = "const uint8_t*")] uint8[] data); -+ public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] 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")] -@@ -526,10 +544,10 @@ namespace Cogl { - 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, [CCode (array_length = false, type = "const uint8_t*")] uint8[] data, int level) throws GLib.Error; -+ public bool set_data (Cogl.PixelFormat format, int rowstride, [CCode (array_length = false)] 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, [CCode (array_length = false, type = "const uint8_t*")] uint8[] data); -+ 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, [CCode (array_length = false)] 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", cname = "cogl_texture_new_with_size")] -@@ -683,6 +701,13 @@ namespace Cogl { - public float ty; - public Cogl.Color color; - } -+#if HAS_MUTTER338 -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ public struct TraceHead { -+ public uint64 begin_time; -+ public weak string name; -+ } -+#endif - [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] - [Version (since = "1.4")] - public struct UserDataKey { -@@ -824,6 +849,10 @@ namespace Cogl { - OGL_FEATURE_ID_TEXTURE_RG, - [CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")] - OGL_FEATURE_ID_BUFFER_AGE, -+#if HAS_MUTTER338 -+ [CCode (cname = "COGL_FEATURE_ID_BLIT_FRAMEBUFFER")] -+ OGL_FEATURE_ID_BLIT_FRAMEBUFFER, -+#endif - [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] - OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL - } -@@ -1138,6 +1167,16 @@ namespace Cogl { - [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")] -+ public static void set_tracing_disabled_on_thread (GLib.MainContext main_context); -+ [CCode (cheader_filename = "cogl/cogl.h")] -+ public static void set_tracing_enabled_on_thread (GLib.MainContext main_context, string group, string filename); -+ [CCode (cheader_filename = "cogl/cogl.h")] -+ public static void set_tracing_enabled_on_thread_with_fd (GLib.MainContext main_context, string group, int fd); -+#if HAS_MUTTER338 -+ [CCode (cheader_filename = "cogl/cogl.h")] -+ public static void trace_end (Cogl.TraceHead head); -+#endif - [CCode (cheader_filename = "cogl/cogl.h")] - [Version (since = "1.10")] - public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen); -diff --git a/vapi/mutter-cogl-7.deps b/vapi/mutter-cogl-7.deps -new file mode 120000 -index 0000000..4fe696b ---- /dev/null -+++ b/vapi/mutter-cogl-7.deps -@@ -0,0 +1 @@ -+mutter-cogl-6.deps -\ No newline at end of file -diff --git a/vapi/mutter-cogl-7.vapi b/vapi/mutter-cogl-7.vapi -new file mode 120000 -index 0000000..8c664da ---- /dev/null -+++ b/vapi/mutter-cogl-7.vapi -@@ -0,0 +1 @@ -+mutter-cogl-6.vapi -\ No newline at end of file -diff --git a/vapi/mutter-cogl-pango-6.vapi b/vapi/mutter-cogl-pango-6.vapi -index 957a8b2..fcdf829 100644 ---- a/vapi/mutter-cogl-pango-6.vapi -+++ b/vapi/mutter-cogl-pango-6.vapi -@@ -2,15 +2,15 @@ - - [CCode (cprefix = "CoglPango", gir_namespace = "CoglPango", gir_version = "6", lower_case_cprefix = "cogl_pango_")] - namespace CoglPango { -- [CCode (cheader_filename = "cogl-pango.h", type_id = "cogl_pango_renderer_get_type ()")] -- public class Renderer : Pango.Renderer { -- [CCode (has_construct_function = false)] -- protected Renderer (); -- [NoAccessorMethod] -- public void* context { construct; } -- } -+#if HAS_MUTTER338 - [CCode (cheader_filename = "cogl-pango.h")] - public interface FontMap : Pango.CairoFontMap, GLib.Object { -+#else -+ [CCode (cheader_filename = "cogl-pango.h", type_id = "pango_font_map_get_type ()")] -+ public class FontMap : Pango.FontMap { -+ [CCode (has_construct_function = false)] -+ protected FontMap (); -+#endif - [Version (since = "1.0")] - public void clear_glyph_cache (); - public Pango.Context create_context (); -@@ -25,6 +25,13 @@ namespace CoglPango { - [Version (since = "1.0")] - public void set_use_mipmapping (bool value); - } -+ [CCode (cheader_filename = "cogl-pango.h", type_id = "cogl_pango_renderer_get_type ()")] -+ public class Renderer : Pango.Renderer { -+ [CCode (has_construct_function = false)] -+ protected Renderer (); -+ [NoAccessorMethod] -+ public void* context { construct; } -+ } - [CCode (cheader_filename = "cogl-pango.h")] - [Version (since = "1.0")] - public static void ensure_glyph_cache_for_layout (Pango.Layout layout); -diff --git a/vapi/mutter-cogl-pango-7.vapi b/vapi/mutter-cogl-pango-7.vapi -new file mode 120000 -index 0000000..2ab701a ---- /dev/null -+++ b/vapi/mutter-cogl-pango-7.vapi -@@ -0,0 +1 @@ -+mutter-cogl-pango-6.vapi -\ No newline at end of file -diff --git a/vapi/mutter-cogl-path-7.vapi b/vapi/mutter-cogl-path-7.vapi -new file mode 120000 -index 0000000..47842e7 ---- /dev/null -+++ b/vapi/mutter-cogl-path-7.vapi -@@ -0,0 +1 @@ -+mutter-cogl-path-6.vapi -\ No newline at end of file -diff --git a/wingpanel-interface/meson.build b/wingpanel-interface/meson.build -index d27f746..5d26000 100644 ---- a/wingpanel-interface/meson.build -+++ b/wingpanel-interface/meson.build -@@ -44,7 +44,7 @@ if mutter334_dep.found() - vala_flags = ['--define', 'HAS_MUTTER330', '--define', 'HAS_MUTTER332', '--define', 'HAS_MUTTER334'] - endif - --mutter336_dep = dependency('libmutter-6', version: ['>= 3.35.1', '< 3.38'], required: false) -+mutter336_dep = dependency('libmutter-6', version: ['>= 3.35.1', '< 3.37'], required: false) - if mutter336_dep.found() - libmutter_dep = dependency('libmutter-6', version: '>= 3.35.1') - mutter_dep = [ -@@ -54,6 +54,16 @@ if mutter336_dep.found() - vala_flags = ['--define', 'HAS_MUTTER330', '--define', 'HAS_MUTTER332', '--define', 'HAS_MUTTER334', '--define', 'HAS_MUTTER336'] - endif - -+mutter338_dep = dependency('libmutter-7', version: ['>= 3.37', '< 3.39'], required: false) -+if mutter338_dep.found() -+ libmutter_dep = dependency('libmutter-7', version: '>= 3.37') -+ mutter_dep = [ -+ dependency('mutter-cogl-7'), dependency('mutter-cogl-pango-7'), -+ dependency('mutter-clutter-7') -+ ] -+ vala_flags = ['--define', 'HAS_MUTTER330', '--define', 'HAS_MUTTER332', '--define', 'HAS_MUTTER334', '--define', 'HAS_MUTTER336', '--define', 'HAS_MUTTER338'] -+endif -+ - if mutter_dep.length() == 0 - error ('No supported mutter library found!') - endif --- -2.26.2 - diff --git a/sources b/sources index 9767bf4..ab2b852 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-2.3.2.tar.gz) = de4ebf23fedd13dc6719beb29ef6490f466839aa1b25aa8ea0023c3296c1f54423a52c7edd70127c1ba59d03c78f6ed5ecf3dc262046895b86bcd93d537347ae +SHA512 (wingpanel-db24c73.tar.gz) = f7d17abca1aadebb3c72a6d3afe3e9f98e8bd1b5e7d254fc260002d7a6b1f180468de8b62b6828239ed670cb3a2edf57c34bfce97b89115c6afacbc25230d2a3 diff --git a/wingpanel.spec b/wingpanel.spec index 6b3908b..1a6ed25 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,3 +1,7 @@ +%global commit db24c7341744a1d8abf9575eee4aeeba1c15ee40 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20210217 + %global appname io.elementary.wingpanel %global common_description %{expand: @@ -6,14 +10,12 @@ launcher.} Name: wingpanel Summary: Stylish top panel -Version: 2.3.2 -Release: 5%{?dist} +Version: 3.0.0 +Release: 0.1.%{commitdate}.git%{shortcommit}%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel -Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz - -Patch1: 0001-initial-support-for-libmutter-7-mutter-3.38.patch +Source0: %{url}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz BuildRequires: desktop-file-utils BuildRequires: gettext @@ -54,7 +56,7 @@ This package contains the files required for developing for wingpanel. %prep -%autosetup -p1 +%autosetup -n wingpanel-%{commit} -p1 %build @@ -65,7 +67,7 @@ This package contains the files required for developing for wingpanel. %install %meson_install -%find_lang wingpanel +%find_lang %{appname} # create plugin directory mkdir -p %{buildroot}/%{_libdir}/wingpanel @@ -85,13 +87,10 @@ appstream-util validate-relax --nonet \ %{buildroot}/%{_datadir}/metainfo/%{appname}.appdata.xml -%files -f wingpanel.lang -%license COPYING -%doc README.md - +%files -f %{appname}.lang %config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}.desktop -%{_bindir}/wingpanel +%{_bindir}/%{appname} %{_libdir}/gala/plugins/libwingpanel-interface.so @@ -100,7 +99,6 @@ appstream-util validate-relax --nonet \ %{_datadir}/icons/hicolor/scalable/apps/%{appname}.svg %{_datadir}/metainfo/%{appname}.appdata.xml - %files libs %license COPYING %doc README.md @@ -108,24 +106,24 @@ appstream-util validate-relax --nonet \ %dir %{_sysconfdir}/wingpanel.d %dir %{_libdir}/wingpanel -%{_libdir}/libwingpanel-2.0.so.0 -%{_libdir}/libwingpanel-2.0.so.0.2.0 - +%{_libdir}/libwingpanel.so.3 +%{_libdir}/libwingpanel.so.3.* %files devel -%license COPYING -%doc README.md +%{_includedir}/wingpanel/ -%{_includedir}/wingpanel-2.0/ +%{_libdir}/libwingpanel.so +%{_libdir}/pkgconfig/wingpanel.pc -%{_libdir}/libwingpanel-2.0.so -%{_libdir}/pkgconfig/wingpanel-2.0.pc - -%{_datadir}/vala/vapi/wingpanel-2.0.deps -%{_datadir}/vala/vapi/wingpanel-2.0.vapi +%{_datadir}/vala/vapi/wingpanel.deps +%{_datadir}/vala/vapi/wingpanel.vapi %changelog +* Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 +- Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. +- Rebuilt for granite 6 soname bump. + * Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From e66ead60f5c2859d11655e59c1c73069b99b351d Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Wed, 14 Jul 2021 23:51:56 +0200 Subject: [PATCH 20/44] update to version 3.0.0 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 16 +++++++++------- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index a512f08..a9b4d87 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ /wingpanel-2.3.1.tar.gz /wingpanel-2.3.2.tar.gz /wingpanel-db24c73.tar.gz +/wingpanel-3.0.0.tar.gz diff --git a/sources b/sources index ab2b852..469c7e6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-db24c73.tar.gz) = f7d17abca1aadebb3c72a6d3afe3e9f98e8bd1b5e7d254fc260002d7a6b1f180468de8b62b6828239ed670cb3a2edf57c34bfce97b89115c6afacbc25230d2a3 +SHA512 (wingpanel-3.0.0.tar.gz) = b885fbd5b61e4d0b30dac67517d8c258808dd473e634b3e726ebd15a6ec3e2ef11f2eb9af2adfcdfd17a1858476c05f3bf25cac62ffa4531909a5fd15e1e6974 diff --git a/wingpanel.spec b/wingpanel.spec index 1a6ed25..ff11065 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,7 +1,3 @@ -%global commit db24c7341744a1d8abf9575eee4aeeba1c15ee40 -%global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20210217 - %global appname io.elementary.wingpanel %global common_description %{expand: @@ -11,11 +7,11 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 3.0.0 -Release: 0.1.%{commitdate}.git%{shortcommit}%{?dist} +Release: 1%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel -Source0: %{url}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz +Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz BuildRequires: desktop-file-utils BuildRequires: gettext @@ -26,6 +22,7 @@ BuildRequires: vala >= 0.24.0 BuildRequires: mesa-libEGL-devel BuildRequires: pkgconfig(gala) +BuildRequires: pkgconfig(gdk-x11-3.0) BuildRequires: pkgconfig(gee-0.8) BuildRequires: pkgconfig(glib-2.0) >= 2.32 BuildRequires: pkgconfig(granite) >= 5.4.0 @@ -42,6 +39,7 @@ Obsoletes: wingpanel-indicator-ayatana < 2.0.3-11 %package libs Summary: Stylish top panel (shared library) + %description libs %{common_description} This package contains the shared library. @@ -50,13 +48,14 @@ This package contains the shared library. %package devel Summary: Stylish top panel (development files) Requires: %{name}-libs%{?_isa} = %{version}-%{release} + %description devel %{common_description} This package contains the files required for developing for wingpanel. %prep -%autosetup -n wingpanel-%{commit} -p1 +%autosetup -p1 %build @@ -120,6 +119,9 @@ appstream-util validate-relax --nonet \ %changelog +* Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 +- Update to version 3.0.0. + * Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 - Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. - Rebuilt for granite 6 soname bump. From b2973348c47161761d328431c05aa158b1bc4db6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 23 Jul 2021 20:58:15 +0000 Subject: [PATCH 21/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- wingpanel.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index ff11065..ed0ccdc 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 3.0.0 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ URL: https://github.com/elementary/wingpanel @@ -119,6 +119,9 @@ appstream-util validate-relax --nonet \ %changelog +* Fri Jul 23 2021 Fedora Release Engineering - 3.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 - Update to version 3.0.0. From 86574eafd86308fc0111116e98bfed33d1c040c4 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Tue, 28 Sep 2021 22:32:38 +0200 Subject: [PATCH 22/44] convert to rpmautospec --- changelog | 170 +++++++++++++++++++++++++++++++++++++++++++++++ wingpanel.spec | 174 +------------------------------------------------ 2 files changed, 172 insertions(+), 172 deletions(-) create mode 100644 changelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..10640c4 --- /dev/null +++ b/changelog @@ -0,0 +1,170 @@ +* Fri Jul 23 2021 Fedora Release Engineering - 3.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 +- Update to version 3.0.0. + +* Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 +- Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. +- Rebuilt for granite 6 soname bump. + +* Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 +- Add patch for initial mutter 3.38 support. + +* Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 +- Update to version 2.3.2. + +* Fri May 01 2020 Fabio Valentini - 2.3.1-3 +- Obsolete the retired wingpanel-indicator-ayatana package. + +* Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 +- Rebuild for gala 3.3.0 and mutter 3.36. + +* Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 +- Update to version 2.3.1. + +* Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 +- Bump to commit 88305e0. + +* Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 +- Update to version 2.3.0. + +* Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 +- Update to version 2.2.6. + +* Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 +- Update to version 2.2.5. + +* Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 +- Update to version 2.2.4. + +* Tue Apr 16 2019 Adam Williamson - 2.2.3-2 +- Rebuild with Meson fix for #1699099 + +* Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 +- Update to version 2.2.3. + +* Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jan 18 2019 Fabio Valentini - 2.2.2-1 +- Update to version 2.2.2. + +* Thu Dec 20 2018 Fabio Valentini - 2.2.1-1 +- Update to version 2.2.1. + +* Fri Oct 05 2018 Fabio Valentini - 2.2.0-1 +- Update to version 2.2.0. + +* Sun Sep 09 2018 Fabio Valentini - 2.1.1-4 +- Rebuild for gala mutter328 support. + +* Sat Jul 14 2018 Fedora Release Engineering - 2.1.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Jul 11 2018 Fabio Valentini - 2.1.1-2 +- Add missing BR: gcc, gcc-c++. + +* Fri Jul 06 2018 Fabio Valentini - 2.1.1-1 +- Update to version 2.1.1. + +* Wed Jun 13 2018 Fabio Valentini - 2.1.0-2 +- Rebuild for granite5 soname bump. + +* Thu Jun 07 2018 Fabio Valentini - 2.1.0-1 +- Update to version 2.1.0. + +* Tue Mar 13 2018 Fabio Valentini - 2.0.4-6 +- Add patch to support and bump release for mutter 3.28. + +* Fri Feb 09 2018 Fedora Release Engineering - 2.0.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Jan 23 2018 Fabio Valentini - 2.0.4-4 +- Include upstream patch to fix undefined symbols. + +* Sat Jan 06 2018 Fabio Valentini - 2.0.4-3 +- Remove icon cache scriptlets, replaced by file triggers. + +* Sat Nov 04 2017 Fabio Valentini - 2.0.4-2 +- Rebuild for granite soname bump. + +* Wed Sep 13 2017 Fabio Valentini - 2.0.4-1 +- Update to version 2.0.4. + +* Mon Sep 04 2017 Fabio Valentini - 2.0.3-5.20170902.git434f674 +- Bump to commit 434f674, which includes fixes for the latest mutter. + +* Sat Sep 02 2017 Fabio Valentini - 2.0.3-4.20170901.git7a1a583 +- Bump to commit 7a1a583, which includes support for the latest mutter. + +* Thu Aug 03 2017 Fedora Release Engineering - 2.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 2.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Tue May 30 2017 Fabio Valentini - 2.0.3-1 +- Update to version 2.0.3. + +* Sat Apr 08 2017 Fabio Valentini - 2.0.2-2 +- Create and own missing settings directory. + +* Fri Mar 17 2017 Fabio Valentini - 2.0.2-1 +- Update to version 2.0.2. +- Remove upstreamed patches. + +* Wed Feb 22 2017 Fabio Valentini - 2.0.1-12 +- Rebuild for new gala snapshot. + +* Sat Feb 11 2017 Fedora Release Engineering - 2.0.1-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Jan 11 2017 Fabio Valentini - 2.0.1-10 +- Add patch to fix pkgconfig file. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-9 +- Create and own plugin directory. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-8 +- Split off -libs subpackage. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-7 +- Don't let COPYING be executable. + +* Fri Jan 06 2017 Fabio Valentini - 2.0.1-6 +- Clean up spec file. + +* Thu Nov 17 2016 Fabio Valentini - 2.0.1-5 +- Add rpath workaround for f25. + +* Thu Sep 29 2016 Fabio Valentini - 2.0.1-4 +- Mass rebuild. + +* Wed Sep 28 2016 Fabio Valentini - 2.0.1-3 +- Spec file cleanups. + +* Mon Sep 19 2016 Fabio Valentini - 2.0.1-2 +- Spec file cosmetics. + +* Sun Aug 21 2016 Fabio Valentini - 2.0.1-1 +- Update to version 2.0.1. + +* Fri Aug 19 2016 Fabio Valentini - 0.4-1 +- Update to version 0.4. diff --git a/wingpanel.spec b/wingpanel.spec index ed0ccdc..06bb7a3 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -7,7 +7,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel Version: 3.0.0 -Release: 2%{?dist} +Release: %autorelease License: GPLv2+ URL: https://github.com/elementary/wingpanel @@ -119,174 +119,4 @@ appstream-util validate-relax --nonet \ %changelog -* Fri Jul 23 2021 Fedora Release Engineering - 3.0.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 -- Update to version 3.0.0. - -* Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 -- Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. -- Rebuilt for granite 6 soname bump. - -* Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 -- Add patch for initial mutter 3.38 support. - -* Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 -- Update to version 2.3.2. - -* Fri May 01 2020 Fabio Valentini - 2.3.1-3 -- Obsolete the retired wingpanel-indicator-ayatana package. - -* Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 -- Rebuild for gala 3.3.0 and mutter 3.36. - -* Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 -- Update to version 2.3.1. - -* Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 -- Bump to commit 88305e0. - -* Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 -- Update to version 2.3.0. - -* Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 -- Update to version 2.2.6. - -* Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 -- Update to version 2.2.5. - -* Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 -- Update to version 2.2.4. - -* Tue Apr 16 2019 Adam Williamson - 2.2.3-2 -- Rebuild with Meson fix for #1699099 - -* Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 -- Update to version 2.2.3. - -* Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Jan 18 2019 Fabio Valentini - 2.2.2-1 -- Update to version 2.2.2. - -* Thu Dec 20 2018 Fabio Valentini - 2.2.1-1 -- Update to version 2.2.1. - -* Fri Oct 05 2018 Fabio Valentini - 2.2.0-1 -- Update to version 2.2.0. - -* Sun Sep 09 2018 Fabio Valentini - 2.1.1-4 -- Rebuild for gala mutter328 support. - -* Sat Jul 14 2018 Fedora Release Engineering - 2.1.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed Jul 11 2018 Fabio Valentini - 2.1.1-2 -- Add missing BR: gcc, gcc-c++. - -* Fri Jul 06 2018 Fabio Valentini - 2.1.1-1 -- Update to version 2.1.1. - -* Wed Jun 13 2018 Fabio Valentini - 2.1.0-2 -- Rebuild for granite5 soname bump. - -* Thu Jun 07 2018 Fabio Valentini - 2.1.0-1 -- Update to version 2.1.0. - -* Tue Mar 13 2018 Fabio Valentini - 2.0.4-6 -- Add patch to support and bump release for mutter 3.28. - -* Fri Feb 09 2018 Fedora Release Engineering - 2.0.4-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Tue Jan 23 2018 Fabio Valentini - 2.0.4-4 -- Include upstream patch to fix undefined symbols. - -* Sat Jan 06 2018 Fabio Valentini - 2.0.4-3 -- Remove icon cache scriptlets, replaced by file triggers. - -* Sat Nov 04 2017 Fabio Valentini - 2.0.4-2 -- Rebuild for granite soname bump. - -* Wed Sep 13 2017 Fabio Valentini - 2.0.4-1 -- Update to version 2.0.4. - -* Mon Sep 04 2017 Fabio Valentini - 2.0.3-5.20170902.git434f674 -- Bump to commit 434f674, which includes fixes for the latest mutter. - -* Sat Sep 02 2017 Fabio Valentini - 2.0.3-4.20170901.git7a1a583 -- Bump to commit 7a1a583, which includes support for the latest mutter. - -* Thu Aug 03 2017 Fedora Release Engineering - 2.0.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 2.0.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Tue May 30 2017 Fabio Valentini - 2.0.3-1 -- Update to version 2.0.3. - -* Sat Apr 08 2017 Fabio Valentini - 2.0.2-2 -- Create and own missing settings directory. - -* Fri Mar 17 2017 Fabio Valentini - 2.0.2-1 -- Update to version 2.0.2. -- Remove upstreamed patches. - -* Wed Feb 22 2017 Fabio Valentini - 2.0.1-12 -- Rebuild for new gala snapshot. - -* Sat Feb 11 2017 Fedora Release Engineering - 2.0.1-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Wed Jan 11 2017 Fabio Valentini - 2.0.1-10 -- Add patch to fix pkgconfig file. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-9 -- Create and own plugin directory. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-8 -- Split off -libs subpackage. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-7 -- Don't let COPYING be executable. - -* Fri Jan 06 2017 Fabio Valentini - 2.0.1-6 -- Clean up spec file. - -* Thu Nov 17 2016 Fabio Valentini - 2.0.1-5 -- Add rpath workaround for f25. - -* Thu Sep 29 2016 Fabio Valentini - 2.0.1-4 -- Mass rebuild. - -* Wed Sep 28 2016 Fabio Valentini - 2.0.1-3 -- Spec file cleanups. - -* Mon Sep 19 2016 Fabio Valentini - 2.0.1-2 -- Spec file cosmetics. - -* Sun Aug 21 2016 Fabio Valentini - 2.0.1-1 -- Update to version 2.0.1. - -* Fri Aug 19 2016 Fabio Valentini - 0.4-1 -- Update to version 0.4. - +%autochangelog From 0965f221cb64213d4c4043b93f97b0c0b2944293 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Tue, 28 Sep 2021 22:47:04 +0200 Subject: [PATCH 23/44] Update to version 3.0.1; Fixes RHBZ#2008349 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 5 ++++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index a9b4d87..5a19ed1 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,4 @@ /wingpanel-2.3.2.tar.gz /wingpanel-db24c73.tar.gz /wingpanel-3.0.0.tar.gz +/wingpanel-3.0.1.tar.gz diff --git a/sources b/sources index 469c7e6..a7e3faf 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-3.0.0.tar.gz) = b885fbd5b61e4d0b30dac67517d8c258808dd473e634b3e726ebd15a6ec3e2ef11f2eb9af2adfcdfd17a1858476c05f3bf25cac62ffa4531909a5fd15e1e6974 +SHA512 (wingpanel-3.0.1.tar.gz) = 2bcbaeb33f6cb29a989a91ded7ed6cb25af203638ff33de9dacd662b85373487741753631f6f43534b8cf88f07edf258d941f07900c8cd215e7e266a32bcb9b3 diff --git a/wingpanel.spec b/wingpanel.spec index 06bb7a3..c9efba8 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -6,7 +6,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel -Version: 3.0.0 +Version: 3.0.1 Release: %autorelease License: GPLv2+ @@ -27,6 +27,9 @@ BuildRequires: pkgconfig(gee-0.8) BuildRequires: pkgconfig(glib-2.0) >= 2.32 BuildRequires: pkgconfig(granite) >= 5.4.0 BuildRequires: pkgconfig(gtk+-3.0) >= 3.10 +BuildRequires: pkgconfig(mutter-clutter-9) +BuildRequires: pkgconfig(mutter-cogl-9) +BuildRequires: pkgconfig(mutter-cogl-pango-9) Requires: %{name}-libs%{?_isa} = %{version}-%{release} From 05b6969bbe29fafc670b4085f6a843f39787f38f Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Wed, 22 Dec 2021 22:50:00 +0100 Subject: [PATCH 24/44] Update to version 3.0.2; Fixes RHBZ#2034028 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 5a19ed1..8116fdb 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,4 @@ /wingpanel-db24c73.tar.gz /wingpanel-3.0.0.tar.gz /wingpanel-3.0.1.tar.gz +/wingpanel-3.0.2.tar.gz diff --git a/sources b/sources index a7e3faf..0552b68 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-3.0.1.tar.gz) = 2bcbaeb33f6cb29a989a91ded7ed6cb25af203638ff33de9dacd662b85373487741753631f6f43534b8cf88f07edf258d941f07900c8cd215e7e266a32bcb9b3 +SHA512 (wingpanel-3.0.2.tar.gz) = 31e8584e3e243fcfc344d4f264f284d81fbc56bc08f3e75475946f78c504da74f8a8e3d53155d1238ab7398e02d1532f87790cb51bd59469ffd360e21a509c53 diff --git a/wingpanel.spec b/wingpanel.spec index c9efba8..07045c8 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -6,7 +6,7 @@ launcher.} Name: wingpanel Summary: Stylish top panel -Version: 3.0.1 +Version: 3.0.2 Release: %autorelease License: GPLv2+ From 169f4d8dba7047f299c12ac0159e696f51f6dee5 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Wed, 19 Jan 2022 00:43:13 +0100 Subject: [PATCH 25/44] Include upstream PR for mutter 42 / libmutter-10 support --- 434.patch | 1993 ++++++++++++++++++++++++++++++++++++++++++++++++ wingpanel.spec | 9 +- 2 files changed, 1999 insertions(+), 3 deletions(-) create mode 100644 434.patch diff --git a/434.patch b/434.patch new file mode 100644 index 0000000..bd4bab1 --- /dev/null +++ b/434.patch @@ -0,0 +1,1993 @@ +From 3cb4daa89a04f0f134679229d9dc4c9b1638a12f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Corentin=20No=C3=ABl?= +Date: Tue, 18 Jan 2022 19:45:40 +0100 +Subject: [PATCH] Add support for Mutter 42 + +--- + vapi/Clutter-10-custom.vala | 53 +++++++++ + vapi/Clutter-10.metadata | 192 ++++++++++++++++++++++++++++++++ + vapi/Clutter-9-custom.vala | 23 ++++ + vapi/Clutter-9.metadata | 19 +++- + vapi/Cogl-10-custom.vala | 161 ++++++++++++++++++++++++++ + vapi/Cogl-10.metadata | 68 +++++++++++ + vapi/Meta-10.metadata | 181 ++++++++++++++++++++++++++++++ + vapi/config.vapi | 2 + + vapi/libmutter-10.deps | 1 + + vapi/libmutter-10.vapi | 1 + + vapi/libmutter.vapi | 46 +++++++- + vapi/libsystemd.vapi | 18 +++ + vapi/meson.build | 69 ++++++++++++ + vapi/mutter-clutter-10.deps | 6 + + vapi/mutter-clutter-10.vapi | 1 + + vapi/mutter-clutter-9.deps | 2 +- + vapi/mutter-clutter.vapi | 184 +++++++++++++++++++++++++----- + vapi/mutter-cogl-10.deps | 1 + + vapi/mutter-cogl-10.vapi | 1 + + vapi/mutter-cogl-6.vapi | 77 ++++++++++++- + vapi/mutter-cogl-pango-10.vapi | 1 + + wingpanel-interface/meson.build | 11 ++ + 22 files changed, 1080 insertions(+), 38 deletions(-) + create mode 100644 vapi/Clutter-10-custom.vala + create mode 100644 vapi/Clutter-10.metadata + create mode 100644 vapi/Cogl-10-custom.vala + create mode 100644 vapi/Cogl-10.metadata + create mode 100644 vapi/Meta-10.metadata + create mode 120000 vapi/libmutter-10.deps + create mode 120000 vapi/libmutter-10.vapi + create mode 100644 vapi/libsystemd.vapi + create mode 100644 vapi/mutter-clutter-10.deps + create mode 120000 vapi/mutter-clutter-10.vapi + create mode 120000 vapi/mutter-cogl-10.deps + create mode 120000 vapi/mutter-cogl-10.vapi + create mode 120000 vapi/mutter-cogl-pango-10.vapi + +diff --git a/vapi/Clutter-10-custom.vala b/vapi/Clutter-10-custom.vala +new file mode 100644 +index 00000000..e5c71c2d +--- /dev/null ++++ b/vapi/Clutter-10-custom.vala +@@ -0,0 +1,53 @@ ++namespace Clutter { ++ public struct Color { ++ [CCode (cname = "_vala_clutter_color_from_hls")] ++ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_hls (hue, luminance, saturation); ++ return color; ++ } ++ [CCode (cname = "_vala_clutter_color_from_pixel")] ++ public static Clutter.Color? from_pixel (uint32 pixel) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_pixel (pixel); ++ return color; ++ } ++ [CCode (cname = "_vala_clutter_color_from_string")] ++ public static Clutter.Color? from_string (string str) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_string (str); ++ return color; ++ } ++ [CCode (cname = "clutter_color_from_string")] ++ public bool parse_string (string str); ++ } ++ ++ 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 (); ++ } ++ ++ 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); ++ } ++ ++ [CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)] ++ public struct Capture { ++ } ++} +diff --git a/vapi/Clutter-10.metadata b/vapi/Clutter-10.metadata +new file mode 100644 +index 00000000..5b69ae58 +--- /dev/null ++++ b/vapi/Clutter-10.metadata +@@ -0,0 +1,192 @@ ++// Non mini-object ++ActorBox struct ++Color struct ++Knot struct ++Margin struct ++PaintVolume struct ++PathNode struct ++Perspective struct ++Units struct ++ ++*.ref unowned ++ ++Actor ++ .apply_transform.matrix ref ++ .get_abs_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" ++ScriptError errordomain ++ImageError errordomain ++ ++// 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#virtual_method name="get_paint_volume_vfunc" ++ .get_paint_volume#virtual_method.volume out ++Container ++ .add_actor skip=false ++ .class_* skip ++Text ++ .activate#method name="try_activate" ++ .insert_text#signal skip ++TextBuffer.get_text#virtual_method name="get_text_with_length" ++ ++// virtual/abstract distinction ++Container ++ .*_child_meta#virtual_method virtual ++ ++// Default values ++Stage.read_pixels ++ .width default=-1 ++ .height default=-1 ++Stage.paint_to_buffer ++ .data type="uint8[]" ++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 ++Backend ++ .get_cogl_context skip=false ++Container ++ .child_get skip=false ++ .child_set skip=false ++ .remove 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 ++ ++// Skipped upstream for unknown reasons ++Interval.register_progress_func 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 ++Margin ++ .new skip ++ ++// Class methods ++container_class_find_child_property skip ++container_class_list_child_properties skip ++ ++// Move symbols ++units_from_* skip ++ ++// Struct return values ++color_get_static nullable ++ ++// Upstream ++Event ++ .get_position.position out ++ ++FrameListenerIface skip ++FrameClock.new skip ++ ++// Remove for clutter-2.0 ++///////////////////////// ++ ++StageView.layout skip ++ ++Stage ++ .event name="emit_event" ++ .paint_view.redraw_clip type="Cairo.Region" ++ ++Capture ++ .image type="Cairo.ImageSurface" ++ ++// *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" ++DeviceEvent struct=false base_type="Clutter.Event" ++IMEvent struct=false base_type="Clutter.Event" ++KeyEvent struct=false base_type="Clutter.Event" ++MotionEvent struct=false base_type="Clutter.Event" ++PadButtonEvent struct=false base_type="Clutter.Event" ++PadRingEvent struct=false base_type="Clutter.Event" ++PadStripEvent struct=false base_type="Clutter.Event" ++ProximityEvent struct=false base_type="Clutter.Event" ++ScrollEvent struct=false base_type="Clutter.Event" ++TouchEvent struct=false base_type="Clutter.Event" ++TouchpadHoldEvent 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" ++ ++Color.from_hls name="init_from_hls" ++Color.from_pixel name="init_from_pixel" ++Color.from_string name="init_from_string" ++ ++Color.new name="from_rgba" symbol_type="function" ++ .alpha default=0 ++ .blue default=0 ++ .green default=0 ++ .red default=0 ++ ++Color.init ++ .alpha default=0 ++ .blue default=0 ++ .green default=0 ++ .red default=0 ++ ++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/Clutter-9-custom.vala b/vapi/Clutter-9-custom.vala +index abc9b22d..e5c71c2d 100644 +--- a/vapi/Clutter-9-custom.vala ++++ b/vapi/Clutter-9-custom.vala +@@ -1,4 +1,27 @@ + namespace Clutter { ++ public struct Color { ++ [CCode (cname = "_vala_clutter_color_from_hls")] ++ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_hls (hue, luminance, saturation); ++ return color; ++ } ++ [CCode (cname = "_vala_clutter_color_from_pixel")] ++ public static Clutter.Color? from_pixel (uint32 pixel) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_pixel (pixel); ++ return color; ++ } ++ [CCode (cname = "_vala_clutter_color_from_string")] ++ public static Clutter.Color? from_string (string str) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_string (str); ++ return color; ++ } ++ [CCode (cname = "clutter_color_from_string")] ++ public bool parse_string (string str); ++ } ++ + public interface Container : GLib.Object { + public void add (params Clutter.Actor[] actors); + [CCode (cname = "clutter_container_class_find_child_property")] +diff --git a/vapi/Clutter-9.metadata b/vapi/Clutter-9.metadata +index 7955ad82..0750e787 100644 +--- a/vapi/Clutter-9.metadata ++++ b/vapi/Clutter-9.metadata +@@ -106,8 +106,6 @@ ActorBox + .new skip + .from_vertices skip + Units.from_* skip +-Color +- .new skip + Margin + .new skip + +@@ -116,7 +114,6 @@ container_class_find_child_property skip + container_class_list_child_properties skip + + // Move symbols +-color_from_* skip + units_from_* skip + + // Struct return values +@@ -178,6 +175,22 @@ threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout" + // Backwards compatibility + Color.alloc symbol_type="function" + ++Color.from_hls name="init_from_hls" ++Color.from_pixel name="init_from_pixel" ++Color.from_string name="init_from_string" ++ ++Color.new name="from_rgba" symbol_type="function" ++ .alpha default=0 ++ .blue default=0 ++ .green default=0 ++ .red default=0 ++ ++Color.init ++ .alpha default=0 ++ .blue default=0 ++ .green default=0 ++ .red default=0 ++ + BinAlignment deprecated=false deprecated_since=null + BinAlignment.* deprecated + BinAlignment.start deprecated=false +diff --git a/vapi/Cogl-10-custom.vala b/vapi/Cogl-10-custom.vala +new file mode 100644 +index 00000000..f6034717 +--- /dev/null ++++ b/vapi/Cogl-10-custom.vala +@@ -0,0 +1,161 @@ ++namespace Cogl { ++ public struct Color { ++ [Version (since = "1.4")] ++ [CCode (cname="cogl_color_init_from_4f")] ++ public Color.from_4f (float red, float green, float blue, float alpha); ++ [Version (since = "1.4")] ++ [CCode (cname="cogl_color_init_from_4fv")] ++ public Color.from_4fv (float color_array); ++ [Version (since = "1.4")] ++ [CCode (cname="cogl_color_init_from_4ub")] ++ public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha); ++ [Version (since = "1.16")] ++ [CCode (cname="cogl_color_init_from_hsl")] ++ public Color.from_hsl (float hue, float saturation, float luminance); ++ } ++ ++ [Compact] ++ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] ++ public class Shader : Cogl.Handle { ++ } ++ ++ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")] ++ public class Primitive : Cogl.Object { ++ [CCode (has_construct_function = false)] ++ protected Primitive (); ++ [Version (since = "1.10")] ++ public Cogl.Primitive copy (); ++ [Version (since = "1.16")] ++ public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline); ++ public int get_first_vertex (); ++ public Cogl.VerticesMode get_mode (); ++ [Version (since = "1.8")] ++ public int get_n_vertices (); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data); ++ public void set_first_vertex (int first_vertex); ++ public void set_mode (Cogl.VerticesMode mode); ++ [Version (since = "1.8")] ++ public void set_n_vertices (int n_vertices); ++ } ++ ++ [Compact] ++ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] ++ public class Program : Cogl.Handle { ++ } ++ ++ [Compact] ++ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] ++ public class Handle { ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")] ++ [Version (deprecated = true, deprecated_since = "1.16")] ++ public bool is_material (); ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")] ++ [Version (deprecated = true, deprecated_since = "1.16")] ++ public bool is_program (Cogl.Handle handle); ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")] ++ [Version (deprecated = true, deprecated_since = "1.16")] ++ public bool is_shader (); ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")] ++ public bool is_texture (); ++ } ++ ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2 { ++ public float x; ++ public float y; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2C4 { ++ public float x; ++ public float y; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2T2 { ++ public float x; ++ public float y; ++ public float s; ++ public float t; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2T2C4 { ++ public float x; ++ public float y; ++ public float s; ++ public float t; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3 { ++ public float x; ++ public float y; ++ public float z; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3C4 { ++ public float x; ++ public float y; ++ public float z; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3T2 { ++ public float x; ++ public float y; ++ public float z; ++ public float s; ++ public float t; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3T2C4 { ++ public float x; ++ public float y; ++ public float z; ++ public float s; ++ public float t; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++} +diff --git a/vapi/Cogl-10.metadata b/vapi/Cogl-10.metadata +new file mode 100644 +index 00000000..06197be7 +--- /dev/null ++++ b/vapi/Cogl-10.metadata +@@ -0,0 +1,68 @@ ++* cheader_filename="cogl/cogl.h" ++ ++Color struct ++ ++_ColorSizeCheck skip ++_TextureVertexSizeCheck skip ++ ++Color.equal.v1 type="Cogl.Color" ++Color.equal.v2 type="Cogl.Color" ++color_equal skip ++ ++Context.free_timestamp_query.query owned ++ ++texture_new_* name="texture_new_(.+)" parent="Cogl.Texture" ++Texture ++ .get_data.data type="uint8[]" ++ .new_from_data.data type="uint8[]" ++ .set_data.data type="uint8[]" ++ .set_region.data type="uint8[]" ++ ++Texture2D ++ .new_from_data skip=false ++ .new_from_data.data array=true ++ ++shader_* name="shader_(.+)" parent="Cogl.Shader" ++shader_* symbol_type="method" instance_idx=0 ++ ++program_* name="program_(.+)" parent="Cogl.Program" ++program_attach_shader symbol_type="method" instance_idx=0 ++program_get_uniform_location symbol_type="method" instance_idx=0 ++program_link symbol_type="method" instance_idx=0 ++program_set_uniform_1f symbol_type="method" instance_idx=0 ++program_set_uniform_1i symbol_type="method" instance_idx=0 ++program_set_uniform_float symbol_type="method" instance_idx=0 ++program_set_uniform_int symbol_type="method" instance_idx=0 ++program_set_uniform_matrix symbol_type="method" instance_idx=0 ++ ++is_bitmap parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_program parent="Cogl.Handle" ++is_shader parent="Cogl.Handle" ++is_texture parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_context parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_framebuffer parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_frame_info parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_pipeline parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_texture_2d parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_texture_2d_sliced parent="Cogl.Object" symbol_type="method" instance_idx=0 ++ ++create_program type="unowned Cogl.Program" name="create" parent="Cogl.Program" ++create_shader type="unowned Cogl.Shader" name="create" parent="Cogl.Shader" ++ ++foreach_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 ++get_graphics_reset_status parent="Cogl.Context" symbol_type="method" instance_idx=0 ++has_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 ++ ++Bitmap.error_quark parent="Cogl.BitmapError" name="quark" ++Texture.error_quark parent="Cogl.TextureError" name="quark" ++texture_error_quark skip ++Scanout.error_quark parent="Cogl.ScanoutError" name="quark" ++scanout_error_quark skip ++ ++BitmapError errordomain ++BlendStringError errordomain ++RendererError errordomain ++SystemError errordomain ++TextureError errordomain ++FramebufferError errordomain ++ScanoutError errordomain +diff --git a/vapi/Meta-10.metadata b/vapi/Meta-10.metadata +new file mode 100644 +index 00000000..eaefc051 +--- /dev/null ++++ b/vapi/Meta-10.metadata +@@ -0,0 +1,181 @@ ++* skip=false ++*.* skip=false ++* cheader_filename="meta/main.h" ++ ++Backend cheader_filename="meta/meta-backend.h" ++Backend.gpu_added skip ++get_backend parent="Meta.Backend" cheader_filename="meta/meta-backend.h" ++Background cheader_filename="meta/meta-background.h" ++Background.set_file.file nullable ++BackgroundContent.new symbol_type="constructor" ++BackgroundActor cheader_filename="meta/meta-background-actor.h" ++BackgroundContent cheader_filename="meta/meta-background-content.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" ++BarrierDirection cheader_filename="meta/barrier.h" ++BarrierEvent cheader_filename="meta/barrier.h" ++ButtonFunction cheader_filename="meta/common.h" ++ButtonLayout cheader_filename="meta/common.h" ++Compositor cheader_filename="meta/compositor.h" ++Compositor.sync_stack.stack type_arguments="Meta.Window" ++get_feedback_group_for_display parent="Meta.Display" symbol_type="method" name="get_feedback_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++get_stage_for_display parent="Meta.Display" symbol_type="method" name="get_stage" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++get_top_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_top_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++get_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++disable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="disable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++enable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="enable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++ ++get_window_actors parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" type_arguments="Meta.WindowActor" ++focus_stage_window parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++ ++CompEffect cheader_filename="meta/compositor.h" ++CloseDialog cheader_filename="meta/meta-close-dialog.h" ++CloseDialogResponse cheader_filename="meta/meta-close-dialog.h" ++Context cheader_filename="meta/meta-context.h" ++Cursor cheader_filename="meta/common.h" ++CursorTracker cheader_filename="meta/meta-cursor-tracker.h" ++CursorTracker.get_for_display parent="Meta.Display" symbol_type="method" instance_idx=0 name="get_cursor_tracker" ++CursorTracker.get_pointer.mods out ++DebugTopic cheader_filename="meta/util.h" ++Direction cheader_filename="meta/common.h" ++Display cheader_filename="meta/display.h" ++DisplayCorner cheader_filename="meta/display.h" ++DisplayDirection cheader_filename="meta/display.h" ++Dnd cheader_filename="meta/meta-dnd.h" ++EdgeType cheader_filename="meta/boxes.h" ++Edge cheader_filename="meta/boxes.h" ++Frame cheader_filename="meta/types.h" ++FrameBorders cheader_filename="meta/common.h" ++FrameFlags cheader_filename="meta/common.h" ++FrameType cheader_filename="meta/common.h" ++GrabOp cheader_filename="meta/common.h" ++Group cheader_filename="meta/group.h" ++Group.property_notify.event type="X.Event" ref ++IdleMonitor cheader_filename="meta/meta-idle-monitor.h" ++IdleMonitorWatchFunc cheader_filename="meta/meta-idle-monitor.h" ++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" ++InhibitShortcutsDialogResponse cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" ++KeyBinding cheader_filename="meta/keybindings.h" ++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler" cheader_filename="meta/keybindings.h" ++KeyBindingAction cheader_filename="meta/prefs.h" ++KeyBindingFlags cheader_filename="meta/prefs.h" ++KeyHandlerFunc cheader_filename="meta/prefs.h" ++KeyHandlerFunc.event type="Clutter.KeyEvent?" ++KeyHandlerFunc.window nullable ++LaunchContext cheader_filename="meta/meta-launch-context.h" ++LaterType cheader_filename="meta/util.h" ++LocaleDirection cheader_filename="meta/util.h" ++MaximizeFlags cheader_filename="meta/window.h" ++ModalOptions cheader_filename="meta/meta-plugin.h" ++MonitorManager cheader_filename="meta/meta-monitor-manager.h" ++MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" ++MotionDirection cheader_filename="meta/common.h" ++PadActionType cheader_filename="meta/display.h" ++Plugin cheader_filename="meta/meta-plugin.h" ++Plugin.xevent_filter.event type="X.Event" ref ++PluginInfo cheader_filename="meta/meta-plugin.h" ++Preference cheader_filename="meta/prefs.h" ++PrefsChangedFunc cheader_filename="meta/prefs.h" ++Rectangle cheader_filename="meta/boxes.h" struct ++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h" ++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h" ++Selection cheader_filename="meta/meta-selection.h" ++SelectionSource cheader_filename="meta/meta-selection-source.h" ++SelectionSourceMemory cheader_filename="meta/meta-selection-source-memory.h" ++SelectionType cheader_filename="meta/meta-selection-source.h" ++Settings cheader_filename="meta/meta-settings.h" ++Shadow cheader_filename="meta/meta-shadow-factory.h" ++ShadowFactory cheader_filename="meta/meta-shadow-factory.h" ++ShadowMode cheader_filename="meta/meta-window-actor.h" ++ShadowParams cheader_filename="meta/meta-shadow-factory.h" ++ShapedTexture cheader_filename="meta/meta-shaped-texture.h" ++Side cheader_filename="meta/common.h" ++SizeChange cheader_filename="meta/compositor.h" ++SoundPlayer cheader_filename="meta/meta-sound-player.h" ++StartupNotification cheader_filename="meta/meta-startup-notification.h" ++StartupNotification.changed.object type="Meta.StartupSequence" ++StartupNotification.get_sequences type_arguments="Meta.StartupSequence" ++StartupSequence cheader_filename="meta/meta-startup-notification.h" ++StackLayer cheader_filename="meta/common.h" ++Stage cheader_filename="meta/meta-stage.h" ++Stage.is_focused parent="Meta.Display" symbol_type="method" name="stage_is_focused" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++Strut cheader_filename="meta/boxes.h" ++TabList cheader_filename="meta/display.h" ++TabShowType cheader_filename="meta/display.h" ++Theme cheader_filename="meta/theme.h" ++theme_get_default cheader_filename="meta/theme.h" ++theme_new cheader_filename="meta/theme.h" ++VirtualModifier cheader_filename="meta/common.h" ++Workspace cheader_filename="meta/workspace.h" ++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h" ++Window cheader_filename="meta/window.h" ++Window.focus#signal name="focused" ++Window.icon type="Cairo.Surface" ++Window.mini_icon type="Cairo.Surface" ++WindowActor cheader_filename="meta/meta-window-actor.h" ++WindowClientType cheader_filename="meta/window.h" ++WindowForeachFunc cheader_filename="meta/window.h" ++WindowGroup cheader_filename="meta/meta-window-group.h" ++WindowMenuType cheader_filename="meta/compositor.h" ++WindowShape cheader_filename="meta/meta-window-shape.h" ++WindowType cheader_filename="meta/window.h" ++X11Display cheader_filename="meta/meta-x11-display.h" ++ ++rect skip ++prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h" ++ ++g_utf8_strndup skip ++ ++preference_to_string cheader_filename="meta/prefs.h" ++frame_type_to_string cheader_filename="meta/util.h" ++topic_to_string parent="Meta.DebugTopic" name="to_string" ++ ++CURRENT_TIME cheader_filename="meta/common.h" ++ICON_WIDTH cheader_filename="meta/common.h" ++ICON_HEIGHT cheader_filename="meta/common.h" ++MINI_ICON_WIDTH cheader_filename="meta/common.h" ++MINI_ICON_HEIGHT cheader_filename="meta/common.h" ++DEFAULT_ICON_NAME cheader_filename="meta/common.h" ++PRIORITY_RESIZE cheader_filename="meta/common.h" ++PRIORITY_BEFORE_REDRAW cheader_filename="meta/common.h" ++PRIORITY_REDRAW cheader_filename="meta/common.h" ++PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h" ++VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h" ++VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h" ++ ++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" ++bug parent="Meta.Util" cheader_filename="meta/util.h" ++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h" ++fatal parent="Meta.Util" cheader_filename="meta/util.h" ++get_locale_direction 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" ++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" ++show_dialog parent="Meta.Util" cheader_filename="meta/util.h" ++show_dialog.columns type_arguments="string" nullable default=null ++show_dialog.entries type_arguments="string" nullable default=null ++show_dialog.transient_for default=0 ++show_dialog.icon_name nullable default=null ++show_dialog.cancel_text nullable default=null ++show_dialog.ok_text nullable default=null ++show_dialog.display nullable default=null ++show_dialog.timeout nullable default=null ++unsigned_long_equal parent="Meta.Util" name="ulong_equal" cheader_filename="meta/util.h" ++unsigned_long_equal.v1 type="ulong?" ++unsigned_long_equal.v2 type="ulong?" ++unsigned_long_hash parent="Meta.Util" name="ulong_hash" cheader_filename="meta/util.h" ++unsigned_long_hash.v type="ulong?" ++warning parent="Meta.Util" cheader_filename="meta/util.h" ++create_context parent="Meta.Context" name="new" symbol_type="constructor" cheader_filename="meta/meta-context.h" ++ ++x11_error_trap_pop parent="Meta.X11Display" symbol_type="method" name="error_trap_pop" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" ++x11_error_trap_pop_with_return parent="Meta.X11Display" symbol_type="method" name="error_trap_pop_with_return" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" ++x11_error_trap_push parent="Meta.X11Display" symbol_type="method" name="error_trap_push" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" ++x11_init_gdk_display parent="Meta.X11Display" cheader_filename="meta/meta-x11-display.h" +diff --git a/vapi/config.vapi b/vapi/config.vapi +index c2c3a35b..35abae73 100644 +--- a/vapi/config.vapi ++++ b/vapi/config.vapi +@@ -18,6 +18,8 @@ + [CCode (cprefix = "", lower_case_cprefix = "", cheader_filename = "config.h")] + namespace Config + { ++ public const string GETTEXT_PACKAGE; ++ public const string LOCALEDIR; + public const string DATADIR; + public const string PKGDATADIR; + public const string VERSION; +diff --git a/vapi/libmutter-10.deps b/vapi/libmutter-10.deps +new file mode 120000 +index 00000000..cdf92777 +--- /dev/null ++++ b/vapi/libmutter-10.deps +@@ -0,0 +1 @@ ++libmutter-9.deps +\ No newline at end of file +diff --git a/vapi/libmutter-10.vapi b/vapi/libmutter-10.vapi +new file mode 120000 +index 00000000..3d8073f5 +--- /dev/null ++++ b/vapi/libmutter-10.vapi +@@ -0,0 +1 @@ ++libmutter-9.vapi +\ No newline at end of file +diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi +index baba792d..5dacb629 100644 +--- a/vapi/libmutter.vapi ++++ b/vapi/libmutter.vapi +@@ -137,14 +137,18 @@ namespace Meta { + #endif + [CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")] + public static GLib.Pid show_dialog (string type, string message, string? timeout = null, string? display = null, string? ok_text = null, string? cancel_text = null, string? icon_name = null, int transient_for = 0, GLib.SList? columns = null, GLib.SList? entries = null); ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "meta/util.h", cname = "meta_topic_real")] + public static void topic_real (Meta.DebugTopic topic, string format, ...); ++#endif + [CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")] + public static int ulong_equal ([CCode (type = "gconstpointer")] ulong? v1, [CCode (type = "gconstpointer")] ulong? v2); + [CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")] + public static uint ulong_hash ([CCode (type = "gconstpointer")] ulong? v); ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "meta/util.h", cname = "meta_verbose_real")] + public static void verbose_real (string format, ...); ++#endif + [CCode (cheader_filename = "meta/util.h", cname = "meta_warning")] + public static void warning (string format, ...); + } +@@ -159,16 +163,24 @@ namespace Meta { + public unowned Meta.IdleMonitor get_core_idle_monitor (); + #endif + public unowned Meta.Dnd get_dnd (); ++#if HAS_MUTTER42 ++ public unowned Meta.MonitorManager get_monitor_manager (); ++#endif + public unowned Meta.RemoteAccessController get_remote_access_controller (); + public unowned Meta.Settings get_settings (); + public unowned Clutter.Actor get_stage (); ++#if HAS_MUTTER42 ++ public bool is_headless (); ++#endif + public bool is_rendering_hardware_accelerated (); + public void lock_layout_group (uint idx); + public void set_keymap (string layouts, string variants, string options); + #if HAS_MUTTER41 + public Meta.Context context { get; construct; } + #endif ++#if !HAS_MUTTER42 + public void set_numlock (bool numlock_state); ++#endif + public signal void keymap_changed (); + public signal void keymap_layout_group_changed (uint object); + public signal void last_device_changed (Clutter.InputDevice object); +@@ -352,6 +364,10 @@ namespace Meta { + public void terminate_with_error (GLib.Error error); + [NoAccessorMethod] + public string name { owned get; construct; } ++#if HAS_MUTTER42 ++ [NoAccessorMethod] ++ public bool unsafe_mode { get; set; } ++#endif + } + #endif + [CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")] +@@ -365,6 +381,9 @@ namespace Meta { + public void get_pointer (out int x, out int y, out Clutter.ModifierType mods); + #endif + public bool get_pointer_visible (); ++#if HAS_MUTTER42 ++ public float get_scale (); ++#endif + public unowned Cogl.Texture get_sprite (); + public void set_pointer_visible (bool visible); + #if HAS_MUTTER338 +@@ -444,6 +463,9 @@ namespace Meta { + public unowned Meta.X11Display get_x11_display (); + public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags); + public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence); ++#if HAS_MUTTER42 ++ public GLib.List list_all_windows (); ++#endif + public bool remove_keybinding (string name); + public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode); + public void set_cursor (Meta.Cursor cursor); +@@ -569,6 +591,10 @@ namespace Meta { + public void switch_config (Meta.MonitorSwitchConfigType config_type); + [NoAccessorMethod] + public Meta.Backend backend { owned get; construct; } ++#if HAS_MUTTER42 ++ [NoAccessorMethod] ++ public bool has_builtin_panel { get; } ++#endif + #if HAS_MUTTER338 + public bool panel_orientation_managed { get; } + #endif +@@ -855,6 +881,9 @@ namespace Meta { + public unowned Meta.Workspace get_workspace (); + public X.Window get_xwindow (); + public void group_leader_changed (); ++#if HAS_MUTTER42 ++ public bool has_attached_dialogs (); ++#endif + public bool has_focus (); + public bool is_above (); + public bool is_always_on_all_workspaces (); +@@ -923,6 +952,10 @@ namespace Meta { + public string gtk_window_object_path { get; } + [NoAccessorMethod] + public Cairo.Surface icon { owned get; } ++#if HAS_MUTTER42 ++ [NoAccessorMethod] ++ public bool is_alive { get; } ++#endif + [NoAccessorMethod] + public bool maximized_horizontally { get; } + [NoAccessorMethod] +@@ -968,6 +1001,9 @@ namespace Meta { + public unowned Meta.Window get_meta_window (); + public unowned Meta.ShapedTexture get_texture (); + public bool is_destroyed (); ++#if HAS_MUTTER42 ++ public Clutter.Content? paint_to_content (Meta.Rectangle? clip) throws GLib.Error; ++#endif + public void sync_visibility (); + #if HAS_MUTTER338 + public void thaw (); +@@ -1277,6 +1313,10 @@ namespace Meta { + KMS, + SCREEN_CAST, + REMOTE_DESKTOP, ++#endif ++#if HAS_MUTTER42 ++ BACKEND, ++ RENDER, + #endif + DBUS + } +@@ -1433,7 +1473,9 @@ namespace Meta { + CYCLE_PANELS, + CYCLE_PANELS_BACKWARD, + SHOW_DESKTOP, ++#if !HAS_MUTTER42 + PANEL_MAIN_MENU, ++#endif + PANEL_RUN_DIALOG, + TOGGLE_RECORDING, + SET_SPEW_MARK, +@@ -1745,10 +1787,6 @@ namespace Meta { + #endif + [CCode (cheader_filename = "meta/main.h")] + public static void clutter_init (); +-#if HAS_MUTTER41 +- [CCode (cheader_filename = "meta/meta-context.h")] +- public static Meta.Context create_context (string name); +-#endif + [CCode (cheader_filename = "meta/main.h")] + public static void exit (Meta.ExitCode code); + #if !HAS_MUTTER41 +diff --git a/vapi/libsystemd.vapi b/vapi/libsystemd.vapi +new file mode 100644 +index 00000000..54bc3a68 +--- /dev/null ++++ b/vapi/libsystemd.vapi +@@ -0,0 +1,18 @@ ++[CCode (cheader_filename = "systemd/sd-daemon.h")] ++namespace Systemd.Daemon { ++ [CCode (cname="sd_notify")] ++ int notify([CCode (type="int")]bool unset_environment, string state); ++ ++ [CCode (cname="sd_notifyf")] ++ int notifyf([CCode (type="int")]bool unset_environment, string format, ...); ++ ++ [CCode (cname="sd_pid_notify")] ++ int pid_notify(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string state); ++ ++ [CCode (cname="sd_pid_notifyf")] ++ int pid_notifyf(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string format, ...); ++ ++ [CCode (cname="sd_pid_notify_with_fds")] ++ int pid_notify_with_fds(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string state, int[] fds); ++} ++ +diff --git a/vapi/meson.build b/vapi/meson.build +index 3773b0bc..a348b16b 100644 +--- a/vapi/meson.build ++++ b/vapi/meson.build +@@ -286,3 +286,72 @@ if mutter41_dep.found() + output: 'libmutter-9.vapi' + ) + endif ++if mutter42_dep.found() ++ cogl_target = custom_target('mutter-cogl-10', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'Cogl-10.gir', ++ '--library=mutter-cogl-10', ++ '--pkg=gobject-2.0', ++ '--pkg=cairo', ++ '--pkg=graphene-gobject-1.0', ++ vapigen_args, ++ files('Cogl-10-custom.vala') ++ ], ++ output: 'mutter-cogl-10.vapi' ++ ) ++ ++ cogl_pango_target = custom_target('mutter-cogl-pango-10', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'CoglPango-10.gir', ++ '--library=mutter-cogl-pango-10', ++ '--pkg=mutter-cogl-10', ++ '--pkg=pangocairo', ++ vapigen_args ++ ], ++ depends: cogl_target, ++ output: 'mutter-cogl-pango-10.vapi' ++ ) ++ ++ clutter_target = custom_target('mutter-clutter-10', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'Clutter-10.gir', ++ '--library=mutter-clutter-10', ++ '--pkg=graphene-gobject-1.0', ++ '--pkg=mutter-cogl-10', ++ '--pkg=mutter-cogl-pango-10', ++ '--pkg=atk', ++ '--pkg=gio-2.0', ++ '--pkg=json-glib-1.0', ++ '--pkg=pangocairo', ++ vapigen_args, ++ files('Clutter-10-custom.vala') ++ ], ++ depends: [ cogl_target, cogl_pango_target ], ++ output: 'mutter-clutter-10.vapi' ++ ) ++ ++ libmutter_target = custom_target('libmutter-10', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'Meta-10.gir', ++ '--library=libmutter-10', ++ '--pkg=graphene-gobject-1.0', ++ '--pkg=mutter-cogl-10', ++ '--pkg=mutter-cogl-pango-10', ++ '--pkg=mutter-clutter-10', ++ '--pkg=atk', ++ '--pkg=gio-2.0', ++ '--pkg=json-glib-1.0', ++ '--pkg=pangocairo', ++ '--pkg=gtk+-3.0', ++ '--pkg=x11', ++ '--pkg=xfixes-4.0', ++ vapigen_args ++ ], ++ depends: [ cogl_target, cogl_pango_target, clutter_target ], ++ output: 'libmutter-10.vapi' ++ ) ++endif +diff --git a/vapi/mutter-clutter-10.deps b/vapi/mutter-clutter-10.deps +new file mode 100644 +index 00000000..f4c6e420 +--- /dev/null ++++ b/vapi/mutter-clutter-10.deps +@@ -0,0 +1,6 @@ ++atk ++cairo ++pango ++json-glib-1.0 ++mutter-cogl-10 ++graphene-gobject-1.0 +diff --git a/vapi/mutter-clutter-10.vapi b/vapi/mutter-clutter-10.vapi +new file mode 120000 +index 00000000..8a0ba541 +--- /dev/null ++++ b/vapi/mutter-clutter-10.vapi +@@ -0,0 +1 @@ ++mutter-clutter-9.vapi +\ No newline at end of file +diff --git a/vapi/mutter-clutter-9.deps b/vapi/mutter-clutter-9.deps +index fffc4803..f4c6e420 100644 +--- a/vapi/mutter-clutter-9.deps ++++ b/vapi/mutter-clutter-9.deps +@@ -2,5 +2,5 @@ atk + cairo + pango + json-glib-1.0 +-mutter-cogl-9 ++mutter-cogl-10 + graphene-gobject-1.0 +diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi +index c54ca952..04307759 100644 +--- a/vapi/mutter-clutter.vapi ++++ b/vapi/mutter-clutter.vapi +@@ -3,7 +3,6 @@ + [CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "1.0", 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")] +@@ -4629,6 +4628,11 @@ namespace Clutter { + public abstract class Action : Clutter.ActorMeta { + [CCode (has_construct_function = false)] + protected Action (); ++#if HAS_MUTTER42 ++ public Clutter.EventPhase get_phase (); ++ [NoWrapper] ++ public virtual bool handle_event (Clutter.Event event); ++#endif + } + [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 { +@@ -4638,6 +4642,9 @@ namespace Clutter { + public Actor (); + [Version (since = "1.4")] + public void add_action (Clutter.Action action); ++#if HAS_MUTTER42 ++ public void add_action_full (string name, Clutter.EventPhase phase, Clutter.Action action); ++#endif + [Version (since = "1.4")] + public void add_action_with_name (string name, Clutter.Action action); + [Version (since = "1.10")] +@@ -4724,7 +4731,7 @@ namespace Clutter { + 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); ++ public unowned Clutter.Action? get_action (string name); + [Version (since = "1.4")] + public GLib.List get_actions (); + [Version (since = "0.8")] +@@ -4745,7 +4752,7 @@ namespace Clutter { + public static unowned Clutter.Actor get_by_gid (uint32 id_); + #endif + [Version (since = "1.10")] +- public unowned Clutter.Actor get_child_at_index (int index_); ++ public unowned Clutter.Actor? get_child_at_index (int index_); + [Version (since = "1.12")] + #if HAS_MUTTER40 + public Graphene.Matrix get_child_transform (); +@@ -4759,11 +4766,11 @@ namespace Clutter { + [Version (since = "1.4")] + public bool get_clip_to_allocation (); + [Version (since = "1.4")] +- public unowned Clutter.Constraint get_constraint (string name); ++ public unowned Clutter.Constraint? get_constraint (string name); + [Version (since = "1.4")] + public GLib.List get_constraints (); + [Version (since = "1.10")] +- public unowned Clutter.Content get_content (); ++ public unowned Clutter.Content? get_content (); + [Version (since = "1.10")] + public Clutter.ActorBox get_content_box (); + [Version (since = "1.10")] +@@ -4785,11 +4792,11 @@ namespace Clutter { + [Version (since = "1.10")] + public Clutter.AnimationMode get_easing_mode (); + [Version (since = "1.4")] +- public unowned Clutter.Effect get_effect (string name); ++ public unowned Clutter.Effect? get_effect (string name); + [Version (since = "1.4")] + public GLib.List get_effects (); + [Version (since = "1.10")] +- public unowned Clutter.Actor get_first_child (); ++ public unowned Clutter.Actor? get_first_child (); + #if HAS_MUTTER338 + public bool get_fixed_position (out float x, out float y); + #endif +@@ -4802,9 +4809,9 @@ namespace Clutter { + public bool get_has_pointer (); + public float get_height (); + [Version (since = "1.10")] +- public unowned Clutter.Actor get_last_child (); ++ public unowned Clutter.Actor? get_last_child (); + [Version (since = "1.10")] +- public unowned Clutter.LayoutManager get_layout_manager (); ++ public unowned Clutter.LayoutManager? get_layout_manager (); + [Version (since = "1.10")] + public Clutter.Margin get_margin (); + [Version (since = "1.10")] +@@ -4817,9 +4824,9 @@ namespace Clutter { + public float get_margin_top (); + [Version (since = "1.10")] + public int get_n_children (); +- public unowned string get_name (); ++ public unowned string? get_name (); + [Version (since = "1.10")] +- public unowned Clutter.Actor get_next_sibling (); ++ public unowned Clutter.Actor? get_next_sibling (); + [Version (since = "1.8")] + public Clutter.OffscreenRedirect get_offscreen_redirect (); + public uint8 get_opacity (); +@@ -4852,7 +4859,7 @@ namespace Clutter { + [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 (); ++ public unowned Clutter.Actor? get_previous_sibling (); + [Version (since = "0.6")] + public bool get_reactive (); + [Version (since = "1.2")] +@@ -4898,7 +4905,7 @@ namespace Clutter { + [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); ++ 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 (); +@@ -5083,7 +5090,7 @@ namespace Clutter { + public void set_margin_right (float margin); + [Version (since = "1.10")] + public void set_margin_top (float margin); +- public void set_name (string name); ++ public void set_name (string? name); + [Version (since = "1.8")] + public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect); + public void set_opacity (uint8 opacity); +@@ -5707,6 +5714,7 @@ namespace Clutter { + public bool get_homogeneous (); + [Version (since = "1.12")] + public Clutter.Orientation get_orientation (); ++ [Version (deprecated = true)] + public bool get_pack_start (); + public uint get_spacing (); + #if !HAS_MUTTER338 +@@ -5731,6 +5739,7 @@ namespace Clutter { + public void set_homogeneous (bool homogeneous); + [Version (since = "1.12")] + public void set_orientation (Clutter.Orientation orientation); ++ [Version (deprecated = true)] + public void set_pack_start (bool pack_start); + public void set_spacing (uint spacing); + #if !HAS_MUTTER338 +@@ -5747,6 +5756,7 @@ namespace Clutter { + public bool homogeneous { get; set; } + [Version (since = "1.12")] + public Clutter.Orientation orientation { get; set; } ++ [Version (deprecated = true)] + public bool pack_start { get; set; } + public uint spacing { get; set; } + #if !HAS_MUTTER338 +@@ -5778,7 +5788,9 @@ namespace Clutter { + public class ButtonEvent : Clutter.Event { + public double axes; + public uint32 button; ++#if !HAS_MUTTER42 + public uint click_count; ++#endif + public weak Clutter.InputDevice device; + #if HAS_MUTTER40 + public uint32 evdev_code; +@@ -5884,6 +5896,13 @@ namespace Clutter { + #endif + public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, ref float minimum_size, ref float natural_size); + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] ++ [Compact] ++ public class Context { ++ public unowned Clutter.Backend get_backend (); ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] + [Compact] + [Version (since = "0.2")] +@@ -6035,8 +6054,10 @@ namespace Clutter { + public double get_axes (out uint n_axes); + [Version (since = "1.0")] + public uint32 get_button (); ++#if !HAS_MUTTER42 + [Version (since = "1.0")] + public uint get_click_count (); ++#endif + [Version (since = "0.4")] + public void get_coords (out float x, out float y); + [Version (since = "1.0")] +@@ -6324,6 +6345,9 @@ namespace Clutter { + public class IMEvent : Clutter.Event { + public Clutter.EventFlags flags; + public uint32 len; ++#if HAS_MUTTER42 ++ public Clutter.PreeditResetMode mode; ++#endif + public int32 offset; + public weak Clutter.Actor source; + public weak Clutter.Stage stage; +@@ -6362,6 +6386,7 @@ namespace Clutter { + public class InputDevice : GLib.Object { + [CCode (has_construct_function = false)] + protected InputDevice (); ++#if !HAS_MUTTER42 + #if HAS_MUTTER338 + [Version (since = "1.2")] + public unowned Clutter.Actor get_actor (Clutter.EventSequence? sequence); +@@ -6383,6 +6408,7 @@ namespace Clutter { + public bool get_coords (Clutter.EventSequence? sequence, out Graphene.Point point); + [Version (since = "1.0")] + public int get_device_id (); ++#endif + #endif + [Version (since = "1.6")] + public Clutter.InputMode get_device_mode (); +@@ -6408,8 +6434,10 @@ namespace Clutter { + [Version (since = "1.16")] + public Clutter.ModifierType get_modifier_state (); + #endif ++#if !HAS_MUTTER42 + [Version (since = "1.6")] + public uint get_n_axes (); ++#endif + #if HAS_MUTTER40 + public int get_n_buttons (); + #else +@@ -6573,7 +6601,11 @@ namespace Clutter { + [NoWrapper] + public virtual void set_cursor_location (Graphene.Rect rect); + public void set_input_panel_state (Clutter.InputPanelState state); ++#if HAS_MUTTER42 ++ public void set_preedit_text (string? preedit, uint cursor, Clutter.PreeditResetMode mode); ++#else + public void set_preedit_text (string? preedit, uint cursor); ++#endif + [NoWrapper] + public virtual void set_surrounding (string text, uint cursor, uint anchor); + [NoWrapper] +@@ -6898,7 +6930,11 @@ namespace Clutter { + public double deceleration { get; set; } + public bool interpolate { get; set; } + public Clutter.PanAxis pan_axis { get; set; } ++#if HAS_MUTTER42 ++ public signal bool pan (Clutter.Actor actor, bool is_interpolated); ++#else + public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated); ++#endif + 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 ()")] +@@ -6958,6 +6994,9 @@ namespace Clutter { + public void destroy (); + #if HAS_MUTTER40 + public Graphene.Matrix get_transform (); ++#if HAS_MUTTER42 ++ public void log_overlap (Clutter.Actor actor); ++#endif + public void log_pick (Clutter.ActorBox box, Clutter.Actor actor); + public void pop_clip (); + public void pop_transform (); +@@ -7041,7 +7080,11 @@ namespace Clutter { + public class RotateAction : Clutter.GestureAction { + [CCode (has_construct_function = false, type = "ClutterAction*")] + public RotateAction (); ++#if HAS_MUTTER42 ++ public signal bool rotate (Clutter.Actor actor, double angle); ++#else + public virtual signal bool rotate (Clutter.Actor actor, double angle); ++#endif + } + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")] + [Version (since = "0.6")] +@@ -7163,8 +7206,10 @@ namespace Clutter { + public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings); + public void uninhibit_unfocus (); + public virtual void warp_pointer (int x, int y); ++#if !HAS_MUTTER42 + [NoAccessorMethod] + public Clutter.Backend backend { owned get; construct; } ++#endif + public bool touch_mode { get; } + public signal void device_added (Clutter.InputDevice object); + public signal void device_removed (Clutter.InputDevice object); +@@ -7320,8 +7365,10 @@ namespace Clutter { + public int64 get_frame_counter (); + [Version (since = "0.6")] + public unowned Clutter.Actor get_key_focus (); ++#if !HAS_MUTTER42 + [Version (since = "1.2")] + public void get_minimum_size (out uint width, out uint height); ++#endif + [Version (since = "1.8")] + public bool get_motion_events_enabled (); + public Clutter.Perspective get_perspective (); +@@ -7336,7 +7383,10 @@ namespace Clutter { + [Version (since = "1.2")] + public bool get_use_alpha (); + #if HAS_MUTTER338 +- public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] ref unowned uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; ++ public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; ++#if HAS_MUTTER42 ++ public Clutter.Content paint_to_content (Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags) throws GLib.Error; ++#endif + public void paint_to_framebuffer (Cogl.Framebuffer framebuffer, Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags); + #else + [Version (since = "0.4")] +@@ -7375,7 +7425,9 @@ namespace Clutter { + public void set_title (string title); + [Version (since = "1.2")] + public void set_use_alpha (bool use_alpha); +-#if HAS_MUTTER40 ++#if HAS_MUTTER42 ++ public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, Cairo.Region region, bool emit_crossing); ++#elif HAS_MUTTER40 + public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, bool emit_crossing); + #endif + #if !HAS_MUTTER338 +@@ -7512,8 +7564,6 @@ namespace Clutter { + #endif + [NoAccessorMethod] + public int64 vblank_duration_us { get; construct; } +-#if HAS_MUTTER41 +-#endif + } + #if !HAS_MUTTER338 + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")] +@@ -7561,7 +7611,11 @@ namespace Clutter { + [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")] ++#if HAS_MUTTER42 ++ public signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction); ++#else + public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction); ++#endif + } + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")] + [Version (since = "1.14")] +@@ -7901,6 +7955,21 @@ namespace Clutter { + public float x; + public float y; + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] ++ [Compact] ++ public class TouchpadHoldEvent : Clutter.Event { ++ public Clutter.EventFlags flags; ++ public uint32 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; ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] + [Compact] + [Version (since = "1.24")] +@@ -8016,10 +8085,14 @@ namespace Clutter { + public ZoomAction (); + public Graphene.Point get_focal_point (); + public Graphene.Point get_transformed_focal_point (); ++#if HAS_MUTTER42 ++ public signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor); ++#else + 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); ++#endif + } + [CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")] + public interface Animatable : GLib.Object { +@@ -8064,23 +8137,29 @@ namespace Clutter { + 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); ++#if !HAS_MUTTER42 + [Version (deprecated = true, deprecated_since = "1.10", since = "0.4")] + public GLib.List get_children (); ++#endif + [CCode (cname = "clutter_container_class_list_child_properties")] + public class unowned GLib.ParamSpec[] list_child_properties (); ++#if !HAS_MUTTER42 + [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); ++#endif + [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); ++#if !HAS_MUTTER42 + [Version (deprecated = true, deprecated_since = "1.10", since = "0.6")] + public abstract void sort_depth_order (); ++#endif + public virtual signal void actor_added (Clutter.Actor actor); + public virtual signal void actor_removed (Clutter.Actor actor); + [HasEmitter] +@@ -8162,8 +8241,8 @@ namespace Clutter { + 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 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_copy_function = false, has_destroy_function = false, has_type_id = false)] +@@ -8187,16 +8266,40 @@ namespace Clutter { + public bool equal (Clutter.Color v2); + [Version (since = "0.2")] + public void free (); +- public void from_hls (float hue, float luminance, float saturation); +- public void from_pixel (uint32 pixel); +- [Version (since = "1.0")] +- public bool from_string (string str); ++ [CCode (cname = "_vala_clutter_color_from_hls")] ++ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { ++ Clutter.Color? color = Clutter.Color.alloc (); ++ color.init_from_hls (hue, luminance, saturation); ++ return color; ++ } ++ [CCode (cname = "_vala_clutter_color_from_pixel")] ++ public static Clutter.Color? from_pixel (uint32 pixel) { ++ Clutter.Color? color = Clutter.Color.alloc (); ++ color.init_from_pixel (pixel); ++ return color; ++ } ++ [CCode (cname = "clutter_color_new")] ++ [Version (since = "0.8")] ++ public static Clutter.Color? from_rgba (uint8 red = 0, uint8 green = 0, uint8 blue = 0, uint8 alpha = 0); ++ [CCode (cname = "_vala_clutter_color_from_string")] ++ public static Clutter.Color? from_string (string str) { ++ Clutter.Color? color = Clutter.Color.alloc (); ++ color.init_from_string (str); ++ return color; ++ } + [Version (since = "1.6")] + 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); ++ public unowned Clutter.Color? init (uint8 red = 0, uint8 green = 0, uint8 blue = 0, uint8 alpha = 0); ++ [CCode (cname = "clutter_color_from_hls")] ++ public void init_from_hls (float hue, float luminance, float saturation); ++ [CCode (cname = "clutter_color_from_pixel")] ++ public void init_from_pixel (uint32 pixel); ++ [CCode (cname = "clutter_color_from_string")] ++ [Version (since = "1.0")] ++ public bool init_from_string (string str); + [Version (since = "1.6")] + public Clutter.Color interpolate (Clutter.Color final, double progress); + public Clutter.Color lighten (); +@@ -8549,6 +8652,13 @@ namespace Clutter { + #endif + FLAG_REPEATED + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PHASE_", type_id = "clutter_event_phase_get_type ()")] ++ public enum EventPhase { ++ CAPTURE, ++ BUBBLE ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")] + [Version (since = "0.4")] + public enum EventType { +@@ -8575,6 +8685,9 @@ namespace Clutter { + TOUCH_CANCEL, + TOUCHPAD_PINCH, + TOUCHPAD_SWIPE, ++#if HAS_MUTTER42 ++ TOUCHPAD_HOLD, ++#endif + PROXIMITY_IN, + PROXIMITY_OUT, + PAD_BUTTON_PRESS, +@@ -8597,12 +8710,14 @@ namespace Clutter { + #if !HAS_MUTTER338 + SWAP_THROTTLE, + #endif ++#if !HAS_MUTTER42 + STAGE_STATIC, + STAGE_CURSOR, +- SHADERS_GLSL, + OFFSCREEN, + STAGE_MULTIPLE, +- SWAP_EVENTS ++ SWAP_EVENTS, ++#endif ++ SHADERS_GLSL + } + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")] + [Version (since = "1.2")] +@@ -8654,6 +8769,7 @@ namespace Clutter { + TOP, + BOTTOM + } ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")] + [Version (since = "0.2")] + public enum InitError { +@@ -8664,6 +8780,7 @@ namespace Clutter { + ERROR_INTERNAL; + public static GLib.Quark quark (); + } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")] + [Version (since = "1.6")] + public enum InputAxis { +@@ -8956,6 +9073,13 @@ namespace Clutter { + DWELL, + GESTURE + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PREEDIT_RESET_", type_id = "clutter_preedit_reset_mode_get_type ()")] ++ public enum PreeditResetMode { ++ CLEAR, ++ COMMIT ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")] + [Flags] + [Version (since = "1.10")] +@@ -9167,6 +9291,7 @@ namespace Clutter { + POINTER, + TOUCHSCREEN + } ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")] + [Version (since = "1.12")] + public enum ZoomAxis { +@@ -9174,6 +9299,7 @@ namespace Clutter { + Y_AXIS, + BOTH + } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")] + [Version (since = "1.10")] + public errordomain ImageError { +@@ -9285,17 +9411,21 @@ namespace Clutter { + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "1.0")] + public static unowned Pango.FontMap get_font_map (); ++#if !HAS_MUTTER42 + [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 (); ++#endif + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "0.6")] + public static unowned string get_script_id (GLib.Object gobject); ++#if !HAS_MUTTER42 + [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); ++#endif + #if !HAS_MUTTER41 + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "0.2")] +diff --git a/vapi/mutter-cogl-10.deps b/vapi/mutter-cogl-10.deps +new file mode 120000 +index 00000000..ea52a856 +--- /dev/null ++++ b/vapi/mutter-cogl-10.deps +@@ -0,0 +1 @@ ++mutter-cogl-9.deps +\ No newline at end of file +diff --git a/vapi/mutter-cogl-10.vapi b/vapi/mutter-cogl-10.vapi +new file mode 120000 +index 00000000..698673de +--- /dev/null ++++ b/vapi/mutter-cogl-10.vapi +@@ -0,0 +1 @@ ++mutter-cogl-9.vapi +\ No newline at end of file +diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi +index b55bd648..526bb415 100644 +--- a/vapi/mutter-cogl-6.vapi ++++ b/vapi/mutter-cogl-6.vapi +@@ -27,6 +27,10 @@ namespace Cogl { + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_foreach_feature")] + [Version (since = "1.10")] + public void foreach_feature (Cogl.FeatureCallback callback); ++#if HAS_MUTTER42 ++ public void free_timestamp_query (owned Cogl.TimestampQuery query); ++ public int64 get_gpu_time_ns (); ++#endif + #if !HAS_MUTTER40 + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_get_clock_time")] + [Version (since = "1.14")] +@@ -45,6 +49,9 @@ namespace Cogl { + #endif + #if HAS_MUTTER40 + public void set_named_pipeline (Cogl.PipelineKey key, Cogl.Pipeline? pipeline); ++#endif ++#if HAS_MUTTER42 ++ public int64 timestamp_query_get_time_ns (Cogl.TimestampQuery query); + #endif + } + [CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")] +@@ -69,8 +76,14 @@ namespace Cogl { + #endif + [Version (since = "1.14")] + public float get_refresh_rate (); ++#if HAS_MUTTER42 ++ public int64 get_rendering_duration_ns (); ++#endif + #if HAS_MUTTER40 + public uint get_sequence (); ++#if HAS_MUTTER42 ++ public int64 get_time_before_buffer_swap_us (); ++#endif + public bool is_hw_clock (); + public bool is_vsync (); + public bool is_zero_copy (); +@@ -224,6 +237,7 @@ namespace Cogl { + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_texture")] + public bool is_texture (); + } ++#if !HAS_MUTTER42 + [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 : Cogl.Handle { +@@ -265,6 +279,7 @@ namespace Cogl { + [Compact] + public class MaterialLayer : Cogl.Handle { + } ++#endif + [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")] + public abstract class Object { + [CCode (has_construct_function = false)] +@@ -353,6 +368,9 @@ namespace Cogl { + #endif + [Version (since = "2.0")] + public void hide (); ++#if HAS_MUTTER42 ++ public virtual void queue_damage_region (int rectangles, int n_rectangles); ++#endif + [Version (since = "1.16")] + public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure); + [Version (since = "1.14")] +@@ -620,6 +638,12 @@ namespace Cogl { + [Version (since = "1.16")] + public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste); + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Compact] ++ public class TimestampQuery { ++ } ++#endif + #if HAS_MUTTER338 + [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] + [Compact] +@@ -751,13 +775,13 @@ namespace Cogl { + public interface Texture : Cogl.Object { + public bool allocate () throws GLib.Error; + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_bitmap")] +- [Version (deprecated = true, deprecated_since = "1.18", since = "1.0")] ++ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_bitmap", since = "1.0")] + public static Cogl.Texture from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format); + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_data")] +- [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] ++ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_data", since = "0.8")] + public static Cogl.Texture from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] uint8[] data); + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_file")] +- [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] ++ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_file", since = "0.8")] + public static Cogl.Texture from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error; + [Version (since = "1.18")] + public Cogl.TextureComponents get_components (); +@@ -775,10 +799,12 @@ namespace Cogl { + public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] 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; ++#if !HAS_MUTTER42 + [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); ++#endif + [Version (since = "1.18")] + public void set_components (Cogl.TextureComponents components); + public bool set_data (Cogl.PixelFormat format, int rowstride, [CCode (array_length = false)] uint8[] data, int level) throws GLib.Error; +@@ -787,9 +813,11 @@ namespace Cogl { + 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, [CCode (array_length = false)] 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); ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_with_size")] + [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] + public static Cogl.Texture with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format); ++#endif + } + [CCode (cheader_filename = "cogl/cogl.h")] + [SimpleType] +@@ -828,6 +856,14 @@ namespace Cogl { + 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); ++ [Version (since = "1.16")] ++ public void init_from_hsl (float hue, float saturation, float luminance); + public void premultiply (); + [Version (since = "1.4")] + public void set_alpha (float alpha); +@@ -945,6 +981,9 @@ namespace Cogl { + public struct TraceHead { + public uint64 begin_time; + public weak string name; ++#if HAS_MUTTER42 ++ public weak string description; ++#endif + } + #endif + [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] +@@ -1093,6 +1132,12 @@ namespace Cogl { + #if HAS_MUTTER338 + [CCode (cname = "COGL_FEATURE_ID_BLIT_FRAMEBUFFER")] + OGL_FEATURE_ID_BLIT_FRAMEBUFFER, ++#endif ++#if HAS_MUTTER42 ++ [CCode (cname = "COGL_FEATURE_ID_TIMESTAMP_QUERY")] ++ OGL_FEATURE_ID_TIMESTAMP_QUERY, ++ [CCode (cname = "COGL_FEATURE_ID_GET_GPU_TIME")] ++ OGL_FEATURE_ID_GET_GPU_TIME, + #endif + [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] + OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL +@@ -1122,6 +1167,7 @@ namespace Cogl { + SHORT, + INT + } ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)] + public enum MaterialAlphaFunc { + NEVER, +@@ -1149,6 +1195,7 @@ namespace Cogl { + CLAMP_TO_EDGE, + AUTOMATIC + } ++#endif + [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)] + public enum PipelineAlphaFunc { + NEVER, +@@ -1204,12 +1251,24 @@ namespace Cogl { + ABGR_8888, + RGBA_1010102, + BGRA_1010102, ++#if HAS_MUTTER42 ++ XRGB_2101010, ++#endif + ARGB_2101010, ++#if HAS_MUTTER42 ++ XBGR_2101010, ++#endif + ABGR_2101010, + #if HAS_MUTTER338 + RGBA_FP_16161616, + BGRA_FP_16161616, ++#if HAS_MUTTER42 ++ XRGB_FP_16161616, ++#endif + ARGB_FP_16161616, ++#if HAS_MUTTER42 ++ XBGR_FP_16161616, ++#endif + ABGR_FP_16161616, + #endif + RGBA_8888_PRE, +@@ -1293,7 +1352,9 @@ namespace Cogl { + } + [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)] + public enum WinsysFeature { ++#if !HAS_MUTTER42 + MULTIPLE_ONSCREEN, ++#endif + #if !HAS_MUTTER338 + SWAP_THROTTLE, + #endif +@@ -1420,12 +1481,14 @@ namespace Cogl { + [CCode (cheader_filename = "cogl/cogl.h")] + [Version (since = "1.0")] + public static void flush (); ++#if !HAS_MUTTER42 + [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 (deprecated = true, deprecated_since = "1.16")] + public static bool get_depth_test_enabled (); ++#endif + [CCode (cheader_filename = "cogl/cogl.h")] + [Version (deprecated = true, deprecated_since = "1.16", since = "1.0")] + public static GLib.OptionGroup get_option_group (); +@@ -1434,23 +1497,31 @@ namespace Cogl { + [Version (deprecated = true, deprecated_since = "1.18")] + public static GLib.Type gtype_matrix_get_type (); + #endif ++#if !HAS_MUTTER42 + [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); ++#endif + [CCode (cheader_filename = "cogl/cogl.h")] + public static void set_tracing_disabled_on_thread (GLib.MainContext main_context); + [CCode (cheader_filename = "cogl/cogl.h")] + public static void set_tracing_enabled_on_thread (GLib.MainContext main_context, string group, string filename); + [CCode (cheader_filename = "cogl/cogl.h")] + public static void set_tracing_enabled_on_thread_with_fd (GLib.MainContext main_context, string group, int fd); ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "cogl/cogl.h")] ++ public static void trace_describe (Cogl.TraceHead head, string description); ++#endif + #if HAS_MUTTER338 + [CCode (cheader_filename = "cogl/cogl.h")] + public static void trace_end (Cogl.TraceHead head); + #endif ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "cogl/cogl.h")] + [Version (since = "1.10")] + public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen); ++#endif + } +diff --git a/vapi/mutter-cogl-pango-10.vapi b/vapi/mutter-cogl-pango-10.vapi +new file mode 120000 +index 00000000..5362ecec +--- /dev/null ++++ b/vapi/mutter-cogl-pango-10.vapi +@@ -0,0 +1 @@ ++mutter-cogl-pango-9.vapi +\ No newline at end of file +diff --git a/wingpanel-interface/meson.build b/wingpanel-interface/meson.build +index 667a15cf..c0b645e3 100644 +--- a/wingpanel-interface/meson.build ++++ b/wingpanel-interface/meson.build +@@ -46,6 +46,17 @@ if mutter41_dep.found() + vala_flags = ['--define', 'HAS_MUTTER338', '--define', 'HAS_MUTTER40', '--define', 'HAS_MUTTER41'] + endif + ++mutter42_dep = dependency('libmutter-10', version: ['>= 42', '< 43'], required: false) ++if mutter42_dep.found() ++ libmutter_dep = dependency('libmutter-10', version: '>= 42') ++ mutter_dep = [ ++ libmutter_dep, ++ dependency('mutter-cogl-10'), dependency('mutter-cogl-pango-10'), ++ dependency('mutter-clutter-10') ++ ] ++ vala_flags = ['--define', 'HAS_MUTTER338', '--define', 'HAS_MUTTER40', '--define', 'HAS_MUTTER41', '--define', 'HAS_MUTTER42'] ++endif ++ + if mutter_dep.length() == 0 + error ('No supported mutter library found!') + endif diff --git a/wingpanel.spec b/wingpanel.spec index 07045c8..36153aa 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -13,6 +13,9 @@ License: GPLv2+ URL: https://github.com/elementary/wingpanel Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz +# pending PR for mutter 42 / libmutter-10 support +Patch0: %{url}/pull/434.patch + BuildRequires: desktop-file-utils BuildRequires: gettext BuildRequires: libappstream-glib @@ -27,9 +30,9 @@ BuildRequires: pkgconfig(gee-0.8) BuildRequires: pkgconfig(glib-2.0) >= 2.32 BuildRequires: pkgconfig(granite) >= 5.4.0 BuildRequires: pkgconfig(gtk+-3.0) >= 3.10 -BuildRequires: pkgconfig(mutter-clutter-9) -BuildRequires: pkgconfig(mutter-cogl-9) -BuildRequires: pkgconfig(mutter-cogl-pango-9) +BuildRequires: pkgconfig(mutter-clutter-10) +BuildRequires: pkgconfig(mutter-cogl-10) +BuildRequires: pkgconfig(mutter-cogl-pango-10) Requires: %{name}-libs%{?_isa} = %{version}-%{release} From 1ede5e966a7b19463193a16eadb1ea26080c144e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jan 2022 04:30:03 +0000 Subject: [PATCH 26/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 20f0a6f751c658a85a773fd6ec7611ef2c29c104 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Wed, 13 Jul 2022 14:36:32 +0200 Subject: [PATCH 27/44] Include upstream PR to support latest mutter / gala changes --- 453.patch | 582 +++++++++++++++++++++++++++++++++++++++++++++++++ wingpanel.spec | 4 +- 2 files changed, 585 insertions(+), 1 deletion(-) create mode 100644 453.patch diff --git a/453.patch b/453.patch new file mode 100644 index 0000000..ea50df0 --- /dev/null +++ b/453.patch @@ -0,0 +1,582 @@ +From 9a64bfe0d8844483d7ba8e412d8766f4bff8905a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Corentin=20No=C3=ABl?= +Date: Tue, 26 Apr 2022 09:41:35 +0200 +Subject: [PATCH] Synchronize the .vapi with Gala + +--- + vapi/Clutter-10.metadata | 1 - + vapi/Meta-10.metadata | 10 +++++- + vapi/libmutter.vapi | 66 +++++++++++++++++++++++++----------- + vapi/mutter-clutter.vapi | 72 ++++++++++++++++++++++++++++++++++++++-- + vapi/mutter-cogl-6.vapi | 26 +++++++-------- + 5 files changed, 136 insertions(+), 39 deletions(-) + +diff --git a/vapi/Clutter-10.metadata b/vapi/Clutter-10.metadata +index 5b69ae58..516fc6fb 100644 +--- a/vapi/Clutter-10.metadata ++++ b/vapi/Clutter-10.metadata +@@ -123,7 +123,6 @@ FrameClock.new skip + StageView.layout skip + + Stage +- .event name="emit_event" + .paint_view.redraw_clip type="Cairo.Region" + + Capture +diff --git a/vapi/Meta-10.metadata b/vapi/Meta-10.metadata +index eaefc051..e4438413 100644 +--- a/vapi/Meta-10.metadata ++++ b/vapi/Meta-10.metadata +@@ -65,10 +65,10 @@ KeyHandlerFunc cheader_filename="meta/prefs.h" + KeyHandlerFunc.event type="Clutter.KeyEvent?" + KeyHandlerFunc.window nullable + LaunchContext cheader_filename="meta/meta-launch-context.h" ++Laters cheader_filename="meta/types.h" + LaterType cheader_filename="meta/util.h" + LocaleDirection cheader_filename="meta/util.h" + MaximizeFlags cheader_filename="meta/window.h" +-ModalOptions cheader_filename="meta/meta-plugin.h" + MonitorManager cheader_filename="meta/meta-monitor-manager.h" + MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" + MotionDirection cheader_filename="meta/common.h" +@@ -123,6 +123,9 @@ WindowShape cheader_filename="meta/meta-window-shape.h" + WindowType cheader_filename="meta/window.h" + X11Display cheader_filename="meta/meta-x11-display.h" + ++// As per https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2287 ++MonitorManager.monitor_privacy_screen_changed skip ++ + rect skip + prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h" + +@@ -145,6 +148,11 @@ PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h" + VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h" + VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h" + ++Display.window_visibility_updated ++ .object name="unplaced" type="GLib.List" ++ .p0 name="should_show" type="GLib.List" ++ .p1 name="should_hide" type="GLib.List" ++ + add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" + bug parent="Meta.Util" cheader_filename="meta/util.h" + external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h" +diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi +index 5dacb629..5edcddb1 100644 +--- a/vapi/libmutter.vapi ++++ b/vapi/libmutter.vapi +@@ -316,6 +316,9 @@ namespace Meta { + public void destroy (); + public bool filter_keybinding (Meta.KeyBinding binding); + public void flash_display (Meta.Display display); ++#if HAS_MUTTER42 ++ public unowned Meta.Laters get_laters (); ++#endif + public void hide_tile_preview (); + public void hide_window (Meta.Window window, Meta.CompEffect effect); + public void manage (); +@@ -354,6 +357,10 @@ namespace Meta { + public unowned Meta.Display get_display (); + public bool is_replacing (); + public void notify_ready (); ++#if HAS_MUTTER42 ++ public bool raise_rlimit_nofile () throws GLib.Error; ++ public bool restore_rlimit_nofile () throws GLib.Error; ++#endif + public bool run_main_loop () throws GLib.Error; + public void set_gnome_wm_keybindings (string wm_keybindings); + public void set_plugin_gtype (GLib.Type plugin_gtype); +@@ -376,7 +383,7 @@ namespace Meta { + protected CursorTracker (); + public void get_hot (out int x, out int y); + #if HAS_MUTTER40 +- public void get_pointer (Graphene.Point coords, out Clutter.ModifierType mods); ++ public void get_pointer (out Graphene.Point coords, out Clutter.ModifierType mods); + #else + public void get_pointer (out int x, out int y, out Clutter.ModifierType mods); + #endif +@@ -511,6 +518,9 @@ namespace Meta { + 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); ++#if HAS_MUTTER42 ++ public signal void window_visibility_updated ([CCode (type = "gpointer")] GLib.List unplaced, [CCode (type = "gpointer")] GLib.List should_show, [CCode (type = "gpointer")] GLib.List should_hide); ++#endif + public signal void workareas_changed (); + public signal void x11_display_closing (); + public signal void x11_display_opened (); +@@ -562,6 +572,14 @@ namespace Meta { + [CCode (cheader_filename = "meta/keybindings.h", cname = "meta_keybindings_set_custom_handler")] + public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler); + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "meta/types.h", has_type_id = false)] ++ [Compact] ++ public class Laters { ++ public uint add (Meta.LaterType when, owned GLib.SourceFunc func); ++ public void remove (uint later_id); ++ } ++#endif + [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)] +@@ -607,7 +625,9 @@ namespace Meta { + public abstract class Plugin : GLib.Object { + [CCode (has_construct_function = false)] + protected Plugin (); ++#if !HAS_MUTTER42 + public bool begin_modal (Meta.ModalOptions options, uint32 timestamp); ++#endif + public void complete_display_change (bool ok); + [NoWrapper] + public virtual void confirm_display_change (); +@@ -618,7 +638,9 @@ namespace Meta { + [NoWrapper] + public virtual void destroy (Meta.WindowActor actor); + public void destroy_completed (Meta.WindowActor actor); ++#if !HAS_MUTTER42 + public void end_modal (uint32 timestamp); ++#endif + public unowned Meta.Display get_display (); + public unowned Meta.PluginInfo? get_info (); + [NoWrapper] +@@ -767,19 +789,19 @@ namespace Meta { + public unowned GLib.SList get_sequences (); + [NoAccessorMethod] + public Meta.Display display { owned get; construct; } +- public signal void changed ([CCode (type = "gpointer")] Meta.StartupSequence object); ++ public signal void changed (Meta.StartupSequence object); + } + [CCode (cheader_filename = "meta/meta-startup-notification.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 unowned string? get_application_id (); + public bool get_completed (); +- public unowned string get_icon_name (); ++ 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 unowned string? get_wmclass (); + public int get_workspace (); + public string application_id { get; construct; } + public string icon_name { get; construct; } +@@ -840,7 +862,7 @@ namespace Meta { + 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 unowned string? get_client_machine (); + public Meta.WindowClientType get_client_type (); + public unowned GLib.Object get_compositor_private (); + public unowned string get_description (); +@@ -849,32 +871,32 @@ namespace Meta { + public unowned Cairo.Region? get_frame_bounds (); + public Meta.Rectangle get_frame_rect (); + public Meta.FrameType get_frame_type (); +- public unowned Meta.Group get_group (); +- 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 unowned Meta.Group? get_group (); ++ 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 unowned string? get_mutter_hints (); + public int get_pid (); + public unowned string get_role (); +- public unowned string get_sandboxed_app_id (); ++ public unowned string? get_sandboxed_app_id (); + public uint get_stable_sequence (); +- public unowned string get_startup_id (); ++ 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 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 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); +@@ -1394,7 +1416,9 @@ namespace Meta { + public enum GrabOp { + NONE, + WINDOW_BASE, ++#if !HAS_MUTTER42 + COMPOSITOR, ++#endif + WAYLAND_POPUP, + FRAME_BUTTON, + MOVING, +@@ -1568,12 +1592,14 @@ namespace Meta { + VERTICAL, + BOTH + } ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "meta/meta-plugin.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")] + [Flags] + public enum ModalOptions { + POINTER_ALREADY_GRABBED, + KEYBOARD_ALREADY_GRABBED + } ++#endif + [CCode (cheader_filename = "meta/meta-monitor-manager.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")] + public enum MonitorSwitchConfigType { + ALL_MIRROR, +diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi +index 04307759..c2a63a09 100644 +--- a/vapi/mutter-clutter.vapi ++++ b/vapi/mutter-clutter.vapi +@@ -6312,6 +6312,16 @@ namespace Clutter { + public virtual signal void gesture_end (Clutter.Actor actor); + public virtual signal bool gesture_progress (Clutter.Actor actor); + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_grab_ref", type_id = "clutter_grab_get_type ()", unref_function = "clutter_grab_unref")] ++ [Compact] ++ public class Grab { ++ public void dismiss (); ++ public Clutter.GrabState get_seat_state (); ++ public unowned Clutter.Grab @ref (); ++ public void unref (); ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")] + [Version (since = "1.12")] + public class GridLayout : Clutter.LayoutManager { +@@ -6421,8 +6431,10 @@ namespace Clutter { + [Version (since = "1.6")] + public bool get_enabled (); + #endif ++#if !HAS_MUTTER42 + [Version (since = "1.10")] + public unowned Clutter.Actor get_grabbed_actor (); ++#endif + public virtual int get_group_n_modes (int group); + [Version (since = "1.6")] + public bool get_has_cursor (); +@@ -6430,7 +6442,9 @@ namespace Clutter { + [Version (since = "1.6")] + public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers); + public Clutter.InputDeviceMapping get_mapping_mode (); ++#endif + public int get_mode_switch_button_group (uint button); ++#if !HAS_MUTTER40 + [Version (since = "1.16")] + public Clutter.ModifierType get_modifier_state (); + #endif +@@ -6479,12 +6493,14 @@ namespace Clutter { + [Version (since = "1.10")] + public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode); + #endif ++#if !HAS_MUTTER42 + [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); ++#endif + #if !HAS_MUTTER40 + [Version (since = "1.6")] + public void set_enabled (bool enabled); +@@ -6492,8 +6508,10 @@ namespace Clutter { + public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers); + public void set_mapping_mode (Clutter.InputDeviceMapping mapping); + #endif ++#if !HAS_MUTTER42 + [Version (since = "1.10")] + public void ungrab (); ++#endif + #if !HAS_MUTTER40 + [Version (since = "1.2")] + public void update_from_event (Clutter.Event event, bool update_stage); +@@ -7185,6 +7203,10 @@ namespace Clutter { + public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types (); + #endif + public bool get_touch_mode (); ++#if HAS_MUTTER42 ++ [NoWrapper] ++ public virtual Clutter.GrabState grab (uint32 time); ++#endif + #if HAS_MUTTER40 + public virtual bool handle_event_post (Clutter.Event event); + #elif HAS_MUTTER338 +@@ -7204,6 +7226,10 @@ namespace Clutter { + #endif + public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type); + public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings); ++#if HAS_MUTTER42 ++ [NoWrapper] ++ public virtual void ungrab (uint32 time); ++#endif + public void uninhibit_unfocus (); + public virtual void warp_pointer (int x, int y); + #if !HAS_MUTTER42 +@@ -7327,7 +7353,9 @@ namespace Clutter { + public bool capture (bool paint, Cairo.RectangleInt rect, [CCode (array_length_cname = "out_n_captures", array_length_pos = 3.1)] out Clutter.Capture[] out_captures); + #endif + #if HAS_MUTTER40 ++#if !HAS_MUTTER42 + public void capture_into (Cairo.RectangleInt rect, float scale, uint8 data, int stride); ++#endif + public void capture_view_into (Clutter.StageView view, Cairo.RectangleInt rect, uint8 data, int stride); + #else + public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data); +@@ -7365,12 +7393,15 @@ namespace Clutter { + public int64 get_frame_counter (); + [Version (since = "0.6")] + public unowned Clutter.Actor get_key_focus (); ++#if HAS_MUTTER42 ++ public unowned Clutter.Actor get_grab_actor (); ++#endif + #if !HAS_MUTTER42 + [Version (since = "1.2")] + public void get_minimum_size (out uint width, out uint height); +-#endif + [Version (since = "1.8")] + public bool get_motion_events_enabled (); ++#endif + public Clutter.Perspective get_perspective (); + #if !HAS_MUTTER338 + [Version (since = "1.8")] +@@ -7380,8 +7411,13 @@ namespace Clutter { + public bool get_throttle_motion_events (); + [Version (since = "0.4")] + public unowned string get_title (); ++#if HAS_MUTTER42 ++ public Clutter.Grab grab (Clutter.Actor actor); ++#endif ++#if !HAS_MUTTER42 + [Version (since = "1.2")] + public bool get_use_alpha (); ++#endif + #if HAS_MUTTER338 + public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; + #if HAS_MUTTER42 +@@ -7414,8 +7450,10 @@ namespace Clutter { + public void set_key_focus (Clutter.Actor? actor); + [Version (since = "1.2")] + public void set_minimum_size (uint width, uint height); ++#if !HAS_MUTTER42 + [Version (since = "1.8")] + public void set_motion_events_enabled (bool enabled); ++#endif + #if !HAS_MUTTER338 + public void set_perspective (Clutter.Perspective perspective); + #endif +@@ -7423,8 +7461,10 @@ namespace Clutter { + public void set_throttle_motion_events (bool throttle); + [Version (since = "0.4")] + public void set_title (string title); ++#if !HAS_MUTTER42 + [Version (since = "1.2")] + public void set_use_alpha (bool use_alpha); ++#endif + #if HAS_MUTTER42 + public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, Cairo.Region region, bool emit_crossing); + #elif HAS_MUTTER40 +@@ -8064,6 +8104,9 @@ namespace Clutter { + [CCode (has_construct_function = false)] + protected VirtualInputDevice (); + public int get_device_type (); ++#if HAS_MUTTER42 ++ public unowned Clutter.Seat get_seat (); ++#endif + 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); +@@ -8075,8 +8118,12 @@ namespace Clutter { + 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; } ++#if HAS_MUTTER42 ++ public Clutter.Seat seat { get; construct; } ++#else + [NoAccessorMethod] + public Clutter.Seat seat { owned get; construct; } ++#endif + } + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")] + [Version (since = "1.12")] +@@ -8649,6 +8696,9 @@ namespace Clutter { + FLAG_INPUT_METHOD, + #if HAS_MUTTER40 + FLAG_RELATIVE_MOTION, ++#endif ++#if HAS_MUTTER42 ++ FLAG_GRAB_NOTIFY, + #endif + FLAG_REPEATED + } +@@ -8747,6 +8797,16 @@ namespace Clutter { + AFTER, + BEFORE + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAB_STATE_", type_id = "clutter_grab_state_get_type ()")] ++ [Flags] ++ public enum GrabState { ++ NONE, ++ POINTER, ++ KEYBOARD, ++ ALL ++ } ++#endif + [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 { +@@ -9300,13 +9360,13 @@ namespace Clutter { + BOTH + } + #endif +- [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")] ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_", type_id = "clutter_image_error_get_type ()")] + [Version (since = "1.10")] + public errordomain ImageError { + DATA; + public static GLib.Quark quark (); + } +- [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")] ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_", type_id = "clutter_script_error_get_type ()")] + [Version (since = "0.6")] + public errordomain ScriptError { + TYPE_FUNCTION, +@@ -9360,8 +9420,10 @@ namespace Clutter { + [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")] + [Version (since = "0.8")] + public const int PRIORITY_REDRAW; ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "clutter/clutter.h")] + public static void base_init (); ++#endif + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "1.12")] + public static void cairo_clear (Cairo.Context cr); +@@ -9402,9 +9464,11 @@ namespace Clutter { + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "0.4")] + public static unowned Clutter.Backend get_default_backend (); ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "0.6")] + public static uint get_default_frame_rate (); ++#endif + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "1.2")] + public static Clutter.TextDirection get_default_text_direction (); +@@ -9441,8 +9505,10 @@ namespace Clutter { + [CCode (cheader_filename = "clutter/clutter.h")] + public static void main_quit (); + #endif ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "clutter/clutter.h")] + public static void set_custom_backend_func (void* func); ++#endif + [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.vapi b/vapi/mutter-cogl-6.vapi +index 526bb415..89a1169e 100644 +--- a/vapi/mutter-cogl-6.vapi ++++ b/vapi/mutter-cogl-6.vapi +@@ -1136,8 +1136,6 @@ namespace Cogl { + #if HAS_MUTTER42 + [CCode (cname = "COGL_FEATURE_ID_TIMESTAMP_QUERY")] + OGL_FEATURE_ID_TIMESTAMP_QUERY, +- [CCode (cname = "COGL_FEATURE_ID_GET_GPU_TIME")] +- OGL_FEATURE_ID_GET_GPU_TIME, + #endif + [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] + OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL +@@ -1369,7 +1367,7 @@ namespace Cogl { + SYNC_AND_COMPLETE_EVENT, + N_FEATURES + } +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)] + [Version (since = "1.4")] + public errordomain BitmapError { + FAILED, +@@ -1377,7 +1375,7 @@ namespace Cogl { + CORRUPT_IMAGE; + public static uint32 quark (); + } +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)] + [Version (since = "1.0")] + public errordomain BlendStringError { + PARSE_ERROR, +@@ -1387,13 +1385,18 @@ namespace Cogl { + [CCode (cheader_filename = "cogl/cogl.h")] + public static uint32 quark (); + } +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)] + public errordomain FramebufferError { + [CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")] + FRAMEBUFFER_ERROR_ALLOCATE + } ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)] ++ public errordomain RendererError { ++ XLIB_DISPLAY_OPEN, ++ BAD_CONSTRAINT ++ } + #if HAS_MUTTER40 +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SCANOUT_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SCANOUT_ERROR_", has_type_id = false)] + public errordomain ScanoutError { + [CCode (cname = "COGL_SCANOUT_ERROR_INHIBITED")] + SCANOUT_ERROR_INHIBITED; +@@ -1401,18 +1404,13 @@ namespace Cogl { + public static GLib.Quark quark (); + } + #endif +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_")] +- public errordomain RendererError { +- XLIB_DISPLAY_OPEN, +- BAD_CONSTRAINT +- } +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)] + [Version (since = "1.4")] + public errordomain SystemError { + UNSUPPORTED, + NO_MEMORY + } +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)] + [Version (since = "1.8")] + public errordomain TextureError { + SIZE, +@@ -1464,7 +1462,7 @@ namespace Cogl { + [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; ++ public static bool blit_framebuffer (Cogl.Framebuffer framebuffer, Cogl.Framebuffer dst, 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); + #if !HAS_MUTTER40 diff --git a/wingpanel.spec b/wingpanel.spec index 36153aa..5f274af 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -13,8 +13,10 @@ License: GPLv2+ URL: https://github.com/elementary/wingpanel Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz -# pending PR for mutter 42 / libmutter-10 support +# merged PR for mutter 42 / libmutter-10 support Patch0: %{url}/pull/434.patch +# merged PR to support latest mutter / gala changes +Patch1: %{url}/pull/453.patch BuildRequires: desktop-file-utils BuildRequires: gettext From cb9adde59b524be67d0e5f77ed5579089dea0639 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 23 Jul 2022 12:27:20 +0000 Subject: [PATCH 28/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 44709accc6813a83b98475928f7a742d6be09a5f Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Tue, 30 Aug 2022 17:49:52 +0200 Subject: [PATCH 29/44] remove package (temporarily) due to unresolved issues with GNOME 43 --- .gitignore | 26 - 434.patch | 1993 ------------------------------------------- 453.patch | 582 ------------- changelog | 170 ---- dead.package | 1 + sources | 1 - wingpanel.rpmlintrc | 6 - wingpanel.spec | 130 --- 8 files changed, 1 insertion(+), 2908 deletions(-) delete mode 100644 .gitignore delete mode 100644 434.patch delete mode 100644 453.patch delete mode 100644 changelog create mode 100644 dead.package delete mode 100644 sources delete mode 100644 wingpanel.rpmlintrc delete mode 100644 wingpanel.spec diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 8116fdb..0000000 --- a/.gitignore +++ /dev/null @@ -1,26 +0,0 @@ -/results_* -/*.src.rpm - -/wingpanel-2.0.1.tar.xz -/wingpanel-2.0.2.tar.xz -/wingpanel-2.0.3.tar.gz -/wingpanel-2.0.3-7a1a583.tar.gz -/wingpanel-2.0.3-434f674.tar.gz -/wingpanel-2.0.4.tar.gz -/wingpanel-2.1.0.tar.gz -/wingpanel-2.1.1.tar.gz -/wingpanel-2.2.0.tar.gz -/wingpanel-2.2.1.tar.gz -/wingpanel-2.2.2.tar.gz -/wingpanel-2.2.3.tar.gz -/wingpanel-2.2.4.tar.gz -/wingpanel-2.2.5.tar.gz -/wingpanel-2.2.6.tar.gz -/wingpanel-2.3.0.tar.gz -/wingpanel-88305e0.tar.gz -/wingpanel-2.3.1.tar.gz -/wingpanel-2.3.2.tar.gz -/wingpanel-db24c73.tar.gz -/wingpanel-3.0.0.tar.gz -/wingpanel-3.0.1.tar.gz -/wingpanel-3.0.2.tar.gz diff --git a/434.patch b/434.patch deleted file mode 100644 index bd4bab1..0000000 --- a/434.patch +++ /dev/null @@ -1,1993 +0,0 @@ -From 3cb4daa89a04f0f134679229d9dc4c9b1638a12f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Corentin=20No=C3=ABl?= -Date: Tue, 18 Jan 2022 19:45:40 +0100 -Subject: [PATCH] Add support for Mutter 42 - ---- - vapi/Clutter-10-custom.vala | 53 +++++++++ - vapi/Clutter-10.metadata | 192 ++++++++++++++++++++++++++++++++ - vapi/Clutter-9-custom.vala | 23 ++++ - vapi/Clutter-9.metadata | 19 +++- - vapi/Cogl-10-custom.vala | 161 ++++++++++++++++++++++++++ - vapi/Cogl-10.metadata | 68 +++++++++++ - vapi/Meta-10.metadata | 181 ++++++++++++++++++++++++++++++ - vapi/config.vapi | 2 + - vapi/libmutter-10.deps | 1 + - vapi/libmutter-10.vapi | 1 + - vapi/libmutter.vapi | 46 +++++++- - vapi/libsystemd.vapi | 18 +++ - vapi/meson.build | 69 ++++++++++++ - vapi/mutter-clutter-10.deps | 6 + - vapi/mutter-clutter-10.vapi | 1 + - vapi/mutter-clutter-9.deps | 2 +- - vapi/mutter-clutter.vapi | 184 +++++++++++++++++++++++++----- - vapi/mutter-cogl-10.deps | 1 + - vapi/mutter-cogl-10.vapi | 1 + - vapi/mutter-cogl-6.vapi | 77 ++++++++++++- - vapi/mutter-cogl-pango-10.vapi | 1 + - wingpanel-interface/meson.build | 11 ++ - 22 files changed, 1080 insertions(+), 38 deletions(-) - create mode 100644 vapi/Clutter-10-custom.vala - create mode 100644 vapi/Clutter-10.metadata - create mode 100644 vapi/Cogl-10-custom.vala - create mode 100644 vapi/Cogl-10.metadata - create mode 100644 vapi/Meta-10.metadata - create mode 120000 vapi/libmutter-10.deps - create mode 120000 vapi/libmutter-10.vapi - create mode 100644 vapi/libsystemd.vapi - create mode 100644 vapi/mutter-clutter-10.deps - create mode 120000 vapi/mutter-clutter-10.vapi - create mode 120000 vapi/mutter-cogl-10.deps - create mode 120000 vapi/mutter-cogl-10.vapi - create mode 120000 vapi/mutter-cogl-pango-10.vapi - -diff --git a/vapi/Clutter-10-custom.vala b/vapi/Clutter-10-custom.vala -new file mode 100644 -index 00000000..e5c71c2d ---- /dev/null -+++ b/vapi/Clutter-10-custom.vala -@@ -0,0 +1,53 @@ -+namespace Clutter { -+ public struct Color { -+ [CCode (cname = "_vala_clutter_color_from_hls")] -+ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_hls (hue, luminance, saturation); -+ return color; -+ } -+ [CCode (cname = "_vala_clutter_color_from_pixel")] -+ public static Clutter.Color? from_pixel (uint32 pixel) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_pixel (pixel); -+ return color; -+ } -+ [CCode (cname = "_vala_clutter_color_from_string")] -+ public static Clutter.Color? from_string (string str) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_string (str); -+ return color; -+ } -+ [CCode (cname = "clutter_color_from_string")] -+ public bool parse_string (string str); -+ } -+ -+ 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 (); -+ } -+ -+ 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); -+ } -+ -+ [CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)] -+ public struct Capture { -+ } -+} -diff --git a/vapi/Clutter-10.metadata b/vapi/Clutter-10.metadata -new file mode 100644 -index 00000000..5b69ae58 ---- /dev/null -+++ b/vapi/Clutter-10.metadata -@@ -0,0 +1,192 @@ -+// Non mini-object -+ActorBox struct -+Color struct -+Knot struct -+Margin struct -+PaintVolume struct -+PathNode struct -+Perspective struct -+Units struct -+ -+*.ref unowned -+ -+Actor -+ .apply_transform.matrix ref -+ .get_abs_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" -+ScriptError errordomain -+ImageError errordomain -+ -+// 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#virtual_method name="get_paint_volume_vfunc" -+ .get_paint_volume#virtual_method.volume out -+Container -+ .add_actor skip=false -+ .class_* skip -+Text -+ .activate#method name="try_activate" -+ .insert_text#signal skip -+TextBuffer.get_text#virtual_method name="get_text_with_length" -+ -+// virtual/abstract distinction -+Container -+ .*_child_meta#virtual_method virtual -+ -+// Default values -+Stage.read_pixels -+ .width default=-1 -+ .height default=-1 -+Stage.paint_to_buffer -+ .data type="uint8[]" -+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 -+Backend -+ .get_cogl_context skip=false -+Container -+ .child_get skip=false -+ .child_set skip=false -+ .remove 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 -+ -+// Skipped upstream for unknown reasons -+Interval.register_progress_func 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 -+Margin -+ .new skip -+ -+// Class methods -+container_class_find_child_property skip -+container_class_list_child_properties skip -+ -+// Move symbols -+units_from_* skip -+ -+// Struct return values -+color_get_static nullable -+ -+// Upstream -+Event -+ .get_position.position out -+ -+FrameListenerIface skip -+FrameClock.new skip -+ -+// Remove for clutter-2.0 -+///////////////////////// -+ -+StageView.layout skip -+ -+Stage -+ .event name="emit_event" -+ .paint_view.redraw_clip type="Cairo.Region" -+ -+Capture -+ .image type="Cairo.ImageSurface" -+ -+// *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" -+DeviceEvent struct=false base_type="Clutter.Event" -+IMEvent struct=false base_type="Clutter.Event" -+KeyEvent struct=false base_type="Clutter.Event" -+MotionEvent struct=false base_type="Clutter.Event" -+PadButtonEvent struct=false base_type="Clutter.Event" -+PadRingEvent struct=false base_type="Clutter.Event" -+PadStripEvent struct=false base_type="Clutter.Event" -+ProximityEvent struct=false base_type="Clutter.Event" -+ScrollEvent struct=false base_type="Clutter.Event" -+TouchEvent struct=false base_type="Clutter.Event" -+TouchpadHoldEvent 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" -+ -+Color.from_hls name="init_from_hls" -+Color.from_pixel name="init_from_pixel" -+Color.from_string name="init_from_string" -+ -+Color.new name="from_rgba" symbol_type="function" -+ .alpha default=0 -+ .blue default=0 -+ .green default=0 -+ .red default=0 -+ -+Color.init -+ .alpha default=0 -+ .blue default=0 -+ .green default=0 -+ .red default=0 -+ -+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/Clutter-9-custom.vala b/vapi/Clutter-9-custom.vala -index abc9b22d..e5c71c2d 100644 ---- a/vapi/Clutter-9-custom.vala -+++ b/vapi/Clutter-9-custom.vala -@@ -1,4 +1,27 @@ - namespace Clutter { -+ public struct Color { -+ [CCode (cname = "_vala_clutter_color_from_hls")] -+ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_hls (hue, luminance, saturation); -+ return color; -+ } -+ [CCode (cname = "_vala_clutter_color_from_pixel")] -+ public static Clutter.Color? from_pixel (uint32 pixel) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_pixel (pixel); -+ return color; -+ } -+ [CCode (cname = "_vala_clutter_color_from_string")] -+ public static Clutter.Color? from_string (string str) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_string (str); -+ return color; -+ } -+ [CCode (cname = "clutter_color_from_string")] -+ public bool parse_string (string str); -+ } -+ - public interface Container : GLib.Object { - public void add (params Clutter.Actor[] actors); - [CCode (cname = "clutter_container_class_find_child_property")] -diff --git a/vapi/Clutter-9.metadata b/vapi/Clutter-9.metadata -index 7955ad82..0750e787 100644 ---- a/vapi/Clutter-9.metadata -+++ b/vapi/Clutter-9.metadata -@@ -106,8 +106,6 @@ ActorBox - .new skip - .from_vertices skip - Units.from_* skip --Color -- .new skip - Margin - .new skip - -@@ -116,7 +114,6 @@ container_class_find_child_property skip - container_class_list_child_properties skip - - // Move symbols --color_from_* skip - units_from_* skip - - // Struct return values -@@ -178,6 +175,22 @@ threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout" - // Backwards compatibility - Color.alloc symbol_type="function" - -+Color.from_hls name="init_from_hls" -+Color.from_pixel name="init_from_pixel" -+Color.from_string name="init_from_string" -+ -+Color.new name="from_rgba" symbol_type="function" -+ .alpha default=0 -+ .blue default=0 -+ .green default=0 -+ .red default=0 -+ -+Color.init -+ .alpha default=0 -+ .blue default=0 -+ .green default=0 -+ .red default=0 -+ - BinAlignment deprecated=false deprecated_since=null - BinAlignment.* deprecated - BinAlignment.start deprecated=false -diff --git a/vapi/Cogl-10-custom.vala b/vapi/Cogl-10-custom.vala -new file mode 100644 -index 00000000..f6034717 ---- /dev/null -+++ b/vapi/Cogl-10-custom.vala -@@ -0,0 +1,161 @@ -+namespace Cogl { -+ public struct Color { -+ [Version (since = "1.4")] -+ [CCode (cname="cogl_color_init_from_4f")] -+ public Color.from_4f (float red, float green, float blue, float alpha); -+ [Version (since = "1.4")] -+ [CCode (cname="cogl_color_init_from_4fv")] -+ public Color.from_4fv (float color_array); -+ [Version (since = "1.4")] -+ [CCode (cname="cogl_color_init_from_4ub")] -+ public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha); -+ [Version (since = "1.16")] -+ [CCode (cname="cogl_color_init_from_hsl")] -+ public Color.from_hsl (float hue, float saturation, float luminance); -+ } -+ -+ [Compact] -+ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] -+ public class Shader : Cogl.Handle { -+ } -+ -+ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")] -+ public class Primitive : Cogl.Object { -+ [CCode (has_construct_function = false)] -+ protected Primitive (); -+ [Version (since = "1.10")] -+ public Cogl.Primitive copy (); -+ [Version (since = "1.16")] -+ public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline); -+ public int get_first_vertex (); -+ public Cogl.VerticesMode get_mode (); -+ [Version (since = "1.8")] -+ public int get_n_vertices (); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data); -+ public void set_first_vertex (int first_vertex); -+ public void set_mode (Cogl.VerticesMode mode); -+ [Version (since = "1.8")] -+ public void set_n_vertices (int n_vertices); -+ } -+ -+ [Compact] -+ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] -+ public class Program : Cogl.Handle { -+ } -+ -+ [Compact] -+ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] -+ public class Handle { -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")] -+ [Version (deprecated = true, deprecated_since = "1.16")] -+ public bool is_material (); -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")] -+ [Version (deprecated = true, deprecated_since = "1.16")] -+ public bool is_program (Cogl.Handle handle); -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")] -+ [Version (deprecated = true, deprecated_since = "1.16")] -+ public bool is_shader (); -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")] -+ public bool is_texture (); -+ } -+ -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2 { -+ public float x; -+ public float y; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2C4 { -+ public float x; -+ public float y; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2T2 { -+ public float x; -+ public float y; -+ public float s; -+ public float t; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2T2C4 { -+ public float x; -+ public float y; -+ public float s; -+ public float t; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3 { -+ public float x; -+ public float y; -+ public float z; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3C4 { -+ public float x; -+ public float y; -+ public float z; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3T2 { -+ public float x; -+ public float y; -+ public float z; -+ public float s; -+ public float t; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3T2C4 { -+ public float x; -+ public float y; -+ public float z; -+ public float s; -+ public float t; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+} -diff --git a/vapi/Cogl-10.metadata b/vapi/Cogl-10.metadata -new file mode 100644 -index 00000000..06197be7 ---- /dev/null -+++ b/vapi/Cogl-10.metadata -@@ -0,0 +1,68 @@ -+* cheader_filename="cogl/cogl.h" -+ -+Color struct -+ -+_ColorSizeCheck skip -+_TextureVertexSizeCheck skip -+ -+Color.equal.v1 type="Cogl.Color" -+Color.equal.v2 type="Cogl.Color" -+color_equal skip -+ -+Context.free_timestamp_query.query owned -+ -+texture_new_* name="texture_new_(.+)" parent="Cogl.Texture" -+Texture -+ .get_data.data type="uint8[]" -+ .new_from_data.data type="uint8[]" -+ .set_data.data type="uint8[]" -+ .set_region.data type="uint8[]" -+ -+Texture2D -+ .new_from_data skip=false -+ .new_from_data.data array=true -+ -+shader_* name="shader_(.+)" parent="Cogl.Shader" -+shader_* symbol_type="method" instance_idx=0 -+ -+program_* name="program_(.+)" parent="Cogl.Program" -+program_attach_shader symbol_type="method" instance_idx=0 -+program_get_uniform_location symbol_type="method" instance_idx=0 -+program_link symbol_type="method" instance_idx=0 -+program_set_uniform_1f symbol_type="method" instance_idx=0 -+program_set_uniform_1i symbol_type="method" instance_idx=0 -+program_set_uniform_float symbol_type="method" instance_idx=0 -+program_set_uniform_int symbol_type="method" instance_idx=0 -+program_set_uniform_matrix symbol_type="method" instance_idx=0 -+ -+is_bitmap parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_program parent="Cogl.Handle" -+is_shader parent="Cogl.Handle" -+is_texture parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_context parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_framebuffer parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_frame_info parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_pipeline parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_texture_2d parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_texture_2d_sliced parent="Cogl.Object" symbol_type="method" instance_idx=0 -+ -+create_program type="unowned Cogl.Program" name="create" parent="Cogl.Program" -+create_shader type="unowned Cogl.Shader" name="create" parent="Cogl.Shader" -+ -+foreach_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 -+get_graphics_reset_status parent="Cogl.Context" symbol_type="method" instance_idx=0 -+has_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 -+ -+Bitmap.error_quark parent="Cogl.BitmapError" name="quark" -+Texture.error_quark parent="Cogl.TextureError" name="quark" -+texture_error_quark skip -+Scanout.error_quark parent="Cogl.ScanoutError" name="quark" -+scanout_error_quark skip -+ -+BitmapError errordomain -+BlendStringError errordomain -+RendererError errordomain -+SystemError errordomain -+TextureError errordomain -+FramebufferError errordomain -+ScanoutError errordomain -diff --git a/vapi/Meta-10.metadata b/vapi/Meta-10.metadata -new file mode 100644 -index 00000000..eaefc051 ---- /dev/null -+++ b/vapi/Meta-10.metadata -@@ -0,0 +1,181 @@ -+* skip=false -+*.* skip=false -+* cheader_filename="meta/main.h" -+ -+Backend cheader_filename="meta/meta-backend.h" -+Backend.gpu_added skip -+get_backend parent="Meta.Backend" cheader_filename="meta/meta-backend.h" -+Background cheader_filename="meta/meta-background.h" -+Background.set_file.file nullable -+BackgroundContent.new symbol_type="constructor" -+BackgroundActor cheader_filename="meta/meta-background-actor.h" -+BackgroundContent cheader_filename="meta/meta-background-content.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" -+BarrierDirection cheader_filename="meta/barrier.h" -+BarrierEvent cheader_filename="meta/barrier.h" -+ButtonFunction cheader_filename="meta/common.h" -+ButtonLayout cheader_filename="meta/common.h" -+Compositor cheader_filename="meta/compositor.h" -+Compositor.sync_stack.stack type_arguments="Meta.Window" -+get_feedback_group_for_display parent="Meta.Display" symbol_type="method" name="get_feedback_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+get_stage_for_display parent="Meta.Display" symbol_type="method" name="get_stage" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+get_top_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_top_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+get_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+disable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="disable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+enable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="enable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+ -+get_window_actors parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" type_arguments="Meta.WindowActor" -+focus_stage_window parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+ -+CompEffect cheader_filename="meta/compositor.h" -+CloseDialog cheader_filename="meta/meta-close-dialog.h" -+CloseDialogResponse cheader_filename="meta/meta-close-dialog.h" -+Context cheader_filename="meta/meta-context.h" -+Cursor cheader_filename="meta/common.h" -+CursorTracker cheader_filename="meta/meta-cursor-tracker.h" -+CursorTracker.get_for_display parent="Meta.Display" symbol_type="method" instance_idx=0 name="get_cursor_tracker" -+CursorTracker.get_pointer.mods out -+DebugTopic cheader_filename="meta/util.h" -+Direction cheader_filename="meta/common.h" -+Display cheader_filename="meta/display.h" -+DisplayCorner cheader_filename="meta/display.h" -+DisplayDirection cheader_filename="meta/display.h" -+Dnd cheader_filename="meta/meta-dnd.h" -+EdgeType cheader_filename="meta/boxes.h" -+Edge cheader_filename="meta/boxes.h" -+Frame cheader_filename="meta/types.h" -+FrameBorders cheader_filename="meta/common.h" -+FrameFlags cheader_filename="meta/common.h" -+FrameType cheader_filename="meta/common.h" -+GrabOp cheader_filename="meta/common.h" -+Group cheader_filename="meta/group.h" -+Group.property_notify.event type="X.Event" ref -+IdleMonitor cheader_filename="meta/meta-idle-monitor.h" -+IdleMonitorWatchFunc cheader_filename="meta/meta-idle-monitor.h" -+InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" -+InhibitShortcutsDialogResponse cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" -+KeyBinding cheader_filename="meta/keybindings.h" -+keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler" cheader_filename="meta/keybindings.h" -+KeyBindingAction cheader_filename="meta/prefs.h" -+KeyBindingFlags cheader_filename="meta/prefs.h" -+KeyHandlerFunc cheader_filename="meta/prefs.h" -+KeyHandlerFunc.event type="Clutter.KeyEvent?" -+KeyHandlerFunc.window nullable -+LaunchContext cheader_filename="meta/meta-launch-context.h" -+LaterType cheader_filename="meta/util.h" -+LocaleDirection cheader_filename="meta/util.h" -+MaximizeFlags cheader_filename="meta/window.h" -+ModalOptions cheader_filename="meta/meta-plugin.h" -+MonitorManager cheader_filename="meta/meta-monitor-manager.h" -+MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" -+MotionDirection cheader_filename="meta/common.h" -+PadActionType cheader_filename="meta/display.h" -+Plugin cheader_filename="meta/meta-plugin.h" -+Plugin.xevent_filter.event type="X.Event" ref -+PluginInfo cheader_filename="meta/meta-plugin.h" -+Preference cheader_filename="meta/prefs.h" -+PrefsChangedFunc cheader_filename="meta/prefs.h" -+Rectangle cheader_filename="meta/boxes.h" struct -+RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h" -+RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h" -+Selection cheader_filename="meta/meta-selection.h" -+SelectionSource cheader_filename="meta/meta-selection-source.h" -+SelectionSourceMemory cheader_filename="meta/meta-selection-source-memory.h" -+SelectionType cheader_filename="meta/meta-selection-source.h" -+Settings cheader_filename="meta/meta-settings.h" -+Shadow cheader_filename="meta/meta-shadow-factory.h" -+ShadowFactory cheader_filename="meta/meta-shadow-factory.h" -+ShadowMode cheader_filename="meta/meta-window-actor.h" -+ShadowParams cheader_filename="meta/meta-shadow-factory.h" -+ShapedTexture cheader_filename="meta/meta-shaped-texture.h" -+Side cheader_filename="meta/common.h" -+SizeChange cheader_filename="meta/compositor.h" -+SoundPlayer cheader_filename="meta/meta-sound-player.h" -+StartupNotification cheader_filename="meta/meta-startup-notification.h" -+StartupNotification.changed.object type="Meta.StartupSequence" -+StartupNotification.get_sequences type_arguments="Meta.StartupSequence" -+StartupSequence cheader_filename="meta/meta-startup-notification.h" -+StackLayer cheader_filename="meta/common.h" -+Stage cheader_filename="meta/meta-stage.h" -+Stage.is_focused parent="Meta.Display" symbol_type="method" name="stage_is_focused" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+Strut cheader_filename="meta/boxes.h" -+TabList cheader_filename="meta/display.h" -+TabShowType cheader_filename="meta/display.h" -+Theme cheader_filename="meta/theme.h" -+theme_get_default cheader_filename="meta/theme.h" -+theme_new cheader_filename="meta/theme.h" -+VirtualModifier cheader_filename="meta/common.h" -+Workspace cheader_filename="meta/workspace.h" -+WorkspaceManager cheader_filename="meta/meta-workspace-manager.h" -+Window cheader_filename="meta/window.h" -+Window.focus#signal name="focused" -+Window.icon type="Cairo.Surface" -+Window.mini_icon type="Cairo.Surface" -+WindowActor cheader_filename="meta/meta-window-actor.h" -+WindowClientType cheader_filename="meta/window.h" -+WindowForeachFunc cheader_filename="meta/window.h" -+WindowGroup cheader_filename="meta/meta-window-group.h" -+WindowMenuType cheader_filename="meta/compositor.h" -+WindowShape cheader_filename="meta/meta-window-shape.h" -+WindowType cheader_filename="meta/window.h" -+X11Display cheader_filename="meta/meta-x11-display.h" -+ -+rect skip -+prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h" -+ -+g_utf8_strndup skip -+ -+preference_to_string cheader_filename="meta/prefs.h" -+frame_type_to_string cheader_filename="meta/util.h" -+topic_to_string parent="Meta.DebugTopic" name="to_string" -+ -+CURRENT_TIME cheader_filename="meta/common.h" -+ICON_WIDTH cheader_filename="meta/common.h" -+ICON_HEIGHT cheader_filename="meta/common.h" -+MINI_ICON_WIDTH cheader_filename="meta/common.h" -+MINI_ICON_HEIGHT cheader_filename="meta/common.h" -+DEFAULT_ICON_NAME cheader_filename="meta/common.h" -+PRIORITY_RESIZE cheader_filename="meta/common.h" -+PRIORITY_BEFORE_REDRAW cheader_filename="meta/common.h" -+PRIORITY_REDRAW cheader_filename="meta/common.h" -+PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h" -+VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h" -+VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h" -+ -+add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" -+bug parent="Meta.Util" cheader_filename="meta/util.h" -+external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h" -+fatal parent="Meta.Util" cheader_filename="meta/util.h" -+get_locale_direction 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" -+remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" -+show_dialog parent="Meta.Util" cheader_filename="meta/util.h" -+show_dialog.columns type_arguments="string" nullable default=null -+show_dialog.entries type_arguments="string" nullable default=null -+show_dialog.transient_for default=0 -+show_dialog.icon_name nullable default=null -+show_dialog.cancel_text nullable default=null -+show_dialog.ok_text nullable default=null -+show_dialog.display nullable default=null -+show_dialog.timeout nullable default=null -+unsigned_long_equal parent="Meta.Util" name="ulong_equal" cheader_filename="meta/util.h" -+unsigned_long_equal.v1 type="ulong?" -+unsigned_long_equal.v2 type="ulong?" -+unsigned_long_hash parent="Meta.Util" name="ulong_hash" cheader_filename="meta/util.h" -+unsigned_long_hash.v type="ulong?" -+warning parent="Meta.Util" cheader_filename="meta/util.h" -+create_context parent="Meta.Context" name="new" symbol_type="constructor" cheader_filename="meta/meta-context.h" -+ -+x11_error_trap_pop parent="Meta.X11Display" symbol_type="method" name="error_trap_pop" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" -+x11_error_trap_pop_with_return parent="Meta.X11Display" symbol_type="method" name="error_trap_pop_with_return" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" -+x11_error_trap_push parent="Meta.X11Display" symbol_type="method" name="error_trap_push" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" -+x11_init_gdk_display parent="Meta.X11Display" cheader_filename="meta/meta-x11-display.h" -diff --git a/vapi/config.vapi b/vapi/config.vapi -index c2c3a35b..35abae73 100644 ---- a/vapi/config.vapi -+++ b/vapi/config.vapi -@@ -18,6 +18,8 @@ - [CCode (cprefix = "", lower_case_cprefix = "", cheader_filename = "config.h")] - namespace Config - { -+ public const string GETTEXT_PACKAGE; -+ public const string LOCALEDIR; - public const string DATADIR; - public const string PKGDATADIR; - public const string VERSION; -diff --git a/vapi/libmutter-10.deps b/vapi/libmutter-10.deps -new file mode 120000 -index 00000000..cdf92777 ---- /dev/null -+++ b/vapi/libmutter-10.deps -@@ -0,0 +1 @@ -+libmutter-9.deps -\ No newline at end of file -diff --git a/vapi/libmutter-10.vapi b/vapi/libmutter-10.vapi -new file mode 120000 -index 00000000..3d8073f5 ---- /dev/null -+++ b/vapi/libmutter-10.vapi -@@ -0,0 +1 @@ -+libmutter-9.vapi -\ No newline at end of file -diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi -index baba792d..5dacb629 100644 ---- a/vapi/libmutter.vapi -+++ b/vapi/libmutter.vapi -@@ -137,14 +137,18 @@ namespace Meta { - #endif - [CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")] - public static GLib.Pid show_dialog (string type, string message, string? timeout = null, string? display = null, string? ok_text = null, string? cancel_text = null, string? icon_name = null, int transient_for = 0, GLib.SList? columns = null, GLib.SList? entries = null); -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "meta/util.h", cname = "meta_topic_real")] - public static void topic_real (Meta.DebugTopic topic, string format, ...); -+#endif - [CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")] - public static int ulong_equal ([CCode (type = "gconstpointer")] ulong? v1, [CCode (type = "gconstpointer")] ulong? v2); - [CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")] - public static uint ulong_hash ([CCode (type = "gconstpointer")] ulong? v); -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "meta/util.h", cname = "meta_verbose_real")] - public static void verbose_real (string format, ...); -+#endif - [CCode (cheader_filename = "meta/util.h", cname = "meta_warning")] - public static void warning (string format, ...); - } -@@ -159,16 +163,24 @@ namespace Meta { - public unowned Meta.IdleMonitor get_core_idle_monitor (); - #endif - public unowned Meta.Dnd get_dnd (); -+#if HAS_MUTTER42 -+ public unowned Meta.MonitorManager get_monitor_manager (); -+#endif - public unowned Meta.RemoteAccessController get_remote_access_controller (); - public unowned Meta.Settings get_settings (); - public unowned Clutter.Actor get_stage (); -+#if HAS_MUTTER42 -+ public bool is_headless (); -+#endif - public bool is_rendering_hardware_accelerated (); - public void lock_layout_group (uint idx); - public void set_keymap (string layouts, string variants, string options); - #if HAS_MUTTER41 - public Meta.Context context { get; construct; } - #endif -+#if !HAS_MUTTER42 - public void set_numlock (bool numlock_state); -+#endif - public signal void keymap_changed (); - public signal void keymap_layout_group_changed (uint object); - public signal void last_device_changed (Clutter.InputDevice object); -@@ -352,6 +364,10 @@ namespace Meta { - public void terminate_with_error (GLib.Error error); - [NoAccessorMethod] - public string name { owned get; construct; } -+#if HAS_MUTTER42 -+ [NoAccessorMethod] -+ public bool unsafe_mode { get; set; } -+#endif - } - #endif - [CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")] -@@ -365,6 +381,9 @@ namespace Meta { - public void get_pointer (out int x, out int y, out Clutter.ModifierType mods); - #endif - public bool get_pointer_visible (); -+#if HAS_MUTTER42 -+ public float get_scale (); -+#endif - public unowned Cogl.Texture get_sprite (); - public void set_pointer_visible (bool visible); - #if HAS_MUTTER338 -@@ -444,6 +463,9 @@ namespace Meta { - public unowned Meta.X11Display get_x11_display (); - public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags); - public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence); -+#if HAS_MUTTER42 -+ public GLib.List list_all_windows (); -+#endif - public bool remove_keybinding (string name); - public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode); - public void set_cursor (Meta.Cursor cursor); -@@ -569,6 +591,10 @@ namespace Meta { - public void switch_config (Meta.MonitorSwitchConfigType config_type); - [NoAccessorMethod] - public Meta.Backend backend { owned get; construct; } -+#if HAS_MUTTER42 -+ [NoAccessorMethod] -+ public bool has_builtin_panel { get; } -+#endif - #if HAS_MUTTER338 - public bool panel_orientation_managed { get; } - #endif -@@ -855,6 +881,9 @@ namespace Meta { - public unowned Meta.Workspace get_workspace (); - public X.Window get_xwindow (); - public void group_leader_changed (); -+#if HAS_MUTTER42 -+ public bool has_attached_dialogs (); -+#endif - public bool has_focus (); - public bool is_above (); - public bool is_always_on_all_workspaces (); -@@ -923,6 +952,10 @@ namespace Meta { - public string gtk_window_object_path { get; } - [NoAccessorMethod] - public Cairo.Surface icon { owned get; } -+#if HAS_MUTTER42 -+ [NoAccessorMethod] -+ public bool is_alive { get; } -+#endif - [NoAccessorMethod] - public bool maximized_horizontally { get; } - [NoAccessorMethod] -@@ -968,6 +1001,9 @@ namespace Meta { - public unowned Meta.Window get_meta_window (); - public unowned Meta.ShapedTexture get_texture (); - public bool is_destroyed (); -+#if HAS_MUTTER42 -+ public Clutter.Content? paint_to_content (Meta.Rectangle? clip) throws GLib.Error; -+#endif - public void sync_visibility (); - #if HAS_MUTTER338 - public void thaw (); -@@ -1277,6 +1313,10 @@ namespace Meta { - KMS, - SCREEN_CAST, - REMOTE_DESKTOP, -+#endif -+#if HAS_MUTTER42 -+ BACKEND, -+ RENDER, - #endif - DBUS - } -@@ -1433,7 +1473,9 @@ namespace Meta { - CYCLE_PANELS, - CYCLE_PANELS_BACKWARD, - SHOW_DESKTOP, -+#if !HAS_MUTTER42 - PANEL_MAIN_MENU, -+#endif - PANEL_RUN_DIALOG, - TOGGLE_RECORDING, - SET_SPEW_MARK, -@@ -1745,10 +1787,6 @@ namespace Meta { - #endif - [CCode (cheader_filename = "meta/main.h")] - public static void clutter_init (); --#if HAS_MUTTER41 -- [CCode (cheader_filename = "meta/meta-context.h")] -- public static Meta.Context create_context (string name); --#endif - [CCode (cheader_filename = "meta/main.h")] - public static void exit (Meta.ExitCode code); - #if !HAS_MUTTER41 -diff --git a/vapi/libsystemd.vapi b/vapi/libsystemd.vapi -new file mode 100644 -index 00000000..54bc3a68 ---- /dev/null -+++ b/vapi/libsystemd.vapi -@@ -0,0 +1,18 @@ -+[CCode (cheader_filename = "systemd/sd-daemon.h")] -+namespace Systemd.Daemon { -+ [CCode (cname="sd_notify")] -+ int notify([CCode (type="int")]bool unset_environment, string state); -+ -+ [CCode (cname="sd_notifyf")] -+ int notifyf([CCode (type="int")]bool unset_environment, string format, ...); -+ -+ [CCode (cname="sd_pid_notify")] -+ int pid_notify(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string state); -+ -+ [CCode (cname="sd_pid_notifyf")] -+ int pid_notifyf(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string format, ...); -+ -+ [CCode (cname="sd_pid_notify_with_fds")] -+ int pid_notify_with_fds(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string state, int[] fds); -+} -+ -diff --git a/vapi/meson.build b/vapi/meson.build -index 3773b0bc..a348b16b 100644 ---- a/vapi/meson.build -+++ b/vapi/meson.build -@@ -286,3 +286,72 @@ if mutter41_dep.found() - output: 'libmutter-9.vapi' - ) - endif -+if mutter42_dep.found() -+ cogl_target = custom_target('mutter-cogl-10', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'Cogl-10.gir', -+ '--library=mutter-cogl-10', -+ '--pkg=gobject-2.0', -+ '--pkg=cairo', -+ '--pkg=graphene-gobject-1.0', -+ vapigen_args, -+ files('Cogl-10-custom.vala') -+ ], -+ output: 'mutter-cogl-10.vapi' -+ ) -+ -+ cogl_pango_target = custom_target('mutter-cogl-pango-10', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'CoglPango-10.gir', -+ '--library=mutter-cogl-pango-10', -+ '--pkg=mutter-cogl-10', -+ '--pkg=pangocairo', -+ vapigen_args -+ ], -+ depends: cogl_target, -+ output: 'mutter-cogl-pango-10.vapi' -+ ) -+ -+ clutter_target = custom_target('mutter-clutter-10', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'Clutter-10.gir', -+ '--library=mutter-clutter-10', -+ '--pkg=graphene-gobject-1.0', -+ '--pkg=mutter-cogl-10', -+ '--pkg=mutter-cogl-pango-10', -+ '--pkg=atk', -+ '--pkg=gio-2.0', -+ '--pkg=json-glib-1.0', -+ '--pkg=pangocairo', -+ vapigen_args, -+ files('Clutter-10-custom.vala') -+ ], -+ depends: [ cogl_target, cogl_pango_target ], -+ output: 'mutter-clutter-10.vapi' -+ ) -+ -+ libmutter_target = custom_target('libmutter-10', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'Meta-10.gir', -+ '--library=libmutter-10', -+ '--pkg=graphene-gobject-1.0', -+ '--pkg=mutter-cogl-10', -+ '--pkg=mutter-cogl-pango-10', -+ '--pkg=mutter-clutter-10', -+ '--pkg=atk', -+ '--pkg=gio-2.0', -+ '--pkg=json-glib-1.0', -+ '--pkg=pangocairo', -+ '--pkg=gtk+-3.0', -+ '--pkg=x11', -+ '--pkg=xfixes-4.0', -+ vapigen_args -+ ], -+ depends: [ cogl_target, cogl_pango_target, clutter_target ], -+ output: 'libmutter-10.vapi' -+ ) -+endif -diff --git a/vapi/mutter-clutter-10.deps b/vapi/mutter-clutter-10.deps -new file mode 100644 -index 00000000..f4c6e420 ---- /dev/null -+++ b/vapi/mutter-clutter-10.deps -@@ -0,0 +1,6 @@ -+atk -+cairo -+pango -+json-glib-1.0 -+mutter-cogl-10 -+graphene-gobject-1.0 -diff --git a/vapi/mutter-clutter-10.vapi b/vapi/mutter-clutter-10.vapi -new file mode 120000 -index 00000000..8a0ba541 ---- /dev/null -+++ b/vapi/mutter-clutter-10.vapi -@@ -0,0 +1 @@ -+mutter-clutter-9.vapi -\ No newline at end of file -diff --git a/vapi/mutter-clutter-9.deps b/vapi/mutter-clutter-9.deps -index fffc4803..f4c6e420 100644 ---- a/vapi/mutter-clutter-9.deps -+++ b/vapi/mutter-clutter-9.deps -@@ -2,5 +2,5 @@ atk - cairo - pango - json-glib-1.0 --mutter-cogl-9 -+mutter-cogl-10 - graphene-gobject-1.0 -diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi -index c54ca952..04307759 100644 ---- a/vapi/mutter-clutter.vapi -+++ b/vapi/mutter-clutter.vapi -@@ -3,7 +3,6 @@ - [CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "1.0", 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")] -@@ -4629,6 +4628,11 @@ namespace Clutter { - public abstract class Action : Clutter.ActorMeta { - [CCode (has_construct_function = false)] - protected Action (); -+#if HAS_MUTTER42 -+ public Clutter.EventPhase get_phase (); -+ [NoWrapper] -+ public virtual bool handle_event (Clutter.Event event); -+#endif - } - [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 { -@@ -4638,6 +4642,9 @@ namespace Clutter { - public Actor (); - [Version (since = "1.4")] - public void add_action (Clutter.Action action); -+#if HAS_MUTTER42 -+ public void add_action_full (string name, Clutter.EventPhase phase, Clutter.Action action); -+#endif - [Version (since = "1.4")] - public void add_action_with_name (string name, Clutter.Action action); - [Version (since = "1.10")] -@@ -4724,7 +4731,7 @@ namespace Clutter { - 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); -+ public unowned Clutter.Action? get_action (string name); - [Version (since = "1.4")] - public GLib.List get_actions (); - [Version (since = "0.8")] -@@ -4745,7 +4752,7 @@ namespace Clutter { - public static unowned Clutter.Actor get_by_gid (uint32 id_); - #endif - [Version (since = "1.10")] -- public unowned Clutter.Actor get_child_at_index (int index_); -+ public unowned Clutter.Actor? get_child_at_index (int index_); - [Version (since = "1.12")] - #if HAS_MUTTER40 - public Graphene.Matrix get_child_transform (); -@@ -4759,11 +4766,11 @@ namespace Clutter { - [Version (since = "1.4")] - public bool get_clip_to_allocation (); - [Version (since = "1.4")] -- public unowned Clutter.Constraint get_constraint (string name); -+ public unowned Clutter.Constraint? get_constraint (string name); - [Version (since = "1.4")] - public GLib.List get_constraints (); - [Version (since = "1.10")] -- public unowned Clutter.Content get_content (); -+ public unowned Clutter.Content? get_content (); - [Version (since = "1.10")] - public Clutter.ActorBox get_content_box (); - [Version (since = "1.10")] -@@ -4785,11 +4792,11 @@ namespace Clutter { - [Version (since = "1.10")] - public Clutter.AnimationMode get_easing_mode (); - [Version (since = "1.4")] -- public unowned Clutter.Effect get_effect (string name); -+ public unowned Clutter.Effect? get_effect (string name); - [Version (since = "1.4")] - public GLib.List get_effects (); - [Version (since = "1.10")] -- public unowned Clutter.Actor get_first_child (); -+ public unowned Clutter.Actor? get_first_child (); - #if HAS_MUTTER338 - public bool get_fixed_position (out float x, out float y); - #endif -@@ -4802,9 +4809,9 @@ namespace Clutter { - public bool get_has_pointer (); - public float get_height (); - [Version (since = "1.10")] -- public unowned Clutter.Actor get_last_child (); -+ public unowned Clutter.Actor? get_last_child (); - [Version (since = "1.10")] -- public unowned Clutter.LayoutManager get_layout_manager (); -+ public unowned Clutter.LayoutManager? get_layout_manager (); - [Version (since = "1.10")] - public Clutter.Margin get_margin (); - [Version (since = "1.10")] -@@ -4817,9 +4824,9 @@ namespace Clutter { - public float get_margin_top (); - [Version (since = "1.10")] - public int get_n_children (); -- public unowned string get_name (); -+ public unowned string? get_name (); - [Version (since = "1.10")] -- public unowned Clutter.Actor get_next_sibling (); -+ public unowned Clutter.Actor? get_next_sibling (); - [Version (since = "1.8")] - public Clutter.OffscreenRedirect get_offscreen_redirect (); - public uint8 get_opacity (); -@@ -4852,7 +4859,7 @@ namespace Clutter { - [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 (); -+ public unowned Clutter.Actor? get_previous_sibling (); - [Version (since = "0.6")] - public bool get_reactive (); - [Version (since = "1.2")] -@@ -4898,7 +4905,7 @@ namespace Clutter { - [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); -+ 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 (); -@@ -5083,7 +5090,7 @@ namespace Clutter { - public void set_margin_right (float margin); - [Version (since = "1.10")] - public void set_margin_top (float margin); -- public void set_name (string name); -+ public void set_name (string? name); - [Version (since = "1.8")] - public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect); - public void set_opacity (uint8 opacity); -@@ -5707,6 +5714,7 @@ namespace Clutter { - public bool get_homogeneous (); - [Version (since = "1.12")] - public Clutter.Orientation get_orientation (); -+ [Version (deprecated = true)] - public bool get_pack_start (); - public uint get_spacing (); - #if !HAS_MUTTER338 -@@ -5731,6 +5739,7 @@ namespace Clutter { - public void set_homogeneous (bool homogeneous); - [Version (since = "1.12")] - public void set_orientation (Clutter.Orientation orientation); -+ [Version (deprecated = true)] - public void set_pack_start (bool pack_start); - public void set_spacing (uint spacing); - #if !HAS_MUTTER338 -@@ -5747,6 +5756,7 @@ namespace Clutter { - public bool homogeneous { get; set; } - [Version (since = "1.12")] - public Clutter.Orientation orientation { get; set; } -+ [Version (deprecated = true)] - public bool pack_start { get; set; } - public uint spacing { get; set; } - #if !HAS_MUTTER338 -@@ -5778,7 +5788,9 @@ namespace Clutter { - public class ButtonEvent : Clutter.Event { - public double axes; - public uint32 button; -+#if !HAS_MUTTER42 - public uint click_count; -+#endif - public weak Clutter.InputDevice device; - #if HAS_MUTTER40 - public uint32 evdev_code; -@@ -5884,6 +5896,13 @@ namespace Clutter { - #endif - public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, ref float minimum_size, ref float natural_size); - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] -+ [Compact] -+ public class Context { -+ public unowned Clutter.Backend get_backend (); -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] - [Compact] - [Version (since = "0.2")] -@@ -6035,8 +6054,10 @@ namespace Clutter { - public double get_axes (out uint n_axes); - [Version (since = "1.0")] - public uint32 get_button (); -+#if !HAS_MUTTER42 - [Version (since = "1.0")] - public uint get_click_count (); -+#endif - [Version (since = "0.4")] - public void get_coords (out float x, out float y); - [Version (since = "1.0")] -@@ -6324,6 +6345,9 @@ namespace Clutter { - public class IMEvent : Clutter.Event { - public Clutter.EventFlags flags; - public uint32 len; -+#if HAS_MUTTER42 -+ public Clutter.PreeditResetMode mode; -+#endif - public int32 offset; - public weak Clutter.Actor source; - public weak Clutter.Stage stage; -@@ -6362,6 +6386,7 @@ namespace Clutter { - public class InputDevice : GLib.Object { - [CCode (has_construct_function = false)] - protected InputDevice (); -+#if !HAS_MUTTER42 - #if HAS_MUTTER338 - [Version (since = "1.2")] - public unowned Clutter.Actor get_actor (Clutter.EventSequence? sequence); -@@ -6383,6 +6408,7 @@ namespace Clutter { - public bool get_coords (Clutter.EventSequence? sequence, out Graphene.Point point); - [Version (since = "1.0")] - public int get_device_id (); -+#endif - #endif - [Version (since = "1.6")] - public Clutter.InputMode get_device_mode (); -@@ -6408,8 +6434,10 @@ namespace Clutter { - [Version (since = "1.16")] - public Clutter.ModifierType get_modifier_state (); - #endif -+#if !HAS_MUTTER42 - [Version (since = "1.6")] - public uint get_n_axes (); -+#endif - #if HAS_MUTTER40 - public int get_n_buttons (); - #else -@@ -6573,7 +6601,11 @@ namespace Clutter { - [NoWrapper] - public virtual void set_cursor_location (Graphene.Rect rect); - public void set_input_panel_state (Clutter.InputPanelState state); -+#if HAS_MUTTER42 -+ public void set_preedit_text (string? preedit, uint cursor, Clutter.PreeditResetMode mode); -+#else - public void set_preedit_text (string? preedit, uint cursor); -+#endif - [NoWrapper] - public virtual void set_surrounding (string text, uint cursor, uint anchor); - [NoWrapper] -@@ -6898,7 +6930,11 @@ namespace Clutter { - public double deceleration { get; set; } - public bool interpolate { get; set; } - public Clutter.PanAxis pan_axis { get; set; } -+#if HAS_MUTTER42 -+ public signal bool pan (Clutter.Actor actor, bool is_interpolated); -+#else - public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated); -+#endif - 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 ()")] -@@ -6958,6 +6994,9 @@ namespace Clutter { - public void destroy (); - #if HAS_MUTTER40 - public Graphene.Matrix get_transform (); -+#if HAS_MUTTER42 -+ public void log_overlap (Clutter.Actor actor); -+#endif - public void log_pick (Clutter.ActorBox box, Clutter.Actor actor); - public void pop_clip (); - public void pop_transform (); -@@ -7041,7 +7080,11 @@ namespace Clutter { - public class RotateAction : Clutter.GestureAction { - [CCode (has_construct_function = false, type = "ClutterAction*")] - public RotateAction (); -+#if HAS_MUTTER42 -+ public signal bool rotate (Clutter.Actor actor, double angle); -+#else - public virtual signal bool rotate (Clutter.Actor actor, double angle); -+#endif - } - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")] - [Version (since = "0.6")] -@@ -7163,8 +7206,10 @@ namespace Clutter { - public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings); - public void uninhibit_unfocus (); - public virtual void warp_pointer (int x, int y); -+#if !HAS_MUTTER42 - [NoAccessorMethod] - public Clutter.Backend backend { owned get; construct; } -+#endif - public bool touch_mode { get; } - public signal void device_added (Clutter.InputDevice object); - public signal void device_removed (Clutter.InputDevice object); -@@ -7320,8 +7365,10 @@ namespace Clutter { - public int64 get_frame_counter (); - [Version (since = "0.6")] - public unowned Clutter.Actor get_key_focus (); -+#if !HAS_MUTTER42 - [Version (since = "1.2")] - public void get_minimum_size (out uint width, out uint height); -+#endif - [Version (since = "1.8")] - public bool get_motion_events_enabled (); - public Clutter.Perspective get_perspective (); -@@ -7336,7 +7383,10 @@ namespace Clutter { - [Version (since = "1.2")] - public bool get_use_alpha (); - #if HAS_MUTTER338 -- public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] ref unowned uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; -+ public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; -+#if HAS_MUTTER42 -+ public Clutter.Content paint_to_content (Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags) throws GLib.Error; -+#endif - public void paint_to_framebuffer (Cogl.Framebuffer framebuffer, Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags); - #else - [Version (since = "0.4")] -@@ -7375,7 +7425,9 @@ namespace Clutter { - public void set_title (string title); - [Version (since = "1.2")] - public void set_use_alpha (bool use_alpha); --#if HAS_MUTTER40 -+#if HAS_MUTTER42 -+ public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, Cairo.Region region, bool emit_crossing); -+#elif HAS_MUTTER40 - public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, bool emit_crossing); - #endif - #if !HAS_MUTTER338 -@@ -7512,8 +7564,6 @@ namespace Clutter { - #endif - [NoAccessorMethod] - public int64 vblank_duration_us { get; construct; } --#if HAS_MUTTER41 --#endif - } - #if !HAS_MUTTER338 - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")] -@@ -7561,7 +7611,11 @@ namespace Clutter { - [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")] -+#if HAS_MUTTER42 -+ public signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction); -+#else - public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction); -+#endif - } - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")] - [Version (since = "1.14")] -@@ -7901,6 +7955,21 @@ namespace Clutter { - public float x; - public float y; - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] -+ [Compact] -+ public class TouchpadHoldEvent : Clutter.Event { -+ public Clutter.EventFlags flags; -+ public uint32 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; -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] - [Compact] - [Version (since = "1.24")] -@@ -8016,10 +8085,14 @@ namespace Clutter { - public ZoomAction (); - public Graphene.Point get_focal_point (); - public Graphene.Point get_transformed_focal_point (); -+#if HAS_MUTTER42 -+ public signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor); -+#else - 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); -+#endif - } - [CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")] - public interface Animatable : GLib.Object { -@@ -8064,23 +8137,29 @@ namespace Clutter { - 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); -+#if !HAS_MUTTER42 - [Version (deprecated = true, deprecated_since = "1.10", since = "0.4")] - public GLib.List get_children (); -+#endif - [CCode (cname = "clutter_container_class_list_child_properties")] - public class unowned GLib.ParamSpec[] list_child_properties (); -+#if !HAS_MUTTER42 - [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); -+#endif - [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); -+#if !HAS_MUTTER42 - [Version (deprecated = true, deprecated_since = "1.10", since = "0.6")] - public abstract void sort_depth_order (); -+#endif - public virtual signal void actor_added (Clutter.Actor actor); - public virtual signal void actor_removed (Clutter.Actor actor); - [HasEmitter] -@@ -8162,8 +8241,8 @@ namespace Clutter { - 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 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_copy_function = false, has_destroy_function = false, has_type_id = false)] -@@ -8187,16 +8266,40 @@ namespace Clutter { - public bool equal (Clutter.Color v2); - [Version (since = "0.2")] - public void free (); -- public void from_hls (float hue, float luminance, float saturation); -- public void from_pixel (uint32 pixel); -- [Version (since = "1.0")] -- public bool from_string (string str); -+ [CCode (cname = "_vala_clutter_color_from_hls")] -+ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { -+ Clutter.Color? color = Clutter.Color.alloc (); -+ color.init_from_hls (hue, luminance, saturation); -+ return color; -+ } -+ [CCode (cname = "_vala_clutter_color_from_pixel")] -+ public static Clutter.Color? from_pixel (uint32 pixel) { -+ Clutter.Color? color = Clutter.Color.alloc (); -+ color.init_from_pixel (pixel); -+ return color; -+ } -+ [CCode (cname = "clutter_color_new")] -+ [Version (since = "0.8")] -+ public static Clutter.Color? from_rgba (uint8 red = 0, uint8 green = 0, uint8 blue = 0, uint8 alpha = 0); -+ [CCode (cname = "_vala_clutter_color_from_string")] -+ public static Clutter.Color? from_string (string str) { -+ Clutter.Color? color = Clutter.Color.alloc (); -+ color.init_from_string (str); -+ return color; -+ } - [Version (since = "1.6")] - 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); -+ public unowned Clutter.Color? init (uint8 red = 0, uint8 green = 0, uint8 blue = 0, uint8 alpha = 0); -+ [CCode (cname = "clutter_color_from_hls")] -+ public void init_from_hls (float hue, float luminance, float saturation); -+ [CCode (cname = "clutter_color_from_pixel")] -+ public void init_from_pixel (uint32 pixel); -+ [CCode (cname = "clutter_color_from_string")] -+ [Version (since = "1.0")] -+ public bool init_from_string (string str); - [Version (since = "1.6")] - public Clutter.Color interpolate (Clutter.Color final, double progress); - public Clutter.Color lighten (); -@@ -8549,6 +8652,13 @@ namespace Clutter { - #endif - FLAG_REPEATED - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PHASE_", type_id = "clutter_event_phase_get_type ()")] -+ public enum EventPhase { -+ CAPTURE, -+ BUBBLE -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")] - [Version (since = "0.4")] - public enum EventType { -@@ -8575,6 +8685,9 @@ namespace Clutter { - TOUCH_CANCEL, - TOUCHPAD_PINCH, - TOUCHPAD_SWIPE, -+#if HAS_MUTTER42 -+ TOUCHPAD_HOLD, -+#endif - PROXIMITY_IN, - PROXIMITY_OUT, - PAD_BUTTON_PRESS, -@@ -8597,12 +8710,14 @@ namespace Clutter { - #if !HAS_MUTTER338 - SWAP_THROTTLE, - #endif -+#if !HAS_MUTTER42 - STAGE_STATIC, - STAGE_CURSOR, -- SHADERS_GLSL, - OFFSCREEN, - STAGE_MULTIPLE, -- SWAP_EVENTS -+ SWAP_EVENTS, -+#endif -+ SHADERS_GLSL - } - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")] - [Version (since = "1.2")] -@@ -8654,6 +8769,7 @@ namespace Clutter { - TOP, - BOTTOM - } -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")] - [Version (since = "0.2")] - public enum InitError { -@@ -8664,6 +8780,7 @@ namespace Clutter { - ERROR_INTERNAL; - public static GLib.Quark quark (); - } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")] - [Version (since = "1.6")] - public enum InputAxis { -@@ -8956,6 +9073,13 @@ namespace Clutter { - DWELL, - GESTURE - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PREEDIT_RESET_", type_id = "clutter_preedit_reset_mode_get_type ()")] -+ public enum PreeditResetMode { -+ CLEAR, -+ COMMIT -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")] - [Flags] - [Version (since = "1.10")] -@@ -9167,6 +9291,7 @@ namespace Clutter { - POINTER, - TOUCHSCREEN - } -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")] - [Version (since = "1.12")] - public enum ZoomAxis { -@@ -9174,6 +9299,7 @@ namespace Clutter { - Y_AXIS, - BOTH - } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")] - [Version (since = "1.10")] - public errordomain ImageError { -@@ -9285,17 +9411,21 @@ namespace Clutter { - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "1.0")] - public static unowned Pango.FontMap get_font_map (); -+#if !HAS_MUTTER42 - [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 (); -+#endif - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "0.6")] - public static unowned string get_script_id (GLib.Object gobject); -+#if !HAS_MUTTER42 - [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); -+#endif - #if !HAS_MUTTER41 - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "0.2")] -diff --git a/vapi/mutter-cogl-10.deps b/vapi/mutter-cogl-10.deps -new file mode 120000 -index 00000000..ea52a856 ---- /dev/null -+++ b/vapi/mutter-cogl-10.deps -@@ -0,0 +1 @@ -+mutter-cogl-9.deps -\ No newline at end of file -diff --git a/vapi/mutter-cogl-10.vapi b/vapi/mutter-cogl-10.vapi -new file mode 120000 -index 00000000..698673de ---- /dev/null -+++ b/vapi/mutter-cogl-10.vapi -@@ -0,0 +1 @@ -+mutter-cogl-9.vapi -\ No newline at end of file -diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi -index b55bd648..526bb415 100644 ---- a/vapi/mutter-cogl-6.vapi -+++ b/vapi/mutter-cogl-6.vapi -@@ -27,6 +27,10 @@ namespace Cogl { - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_foreach_feature")] - [Version (since = "1.10")] - public void foreach_feature (Cogl.FeatureCallback callback); -+#if HAS_MUTTER42 -+ public void free_timestamp_query (owned Cogl.TimestampQuery query); -+ public int64 get_gpu_time_ns (); -+#endif - #if !HAS_MUTTER40 - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_get_clock_time")] - [Version (since = "1.14")] -@@ -45,6 +49,9 @@ namespace Cogl { - #endif - #if HAS_MUTTER40 - public void set_named_pipeline (Cogl.PipelineKey key, Cogl.Pipeline? pipeline); -+#endif -+#if HAS_MUTTER42 -+ public int64 timestamp_query_get_time_ns (Cogl.TimestampQuery query); - #endif - } - [CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")] -@@ -69,8 +76,14 @@ namespace Cogl { - #endif - [Version (since = "1.14")] - public float get_refresh_rate (); -+#if HAS_MUTTER42 -+ public int64 get_rendering_duration_ns (); -+#endif - #if HAS_MUTTER40 - public uint get_sequence (); -+#if HAS_MUTTER42 -+ public int64 get_time_before_buffer_swap_us (); -+#endif - public bool is_hw_clock (); - public bool is_vsync (); - public bool is_zero_copy (); -@@ -224,6 +237,7 @@ namespace Cogl { - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_texture")] - public bool is_texture (); - } -+#if !HAS_MUTTER42 - [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 : Cogl.Handle { -@@ -265,6 +279,7 @@ namespace Cogl { - [Compact] - public class MaterialLayer : Cogl.Handle { - } -+#endif - [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")] - public abstract class Object { - [CCode (has_construct_function = false)] -@@ -353,6 +368,9 @@ namespace Cogl { - #endif - [Version (since = "2.0")] - public void hide (); -+#if HAS_MUTTER42 -+ public virtual void queue_damage_region (int rectangles, int n_rectangles); -+#endif - [Version (since = "1.16")] - public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure); - [Version (since = "1.14")] -@@ -620,6 +638,12 @@ namespace Cogl { - [Version (since = "1.16")] - public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste); - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Compact] -+ public class TimestampQuery { -+ } -+#endif - #if HAS_MUTTER338 - [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] - [Compact] -@@ -751,13 +775,13 @@ namespace Cogl { - public interface Texture : Cogl.Object { - public bool allocate () throws GLib.Error; - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_bitmap")] -- [Version (deprecated = true, deprecated_since = "1.18", since = "1.0")] -+ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_bitmap", since = "1.0")] - public static Cogl.Texture from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format); - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_data")] -- [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] -+ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_data", since = "0.8")] - public static Cogl.Texture from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] uint8[] data); - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_file")] -- [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] -+ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_file", since = "0.8")] - public static Cogl.Texture from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error; - [Version (since = "1.18")] - public Cogl.TextureComponents get_components (); -@@ -775,10 +799,12 @@ namespace Cogl { - public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] 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; -+#if !HAS_MUTTER42 - [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); -+#endif - [Version (since = "1.18")] - public void set_components (Cogl.TextureComponents components); - public bool set_data (Cogl.PixelFormat format, int rowstride, [CCode (array_length = false)] uint8[] data, int level) throws GLib.Error; -@@ -787,9 +813,11 @@ namespace Cogl { - 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, [CCode (array_length = false)] 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); -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_with_size")] - [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] - public static Cogl.Texture with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format); -+#endif - } - [CCode (cheader_filename = "cogl/cogl.h")] - [SimpleType] -@@ -828,6 +856,14 @@ namespace Cogl { - 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); -+ [Version (since = "1.16")] -+ public void init_from_hsl (float hue, float saturation, float luminance); - public void premultiply (); - [Version (since = "1.4")] - public void set_alpha (float alpha); -@@ -945,6 +981,9 @@ namespace Cogl { - public struct TraceHead { - public uint64 begin_time; - public weak string name; -+#if HAS_MUTTER42 -+ public weak string description; -+#endif - } - #endif - [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -@@ -1093,6 +1132,12 @@ namespace Cogl { - #if HAS_MUTTER338 - [CCode (cname = "COGL_FEATURE_ID_BLIT_FRAMEBUFFER")] - OGL_FEATURE_ID_BLIT_FRAMEBUFFER, -+#endif -+#if HAS_MUTTER42 -+ [CCode (cname = "COGL_FEATURE_ID_TIMESTAMP_QUERY")] -+ OGL_FEATURE_ID_TIMESTAMP_QUERY, -+ [CCode (cname = "COGL_FEATURE_ID_GET_GPU_TIME")] -+ OGL_FEATURE_ID_GET_GPU_TIME, - #endif - [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] - OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL -@@ -1122,6 +1167,7 @@ namespace Cogl { - SHORT, - INT - } -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)] - public enum MaterialAlphaFunc { - NEVER, -@@ -1149,6 +1195,7 @@ namespace Cogl { - CLAMP_TO_EDGE, - AUTOMATIC - } -+#endif - [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)] - public enum PipelineAlphaFunc { - NEVER, -@@ -1204,12 +1251,24 @@ namespace Cogl { - ABGR_8888, - RGBA_1010102, - BGRA_1010102, -+#if HAS_MUTTER42 -+ XRGB_2101010, -+#endif - ARGB_2101010, -+#if HAS_MUTTER42 -+ XBGR_2101010, -+#endif - ABGR_2101010, - #if HAS_MUTTER338 - RGBA_FP_16161616, - BGRA_FP_16161616, -+#if HAS_MUTTER42 -+ XRGB_FP_16161616, -+#endif - ARGB_FP_16161616, -+#if HAS_MUTTER42 -+ XBGR_FP_16161616, -+#endif - ABGR_FP_16161616, - #endif - RGBA_8888_PRE, -@@ -1293,7 +1352,9 @@ namespace Cogl { - } - [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)] - public enum WinsysFeature { -+#if !HAS_MUTTER42 - MULTIPLE_ONSCREEN, -+#endif - #if !HAS_MUTTER338 - SWAP_THROTTLE, - #endif -@@ -1420,12 +1481,14 @@ namespace Cogl { - [CCode (cheader_filename = "cogl/cogl.h")] - [Version (since = "1.0")] - public static void flush (); -+#if !HAS_MUTTER42 - [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 (deprecated = true, deprecated_since = "1.16")] - public static bool get_depth_test_enabled (); -+#endif - [CCode (cheader_filename = "cogl/cogl.h")] - [Version (deprecated = true, deprecated_since = "1.16", since = "1.0")] - public static GLib.OptionGroup get_option_group (); -@@ -1434,23 +1497,31 @@ namespace Cogl { - [Version (deprecated = true, deprecated_since = "1.18")] - public static GLib.Type gtype_matrix_get_type (); - #endif -+#if !HAS_MUTTER42 - [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); -+#endif - [CCode (cheader_filename = "cogl/cogl.h")] - public static void set_tracing_disabled_on_thread (GLib.MainContext main_context); - [CCode (cheader_filename = "cogl/cogl.h")] - public static void set_tracing_enabled_on_thread (GLib.MainContext main_context, string group, string filename); - [CCode (cheader_filename = "cogl/cogl.h")] - public static void set_tracing_enabled_on_thread_with_fd (GLib.MainContext main_context, string group, int fd); -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "cogl/cogl.h")] -+ public static void trace_describe (Cogl.TraceHead head, string description); -+#endif - #if HAS_MUTTER338 - [CCode (cheader_filename = "cogl/cogl.h")] - public static void trace_end (Cogl.TraceHead head); - #endif -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "cogl/cogl.h")] - [Version (since = "1.10")] - public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen); -+#endif - } -diff --git a/vapi/mutter-cogl-pango-10.vapi b/vapi/mutter-cogl-pango-10.vapi -new file mode 120000 -index 00000000..5362ecec ---- /dev/null -+++ b/vapi/mutter-cogl-pango-10.vapi -@@ -0,0 +1 @@ -+mutter-cogl-pango-9.vapi -\ No newline at end of file -diff --git a/wingpanel-interface/meson.build b/wingpanel-interface/meson.build -index 667a15cf..c0b645e3 100644 ---- a/wingpanel-interface/meson.build -+++ b/wingpanel-interface/meson.build -@@ -46,6 +46,17 @@ if mutter41_dep.found() - vala_flags = ['--define', 'HAS_MUTTER338', '--define', 'HAS_MUTTER40', '--define', 'HAS_MUTTER41'] - endif - -+mutter42_dep = dependency('libmutter-10', version: ['>= 42', '< 43'], required: false) -+if mutter42_dep.found() -+ libmutter_dep = dependency('libmutter-10', version: '>= 42') -+ mutter_dep = [ -+ libmutter_dep, -+ dependency('mutter-cogl-10'), dependency('mutter-cogl-pango-10'), -+ dependency('mutter-clutter-10') -+ ] -+ vala_flags = ['--define', 'HAS_MUTTER338', '--define', 'HAS_MUTTER40', '--define', 'HAS_MUTTER41', '--define', 'HAS_MUTTER42'] -+endif -+ - if mutter_dep.length() == 0 - error ('No supported mutter library found!') - endif diff --git a/453.patch b/453.patch deleted file mode 100644 index ea50df0..0000000 --- a/453.patch +++ /dev/null @@ -1,582 +0,0 @@ -From 9a64bfe0d8844483d7ba8e412d8766f4bff8905a Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Corentin=20No=C3=ABl?= -Date: Tue, 26 Apr 2022 09:41:35 +0200 -Subject: [PATCH] Synchronize the .vapi with Gala - ---- - vapi/Clutter-10.metadata | 1 - - vapi/Meta-10.metadata | 10 +++++- - vapi/libmutter.vapi | 66 +++++++++++++++++++++++++----------- - vapi/mutter-clutter.vapi | 72 ++++++++++++++++++++++++++++++++++++++-- - vapi/mutter-cogl-6.vapi | 26 +++++++-------- - 5 files changed, 136 insertions(+), 39 deletions(-) - -diff --git a/vapi/Clutter-10.metadata b/vapi/Clutter-10.metadata -index 5b69ae58..516fc6fb 100644 ---- a/vapi/Clutter-10.metadata -+++ b/vapi/Clutter-10.metadata -@@ -123,7 +123,6 @@ FrameClock.new skip - StageView.layout skip - - Stage -- .event name="emit_event" - .paint_view.redraw_clip type="Cairo.Region" - - Capture -diff --git a/vapi/Meta-10.metadata b/vapi/Meta-10.metadata -index eaefc051..e4438413 100644 ---- a/vapi/Meta-10.metadata -+++ b/vapi/Meta-10.metadata -@@ -65,10 +65,10 @@ KeyHandlerFunc cheader_filename="meta/prefs.h" - KeyHandlerFunc.event type="Clutter.KeyEvent?" - KeyHandlerFunc.window nullable - LaunchContext cheader_filename="meta/meta-launch-context.h" -+Laters cheader_filename="meta/types.h" - LaterType cheader_filename="meta/util.h" - LocaleDirection cheader_filename="meta/util.h" - MaximizeFlags cheader_filename="meta/window.h" --ModalOptions cheader_filename="meta/meta-plugin.h" - MonitorManager cheader_filename="meta/meta-monitor-manager.h" - MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" - MotionDirection cheader_filename="meta/common.h" -@@ -123,6 +123,9 @@ WindowShape cheader_filename="meta/meta-window-shape.h" - WindowType cheader_filename="meta/window.h" - X11Display cheader_filename="meta/meta-x11-display.h" - -+// As per https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2287 -+MonitorManager.monitor_privacy_screen_changed skip -+ - rect skip - prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h" - -@@ -145,6 +148,11 @@ PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h" - VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h" - VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h" - -+Display.window_visibility_updated -+ .object name="unplaced" type="GLib.List" -+ .p0 name="should_show" type="GLib.List" -+ .p1 name="should_hide" type="GLib.List" -+ - add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" - bug parent="Meta.Util" cheader_filename="meta/util.h" - external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h" -diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi -index 5dacb629..5edcddb1 100644 ---- a/vapi/libmutter.vapi -+++ b/vapi/libmutter.vapi -@@ -316,6 +316,9 @@ namespace Meta { - public void destroy (); - public bool filter_keybinding (Meta.KeyBinding binding); - public void flash_display (Meta.Display display); -+#if HAS_MUTTER42 -+ public unowned Meta.Laters get_laters (); -+#endif - public void hide_tile_preview (); - public void hide_window (Meta.Window window, Meta.CompEffect effect); - public void manage (); -@@ -354,6 +357,10 @@ namespace Meta { - public unowned Meta.Display get_display (); - public bool is_replacing (); - public void notify_ready (); -+#if HAS_MUTTER42 -+ public bool raise_rlimit_nofile () throws GLib.Error; -+ public bool restore_rlimit_nofile () throws GLib.Error; -+#endif - public bool run_main_loop () throws GLib.Error; - public void set_gnome_wm_keybindings (string wm_keybindings); - public void set_plugin_gtype (GLib.Type plugin_gtype); -@@ -376,7 +383,7 @@ namespace Meta { - protected CursorTracker (); - public void get_hot (out int x, out int y); - #if HAS_MUTTER40 -- public void get_pointer (Graphene.Point coords, out Clutter.ModifierType mods); -+ public void get_pointer (out Graphene.Point coords, out Clutter.ModifierType mods); - #else - public void get_pointer (out int x, out int y, out Clutter.ModifierType mods); - #endif -@@ -511,6 +518,9 @@ namespace Meta { - 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); -+#if HAS_MUTTER42 -+ public signal void window_visibility_updated ([CCode (type = "gpointer")] GLib.List unplaced, [CCode (type = "gpointer")] GLib.List should_show, [CCode (type = "gpointer")] GLib.List should_hide); -+#endif - public signal void workareas_changed (); - public signal void x11_display_closing (); - public signal void x11_display_opened (); -@@ -562,6 +572,14 @@ namespace Meta { - [CCode (cheader_filename = "meta/keybindings.h", cname = "meta_keybindings_set_custom_handler")] - public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler); - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "meta/types.h", has_type_id = false)] -+ [Compact] -+ public class Laters { -+ public uint add (Meta.LaterType when, owned GLib.SourceFunc func); -+ public void remove (uint later_id); -+ } -+#endif - [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)] -@@ -607,7 +625,9 @@ namespace Meta { - public abstract class Plugin : GLib.Object { - [CCode (has_construct_function = false)] - protected Plugin (); -+#if !HAS_MUTTER42 - public bool begin_modal (Meta.ModalOptions options, uint32 timestamp); -+#endif - public void complete_display_change (bool ok); - [NoWrapper] - public virtual void confirm_display_change (); -@@ -618,7 +638,9 @@ namespace Meta { - [NoWrapper] - public virtual void destroy (Meta.WindowActor actor); - public void destroy_completed (Meta.WindowActor actor); -+#if !HAS_MUTTER42 - public void end_modal (uint32 timestamp); -+#endif - public unowned Meta.Display get_display (); - public unowned Meta.PluginInfo? get_info (); - [NoWrapper] -@@ -767,19 +789,19 @@ namespace Meta { - public unowned GLib.SList get_sequences (); - [NoAccessorMethod] - public Meta.Display display { owned get; construct; } -- public signal void changed ([CCode (type = "gpointer")] Meta.StartupSequence object); -+ public signal void changed (Meta.StartupSequence object); - } - [CCode (cheader_filename = "meta/meta-startup-notification.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 unowned string? get_application_id (); - public bool get_completed (); -- public unowned string get_icon_name (); -+ 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 unowned string? get_wmclass (); - public int get_workspace (); - public string application_id { get; construct; } - public string icon_name { get; construct; } -@@ -840,7 +862,7 @@ namespace Meta { - 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 unowned string? get_client_machine (); - public Meta.WindowClientType get_client_type (); - public unowned GLib.Object get_compositor_private (); - public unowned string get_description (); -@@ -849,32 +871,32 @@ namespace Meta { - public unowned Cairo.Region? get_frame_bounds (); - public Meta.Rectangle get_frame_rect (); - public Meta.FrameType get_frame_type (); -- public unowned Meta.Group get_group (); -- 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 unowned Meta.Group? get_group (); -+ 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 unowned string? get_mutter_hints (); - public int get_pid (); - public unowned string get_role (); -- public unowned string get_sandboxed_app_id (); -+ public unowned string? get_sandboxed_app_id (); - public uint get_stable_sequence (); -- public unowned string get_startup_id (); -+ 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 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 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); -@@ -1394,7 +1416,9 @@ namespace Meta { - public enum GrabOp { - NONE, - WINDOW_BASE, -+#if !HAS_MUTTER42 - COMPOSITOR, -+#endif - WAYLAND_POPUP, - FRAME_BUTTON, - MOVING, -@@ -1568,12 +1592,14 @@ namespace Meta { - VERTICAL, - BOTH - } -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "meta/meta-plugin.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")] - [Flags] - public enum ModalOptions { - POINTER_ALREADY_GRABBED, - KEYBOARD_ALREADY_GRABBED - } -+#endif - [CCode (cheader_filename = "meta/meta-monitor-manager.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")] - public enum MonitorSwitchConfigType { - ALL_MIRROR, -diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi -index 04307759..c2a63a09 100644 ---- a/vapi/mutter-clutter.vapi -+++ b/vapi/mutter-clutter.vapi -@@ -6312,6 +6312,16 @@ namespace Clutter { - public virtual signal void gesture_end (Clutter.Actor actor); - public virtual signal bool gesture_progress (Clutter.Actor actor); - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_grab_ref", type_id = "clutter_grab_get_type ()", unref_function = "clutter_grab_unref")] -+ [Compact] -+ public class Grab { -+ public void dismiss (); -+ public Clutter.GrabState get_seat_state (); -+ public unowned Clutter.Grab @ref (); -+ public void unref (); -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")] - [Version (since = "1.12")] - public class GridLayout : Clutter.LayoutManager { -@@ -6421,8 +6431,10 @@ namespace Clutter { - [Version (since = "1.6")] - public bool get_enabled (); - #endif -+#if !HAS_MUTTER42 - [Version (since = "1.10")] - public unowned Clutter.Actor get_grabbed_actor (); -+#endif - public virtual int get_group_n_modes (int group); - [Version (since = "1.6")] - public bool get_has_cursor (); -@@ -6430,7 +6442,9 @@ namespace Clutter { - [Version (since = "1.6")] - public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers); - public Clutter.InputDeviceMapping get_mapping_mode (); -+#endif - public int get_mode_switch_button_group (uint button); -+#if !HAS_MUTTER40 - [Version (since = "1.16")] - public Clutter.ModifierType get_modifier_state (); - #endif -@@ -6479,12 +6493,14 @@ namespace Clutter { - [Version (since = "1.10")] - public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode); - #endif -+#if !HAS_MUTTER42 - [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); -+#endif - #if !HAS_MUTTER40 - [Version (since = "1.6")] - public void set_enabled (bool enabled); -@@ -6492,8 +6508,10 @@ namespace Clutter { - public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers); - public void set_mapping_mode (Clutter.InputDeviceMapping mapping); - #endif -+#if !HAS_MUTTER42 - [Version (since = "1.10")] - public void ungrab (); -+#endif - #if !HAS_MUTTER40 - [Version (since = "1.2")] - public void update_from_event (Clutter.Event event, bool update_stage); -@@ -7185,6 +7203,10 @@ namespace Clutter { - public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types (); - #endif - public bool get_touch_mode (); -+#if HAS_MUTTER42 -+ [NoWrapper] -+ public virtual Clutter.GrabState grab (uint32 time); -+#endif - #if HAS_MUTTER40 - public virtual bool handle_event_post (Clutter.Event event); - #elif HAS_MUTTER338 -@@ -7204,6 +7226,10 @@ namespace Clutter { - #endif - public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type); - public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings); -+#if HAS_MUTTER42 -+ [NoWrapper] -+ public virtual void ungrab (uint32 time); -+#endif - public void uninhibit_unfocus (); - public virtual void warp_pointer (int x, int y); - #if !HAS_MUTTER42 -@@ -7327,7 +7353,9 @@ namespace Clutter { - public bool capture (bool paint, Cairo.RectangleInt rect, [CCode (array_length_cname = "out_n_captures", array_length_pos = 3.1)] out Clutter.Capture[] out_captures); - #endif - #if HAS_MUTTER40 -+#if !HAS_MUTTER42 - public void capture_into (Cairo.RectangleInt rect, float scale, uint8 data, int stride); -+#endif - public void capture_view_into (Clutter.StageView view, Cairo.RectangleInt rect, uint8 data, int stride); - #else - public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data); -@@ -7365,12 +7393,15 @@ namespace Clutter { - public int64 get_frame_counter (); - [Version (since = "0.6")] - public unowned Clutter.Actor get_key_focus (); -+#if HAS_MUTTER42 -+ public unowned Clutter.Actor get_grab_actor (); -+#endif - #if !HAS_MUTTER42 - [Version (since = "1.2")] - public void get_minimum_size (out uint width, out uint height); --#endif - [Version (since = "1.8")] - public bool get_motion_events_enabled (); -+#endif - public Clutter.Perspective get_perspective (); - #if !HAS_MUTTER338 - [Version (since = "1.8")] -@@ -7380,8 +7411,13 @@ namespace Clutter { - public bool get_throttle_motion_events (); - [Version (since = "0.4")] - public unowned string get_title (); -+#if HAS_MUTTER42 -+ public Clutter.Grab grab (Clutter.Actor actor); -+#endif -+#if !HAS_MUTTER42 - [Version (since = "1.2")] - public bool get_use_alpha (); -+#endif - #if HAS_MUTTER338 - public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; - #if HAS_MUTTER42 -@@ -7414,8 +7450,10 @@ namespace Clutter { - public void set_key_focus (Clutter.Actor? actor); - [Version (since = "1.2")] - public void set_minimum_size (uint width, uint height); -+#if !HAS_MUTTER42 - [Version (since = "1.8")] - public void set_motion_events_enabled (bool enabled); -+#endif - #if !HAS_MUTTER338 - public void set_perspective (Clutter.Perspective perspective); - #endif -@@ -7423,8 +7461,10 @@ namespace Clutter { - public void set_throttle_motion_events (bool throttle); - [Version (since = "0.4")] - public void set_title (string title); -+#if !HAS_MUTTER42 - [Version (since = "1.2")] - public void set_use_alpha (bool use_alpha); -+#endif - #if HAS_MUTTER42 - public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, Cairo.Region region, bool emit_crossing); - #elif HAS_MUTTER40 -@@ -8064,6 +8104,9 @@ namespace Clutter { - [CCode (has_construct_function = false)] - protected VirtualInputDevice (); - public int get_device_type (); -+#if HAS_MUTTER42 -+ public unowned Clutter.Seat get_seat (); -+#endif - 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); -@@ -8075,8 +8118,12 @@ namespace Clutter { - 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; } -+#if HAS_MUTTER42 -+ public Clutter.Seat seat { get; construct; } -+#else - [NoAccessorMethod] - public Clutter.Seat seat { owned get; construct; } -+#endif - } - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")] - [Version (since = "1.12")] -@@ -8649,6 +8696,9 @@ namespace Clutter { - FLAG_INPUT_METHOD, - #if HAS_MUTTER40 - FLAG_RELATIVE_MOTION, -+#endif -+#if HAS_MUTTER42 -+ FLAG_GRAB_NOTIFY, - #endif - FLAG_REPEATED - } -@@ -8747,6 +8797,16 @@ namespace Clutter { - AFTER, - BEFORE - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAB_STATE_", type_id = "clutter_grab_state_get_type ()")] -+ [Flags] -+ public enum GrabState { -+ NONE, -+ POINTER, -+ KEYBOARD, -+ ALL -+ } -+#endif - [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 { -@@ -9300,13 +9360,13 @@ namespace Clutter { - BOTH - } - #endif -- [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")] -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_", type_id = "clutter_image_error_get_type ()")] - [Version (since = "1.10")] - public errordomain ImageError { - DATA; - public static GLib.Quark quark (); - } -- [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")] -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_", type_id = "clutter_script_error_get_type ()")] - [Version (since = "0.6")] - public errordomain ScriptError { - TYPE_FUNCTION, -@@ -9360,8 +9420,10 @@ namespace Clutter { - [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")] - [Version (since = "0.8")] - public const int PRIORITY_REDRAW; -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "clutter/clutter.h")] - public static void base_init (); -+#endif - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "1.12")] - public static void cairo_clear (Cairo.Context cr); -@@ -9402,9 +9464,11 @@ namespace Clutter { - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "0.4")] - public static unowned Clutter.Backend get_default_backend (); -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "0.6")] - public static uint get_default_frame_rate (); -+#endif - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "1.2")] - public static Clutter.TextDirection get_default_text_direction (); -@@ -9441,8 +9505,10 @@ namespace Clutter { - [CCode (cheader_filename = "clutter/clutter.h")] - public static void main_quit (); - #endif -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "clutter/clutter.h")] - public static void set_custom_backend_func (void* func); -+#endif - [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.vapi b/vapi/mutter-cogl-6.vapi -index 526bb415..89a1169e 100644 ---- a/vapi/mutter-cogl-6.vapi -+++ b/vapi/mutter-cogl-6.vapi -@@ -1136,8 +1136,6 @@ namespace Cogl { - #if HAS_MUTTER42 - [CCode (cname = "COGL_FEATURE_ID_TIMESTAMP_QUERY")] - OGL_FEATURE_ID_TIMESTAMP_QUERY, -- [CCode (cname = "COGL_FEATURE_ID_GET_GPU_TIME")] -- OGL_FEATURE_ID_GET_GPU_TIME, - #endif - [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] - OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL -@@ -1369,7 +1367,7 @@ namespace Cogl { - SYNC_AND_COMPLETE_EVENT, - N_FEATURES - } -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)] - [Version (since = "1.4")] - public errordomain BitmapError { - FAILED, -@@ -1377,7 +1375,7 @@ namespace Cogl { - CORRUPT_IMAGE; - public static uint32 quark (); - } -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)] - [Version (since = "1.0")] - public errordomain BlendStringError { - PARSE_ERROR, -@@ -1387,13 +1385,18 @@ namespace Cogl { - [CCode (cheader_filename = "cogl/cogl.h")] - public static uint32 quark (); - } -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)] - public errordomain FramebufferError { - [CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")] - FRAMEBUFFER_ERROR_ALLOCATE - } -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)] -+ public errordomain RendererError { -+ XLIB_DISPLAY_OPEN, -+ BAD_CONSTRAINT -+ } - #if HAS_MUTTER40 -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SCANOUT_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SCANOUT_ERROR_", has_type_id = false)] - public errordomain ScanoutError { - [CCode (cname = "COGL_SCANOUT_ERROR_INHIBITED")] - SCANOUT_ERROR_INHIBITED; -@@ -1401,18 +1404,13 @@ namespace Cogl { - public static GLib.Quark quark (); - } - #endif -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_")] -- public errordomain RendererError { -- XLIB_DISPLAY_OPEN, -- BAD_CONSTRAINT -- } -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)] - [Version (since = "1.4")] - public errordomain SystemError { - UNSUPPORTED, - NO_MEMORY - } -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)] - [Version (since = "1.8")] - public errordomain TextureError { - SIZE, -@@ -1464,7 +1462,7 @@ namespace Cogl { - [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; -+ public static bool blit_framebuffer (Cogl.Framebuffer framebuffer, Cogl.Framebuffer dst, 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); - #if !HAS_MUTTER40 diff --git a/changelog b/changelog deleted file mode 100644 index 10640c4..0000000 --- a/changelog +++ /dev/null @@ -1,170 +0,0 @@ -* Fri Jul 23 2021 Fedora Release Engineering - 3.0.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 -- Update to version 3.0.0. - -* Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 -- Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. -- Rebuilt for granite 6 soname bump. - -* Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 -- Add patch for initial mutter 3.38 support. - -* Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 -- Update to version 2.3.2. - -* Fri May 01 2020 Fabio Valentini - 2.3.1-3 -- Obsolete the retired wingpanel-indicator-ayatana package. - -* Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 -- Rebuild for gala 3.3.0 and mutter 3.36. - -* Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 -- Update to version 2.3.1. - -* Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 -- Bump to commit 88305e0. - -* Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 -- Update to version 2.3.0. - -* Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 -- Update to version 2.2.6. - -* Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 -- Update to version 2.2.5. - -* Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 -- Update to version 2.2.4. - -* Tue Apr 16 2019 Adam Williamson - 2.2.3-2 -- Rebuild with Meson fix for #1699099 - -* Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 -- Update to version 2.2.3. - -* Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Jan 18 2019 Fabio Valentini - 2.2.2-1 -- Update to version 2.2.2. - -* Thu Dec 20 2018 Fabio Valentini - 2.2.1-1 -- Update to version 2.2.1. - -* Fri Oct 05 2018 Fabio Valentini - 2.2.0-1 -- Update to version 2.2.0. - -* Sun Sep 09 2018 Fabio Valentini - 2.1.1-4 -- Rebuild for gala mutter328 support. - -* Sat Jul 14 2018 Fedora Release Engineering - 2.1.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed Jul 11 2018 Fabio Valentini - 2.1.1-2 -- Add missing BR: gcc, gcc-c++. - -* Fri Jul 06 2018 Fabio Valentini - 2.1.1-1 -- Update to version 2.1.1. - -* Wed Jun 13 2018 Fabio Valentini - 2.1.0-2 -- Rebuild for granite5 soname bump. - -* Thu Jun 07 2018 Fabio Valentini - 2.1.0-1 -- Update to version 2.1.0. - -* Tue Mar 13 2018 Fabio Valentini - 2.0.4-6 -- Add patch to support and bump release for mutter 3.28. - -* Fri Feb 09 2018 Fedora Release Engineering - 2.0.4-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Tue Jan 23 2018 Fabio Valentini - 2.0.4-4 -- Include upstream patch to fix undefined symbols. - -* Sat Jan 06 2018 Fabio Valentini - 2.0.4-3 -- Remove icon cache scriptlets, replaced by file triggers. - -* Sat Nov 04 2017 Fabio Valentini - 2.0.4-2 -- Rebuild for granite soname bump. - -* Wed Sep 13 2017 Fabio Valentini - 2.0.4-1 -- Update to version 2.0.4. - -* Mon Sep 04 2017 Fabio Valentini - 2.0.3-5.20170902.git434f674 -- Bump to commit 434f674, which includes fixes for the latest mutter. - -* Sat Sep 02 2017 Fabio Valentini - 2.0.3-4.20170901.git7a1a583 -- Bump to commit 7a1a583, which includes support for the latest mutter. - -* Thu Aug 03 2017 Fedora Release Engineering - 2.0.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 2.0.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Tue May 30 2017 Fabio Valentini - 2.0.3-1 -- Update to version 2.0.3. - -* Sat Apr 08 2017 Fabio Valentini - 2.0.2-2 -- Create and own missing settings directory. - -* Fri Mar 17 2017 Fabio Valentini - 2.0.2-1 -- Update to version 2.0.2. -- Remove upstreamed patches. - -* Wed Feb 22 2017 Fabio Valentini - 2.0.1-12 -- Rebuild for new gala snapshot. - -* Sat Feb 11 2017 Fedora Release Engineering - 2.0.1-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Wed Jan 11 2017 Fabio Valentini - 2.0.1-10 -- Add patch to fix pkgconfig file. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-9 -- Create and own plugin directory. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-8 -- Split off -libs subpackage. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-7 -- Don't let COPYING be executable. - -* Fri Jan 06 2017 Fabio Valentini - 2.0.1-6 -- Clean up spec file. - -* Thu Nov 17 2016 Fabio Valentini - 2.0.1-5 -- Add rpath workaround for f25. - -* Thu Sep 29 2016 Fabio Valentini - 2.0.1-4 -- Mass rebuild. - -* Wed Sep 28 2016 Fabio Valentini - 2.0.1-3 -- Spec file cleanups. - -* Mon Sep 19 2016 Fabio Valentini - 2.0.1-2 -- Spec file cosmetics. - -* Sun Aug 21 2016 Fabio Valentini - 2.0.1-1 -- Update to version 2.0.1. - -* Fri Aug 19 2016 Fabio Valentini - 0.4-1 -- Update to version 0.4. diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..43a9af6 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +remove package (temporarily) due to unresolved issues with GNOME 43 diff --git a/sources b/sources deleted file mode 100644 index 0552b68..0000000 --- a/sources +++ /dev/null @@ -1 +0,0 @@ -SHA512 (wingpanel-3.0.2.tar.gz) = 31e8584e3e243fcfc344d4f264f284d81fbc56bc08f3e75475946f78c504da74f8a8e3d53155d1238ab7398e02d1532f87790cb51bd59469ffd360e21a509c53 diff --git a/wingpanel.rpmlintrc b/wingpanel.rpmlintrc deleted file mode 100644 index 80b3bf5..0000000 --- a/wingpanel.rpmlintrc +++ /dev/null @@ -1,6 +0,0 @@ -# false positives -addFilter("E: invalid-lc-messages-dir /usr/share/locale/bh*") -addFilter("E: invalid-lc-messages-dir /usr/share/locale/mo*") - -# don't care about manpages -addFilter("W: no-manual-page-for-binary wingpanel*") diff --git a/wingpanel.spec b/wingpanel.spec deleted file mode 100644 index 5f274af..0000000 --- a/wingpanel.spec +++ /dev/null @@ -1,130 +0,0 @@ -%global appname io.elementary.wingpanel - -%global common_description %{expand: -Stylish top panel that holds indicators and spawns an application -launcher.} - -Name: wingpanel -Summary: Stylish top panel -Version: 3.0.2 -Release: %autorelease -License: GPLv2+ - -URL: https://github.com/elementary/wingpanel -Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz - -# merged PR for mutter 42 / libmutter-10 support -Patch0: %{url}/pull/434.patch -# merged PR to support latest mutter / gala changes -Patch1: %{url}/pull/453.patch - -BuildRequires: desktop-file-utils -BuildRequires: gettext -BuildRequires: libappstream-glib -BuildRequires: meson -BuildRequires: vala >= 0.24.0 - -BuildRequires: mesa-libEGL-devel - -BuildRequires: pkgconfig(gala) -BuildRequires: pkgconfig(gdk-x11-3.0) -BuildRequires: pkgconfig(gee-0.8) -BuildRequires: pkgconfig(glib-2.0) >= 2.32 -BuildRequires: pkgconfig(granite) >= 5.4.0 -BuildRequires: pkgconfig(gtk+-3.0) >= 3.10 -BuildRequires: pkgconfig(mutter-clutter-10) -BuildRequires: pkgconfig(mutter-cogl-10) -BuildRequires: pkgconfig(mutter-cogl-pango-10) - -Requires: %{name}-libs%{?_isa} = %{version}-%{release} - -# wingpanel ayatana appindicator support was abandoned by upstream -# wingpanel-indicator-ayatana-2.0.3-10.fc32 retired for fedora 33+ -Obsoletes: wingpanel-indicator-ayatana < 2.0.3-11 - -%description %{common_description} - - -%package libs -Summary: Stylish top panel (shared library) - -%description libs %{common_description} - -This package contains the shared library. - - -%package devel -Summary: Stylish top panel (development files) -Requires: %{name}-libs%{?_isa} = %{version}-%{release} - -%description devel %{common_description} - -This package contains the files required for developing for wingpanel. - - -%prep -%autosetup -p1 - - -%build -%meson -%meson_build - - -%install -%meson_install - -%find_lang %{appname} - -# create plugin directory -mkdir -p %{buildroot}/%{_libdir}/wingpanel - -# create settings directory -mkdir -p %{buildroot}/%{_sysconfdir}/wingpanel.d - - -%check -desktop-file-validate \ - %{buildroot}/%{_datadir}/applications/%{appname}.desktop - -desktop-file-validate \ - %{buildroot}/%{_sysconfdir}/xdg/autostart/%{appname}.desktop - -appstream-util validate-relax --nonet \ - %{buildroot}/%{_datadir}/metainfo/%{appname}.appdata.xml - - -%files -f %{appname}.lang -%config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}.desktop - -%{_bindir}/%{appname} - -%{_libdir}/gala/plugins/libwingpanel-interface.so - -%{_datadir}/applications/%{appname}.desktop -%{_datadir}/glib-2.0/schemas/io.elementary.desktop.wingpanel.gschema.xml -%{_datadir}/icons/hicolor/scalable/apps/%{appname}.svg -%{_datadir}/metainfo/%{appname}.appdata.xml - -%files libs -%license COPYING -%doc README.md - -%dir %{_sysconfdir}/wingpanel.d -%dir %{_libdir}/wingpanel - -%{_libdir}/libwingpanel.so.3 -%{_libdir}/libwingpanel.so.3.* - -%files devel -%{_includedir}/wingpanel/ - -%{_libdir}/libwingpanel.so -%{_libdir}/pkgconfig/wingpanel.pc - -%{_datadir}/vala/vapi/wingpanel.deps -%{_datadir}/vala/vapi/wingpanel.vapi - - -%changelog -%autochangelog From 68e02c74ef9d70530192b1da84b325e05e93bb80 Mon Sep 17 00:00:00 2001 From: Tomas Hrcka Date: Tue, 19 Dec 2023 13:27:46 +0100 Subject: [PATCH 30/44] Unretirement request: https://pagure.io/releng/issue/11841 --- .gitignore | 26 + 434.patch | 1993 +++++++++++++++++++++++++++++++++++++++++++ 453.patch | 582 +++++++++++++ changelog | 170 ++++ dead.package | 1 - sources | 1 + wingpanel.rpmlintrc | 6 + wingpanel.spec | 130 +++ 8 files changed, 2908 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 434.patch create mode 100644 453.patch create mode 100644 changelog delete mode 100644 dead.package create mode 100644 sources create mode 100644 wingpanel.rpmlintrc create mode 100644 wingpanel.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8116fdb --- /dev/null +++ b/.gitignore @@ -0,0 +1,26 @@ +/results_* +/*.src.rpm + +/wingpanel-2.0.1.tar.xz +/wingpanel-2.0.2.tar.xz +/wingpanel-2.0.3.tar.gz +/wingpanel-2.0.3-7a1a583.tar.gz +/wingpanel-2.0.3-434f674.tar.gz +/wingpanel-2.0.4.tar.gz +/wingpanel-2.1.0.tar.gz +/wingpanel-2.1.1.tar.gz +/wingpanel-2.2.0.tar.gz +/wingpanel-2.2.1.tar.gz +/wingpanel-2.2.2.tar.gz +/wingpanel-2.2.3.tar.gz +/wingpanel-2.2.4.tar.gz +/wingpanel-2.2.5.tar.gz +/wingpanel-2.2.6.tar.gz +/wingpanel-2.3.0.tar.gz +/wingpanel-88305e0.tar.gz +/wingpanel-2.3.1.tar.gz +/wingpanel-2.3.2.tar.gz +/wingpanel-db24c73.tar.gz +/wingpanel-3.0.0.tar.gz +/wingpanel-3.0.1.tar.gz +/wingpanel-3.0.2.tar.gz diff --git a/434.patch b/434.patch new file mode 100644 index 0000000..bd4bab1 --- /dev/null +++ b/434.patch @@ -0,0 +1,1993 @@ +From 3cb4daa89a04f0f134679229d9dc4c9b1638a12f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Corentin=20No=C3=ABl?= +Date: Tue, 18 Jan 2022 19:45:40 +0100 +Subject: [PATCH] Add support for Mutter 42 + +--- + vapi/Clutter-10-custom.vala | 53 +++++++++ + vapi/Clutter-10.metadata | 192 ++++++++++++++++++++++++++++++++ + vapi/Clutter-9-custom.vala | 23 ++++ + vapi/Clutter-9.metadata | 19 +++- + vapi/Cogl-10-custom.vala | 161 ++++++++++++++++++++++++++ + vapi/Cogl-10.metadata | 68 +++++++++++ + vapi/Meta-10.metadata | 181 ++++++++++++++++++++++++++++++ + vapi/config.vapi | 2 + + vapi/libmutter-10.deps | 1 + + vapi/libmutter-10.vapi | 1 + + vapi/libmutter.vapi | 46 +++++++- + vapi/libsystemd.vapi | 18 +++ + vapi/meson.build | 69 ++++++++++++ + vapi/mutter-clutter-10.deps | 6 + + vapi/mutter-clutter-10.vapi | 1 + + vapi/mutter-clutter-9.deps | 2 +- + vapi/mutter-clutter.vapi | 184 +++++++++++++++++++++++++----- + vapi/mutter-cogl-10.deps | 1 + + vapi/mutter-cogl-10.vapi | 1 + + vapi/mutter-cogl-6.vapi | 77 ++++++++++++- + vapi/mutter-cogl-pango-10.vapi | 1 + + wingpanel-interface/meson.build | 11 ++ + 22 files changed, 1080 insertions(+), 38 deletions(-) + create mode 100644 vapi/Clutter-10-custom.vala + create mode 100644 vapi/Clutter-10.metadata + create mode 100644 vapi/Cogl-10-custom.vala + create mode 100644 vapi/Cogl-10.metadata + create mode 100644 vapi/Meta-10.metadata + create mode 120000 vapi/libmutter-10.deps + create mode 120000 vapi/libmutter-10.vapi + create mode 100644 vapi/libsystemd.vapi + create mode 100644 vapi/mutter-clutter-10.deps + create mode 120000 vapi/mutter-clutter-10.vapi + create mode 120000 vapi/mutter-cogl-10.deps + create mode 120000 vapi/mutter-cogl-10.vapi + create mode 120000 vapi/mutter-cogl-pango-10.vapi + +diff --git a/vapi/Clutter-10-custom.vala b/vapi/Clutter-10-custom.vala +new file mode 100644 +index 00000000..e5c71c2d +--- /dev/null ++++ b/vapi/Clutter-10-custom.vala +@@ -0,0 +1,53 @@ ++namespace Clutter { ++ public struct Color { ++ [CCode (cname = "_vala_clutter_color_from_hls")] ++ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_hls (hue, luminance, saturation); ++ return color; ++ } ++ [CCode (cname = "_vala_clutter_color_from_pixel")] ++ public static Clutter.Color? from_pixel (uint32 pixel) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_pixel (pixel); ++ return color; ++ } ++ [CCode (cname = "_vala_clutter_color_from_string")] ++ public static Clutter.Color? from_string (string str) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_string (str); ++ return color; ++ } ++ [CCode (cname = "clutter_color_from_string")] ++ public bool parse_string (string str); ++ } ++ ++ 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 (); ++ } ++ ++ 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); ++ } ++ ++ [CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)] ++ public struct Capture { ++ } ++} +diff --git a/vapi/Clutter-10.metadata b/vapi/Clutter-10.metadata +new file mode 100644 +index 00000000..5b69ae58 +--- /dev/null ++++ b/vapi/Clutter-10.metadata +@@ -0,0 +1,192 @@ ++// Non mini-object ++ActorBox struct ++Color struct ++Knot struct ++Margin struct ++PaintVolume struct ++PathNode struct ++Perspective struct ++Units struct ++ ++*.ref unowned ++ ++Actor ++ .apply_transform.matrix ref ++ .get_abs_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" ++ScriptError errordomain ++ImageError errordomain ++ ++// 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#virtual_method name="get_paint_volume_vfunc" ++ .get_paint_volume#virtual_method.volume out ++Container ++ .add_actor skip=false ++ .class_* skip ++Text ++ .activate#method name="try_activate" ++ .insert_text#signal skip ++TextBuffer.get_text#virtual_method name="get_text_with_length" ++ ++// virtual/abstract distinction ++Container ++ .*_child_meta#virtual_method virtual ++ ++// Default values ++Stage.read_pixels ++ .width default=-1 ++ .height default=-1 ++Stage.paint_to_buffer ++ .data type="uint8[]" ++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 ++Backend ++ .get_cogl_context skip=false ++Container ++ .child_get skip=false ++ .child_set skip=false ++ .remove 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 ++ ++// Skipped upstream for unknown reasons ++Interval.register_progress_func 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 ++Margin ++ .new skip ++ ++// Class methods ++container_class_find_child_property skip ++container_class_list_child_properties skip ++ ++// Move symbols ++units_from_* skip ++ ++// Struct return values ++color_get_static nullable ++ ++// Upstream ++Event ++ .get_position.position out ++ ++FrameListenerIface skip ++FrameClock.new skip ++ ++// Remove for clutter-2.0 ++///////////////////////// ++ ++StageView.layout skip ++ ++Stage ++ .event name="emit_event" ++ .paint_view.redraw_clip type="Cairo.Region" ++ ++Capture ++ .image type="Cairo.ImageSurface" ++ ++// *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" ++DeviceEvent struct=false base_type="Clutter.Event" ++IMEvent struct=false base_type="Clutter.Event" ++KeyEvent struct=false base_type="Clutter.Event" ++MotionEvent struct=false base_type="Clutter.Event" ++PadButtonEvent struct=false base_type="Clutter.Event" ++PadRingEvent struct=false base_type="Clutter.Event" ++PadStripEvent struct=false base_type="Clutter.Event" ++ProximityEvent struct=false base_type="Clutter.Event" ++ScrollEvent struct=false base_type="Clutter.Event" ++TouchEvent struct=false base_type="Clutter.Event" ++TouchpadHoldEvent 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" ++ ++Color.from_hls name="init_from_hls" ++Color.from_pixel name="init_from_pixel" ++Color.from_string name="init_from_string" ++ ++Color.new name="from_rgba" symbol_type="function" ++ .alpha default=0 ++ .blue default=0 ++ .green default=0 ++ .red default=0 ++ ++Color.init ++ .alpha default=0 ++ .blue default=0 ++ .green default=0 ++ .red default=0 ++ ++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/Clutter-9-custom.vala b/vapi/Clutter-9-custom.vala +index abc9b22d..e5c71c2d 100644 +--- a/vapi/Clutter-9-custom.vala ++++ b/vapi/Clutter-9-custom.vala +@@ -1,4 +1,27 @@ + namespace Clutter { ++ public struct Color { ++ [CCode (cname = "_vala_clutter_color_from_hls")] ++ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_hls (hue, luminance, saturation); ++ return color; ++ } ++ [CCode (cname = "_vala_clutter_color_from_pixel")] ++ public static Clutter.Color? from_pixel (uint32 pixel) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_pixel (pixel); ++ return color; ++ } ++ [CCode (cname = "_vala_clutter_color_from_string")] ++ public static Clutter.Color? from_string (string str) { ++ var color = Clutter.Color.alloc (); ++ color.init_from_string (str); ++ return color; ++ } ++ [CCode (cname = "clutter_color_from_string")] ++ public bool parse_string (string str); ++ } ++ + public interface Container : GLib.Object { + public void add (params Clutter.Actor[] actors); + [CCode (cname = "clutter_container_class_find_child_property")] +diff --git a/vapi/Clutter-9.metadata b/vapi/Clutter-9.metadata +index 7955ad82..0750e787 100644 +--- a/vapi/Clutter-9.metadata ++++ b/vapi/Clutter-9.metadata +@@ -106,8 +106,6 @@ ActorBox + .new skip + .from_vertices skip + Units.from_* skip +-Color +- .new skip + Margin + .new skip + +@@ -116,7 +114,6 @@ container_class_find_child_property skip + container_class_list_child_properties skip + + // Move symbols +-color_from_* skip + units_from_* skip + + // Struct return values +@@ -178,6 +175,22 @@ threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout" + // Backwards compatibility + Color.alloc symbol_type="function" + ++Color.from_hls name="init_from_hls" ++Color.from_pixel name="init_from_pixel" ++Color.from_string name="init_from_string" ++ ++Color.new name="from_rgba" symbol_type="function" ++ .alpha default=0 ++ .blue default=0 ++ .green default=0 ++ .red default=0 ++ ++Color.init ++ .alpha default=0 ++ .blue default=0 ++ .green default=0 ++ .red default=0 ++ + BinAlignment deprecated=false deprecated_since=null + BinAlignment.* deprecated + BinAlignment.start deprecated=false +diff --git a/vapi/Cogl-10-custom.vala b/vapi/Cogl-10-custom.vala +new file mode 100644 +index 00000000..f6034717 +--- /dev/null ++++ b/vapi/Cogl-10-custom.vala +@@ -0,0 +1,161 @@ ++namespace Cogl { ++ public struct Color { ++ [Version (since = "1.4")] ++ [CCode (cname="cogl_color_init_from_4f")] ++ public Color.from_4f (float red, float green, float blue, float alpha); ++ [Version (since = "1.4")] ++ [CCode (cname="cogl_color_init_from_4fv")] ++ public Color.from_4fv (float color_array); ++ [Version (since = "1.4")] ++ [CCode (cname="cogl_color_init_from_4ub")] ++ public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha); ++ [Version (since = "1.16")] ++ [CCode (cname="cogl_color_init_from_hsl")] ++ public Color.from_hsl (float hue, float saturation, float luminance); ++ } ++ ++ [Compact] ++ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] ++ public class Shader : Cogl.Handle { ++ } ++ ++ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")] ++ public class Primitive : Cogl.Object { ++ [CCode (has_construct_function = false)] ++ protected Primitive (); ++ [Version (since = "1.10")] ++ public Cogl.Primitive copy (); ++ [Version (since = "1.16")] ++ public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline); ++ public int get_first_vertex (); ++ public Cogl.VerticesMode get_mode (); ++ [Version (since = "1.8")] ++ public int get_n_vertices (); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data); ++ [CCode (has_construct_function = false)] ++ [Version (since = "1.6")] ++ public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data); ++ public void set_first_vertex (int first_vertex); ++ public void set_mode (Cogl.VerticesMode mode); ++ [Version (since = "1.8")] ++ public void set_n_vertices (int n_vertices); ++ } ++ ++ [Compact] ++ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] ++ public class Program : Cogl.Handle { ++ } ++ ++ [Compact] ++ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] ++ public class Handle { ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")] ++ [Version (deprecated = true, deprecated_since = "1.16")] ++ public bool is_material (); ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")] ++ [Version (deprecated = true, deprecated_since = "1.16")] ++ public bool is_program (Cogl.Handle handle); ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")] ++ [Version (deprecated = true, deprecated_since = "1.16")] ++ public bool is_shader (); ++ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")] ++ public bool is_texture (); ++ } ++ ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2 { ++ public float x; ++ public float y; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2C4 { ++ public float x; ++ public float y; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2T2 { ++ public float x; ++ public float y; ++ public float s; ++ public float t; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP2T2C4 { ++ public float x; ++ public float y; ++ public float s; ++ public float t; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3 { ++ public float x; ++ public float y; ++ public float z; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3C4 { ++ public float x; ++ public float y; ++ public float z; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3T2 { ++ public float x; ++ public float y; ++ public float z; ++ public float s; ++ public float t; ++ } ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Version (since = "1.6")] ++ public struct VertexP3T2C4 { ++ public float x; ++ public float y; ++ public float z; ++ public float s; ++ public float t; ++ public uint8 r; ++ public uint8 g; ++ public uint8 b; ++ public uint8 a; ++ } ++} +diff --git a/vapi/Cogl-10.metadata b/vapi/Cogl-10.metadata +new file mode 100644 +index 00000000..06197be7 +--- /dev/null ++++ b/vapi/Cogl-10.metadata +@@ -0,0 +1,68 @@ ++* cheader_filename="cogl/cogl.h" ++ ++Color struct ++ ++_ColorSizeCheck skip ++_TextureVertexSizeCheck skip ++ ++Color.equal.v1 type="Cogl.Color" ++Color.equal.v2 type="Cogl.Color" ++color_equal skip ++ ++Context.free_timestamp_query.query owned ++ ++texture_new_* name="texture_new_(.+)" parent="Cogl.Texture" ++Texture ++ .get_data.data type="uint8[]" ++ .new_from_data.data type="uint8[]" ++ .set_data.data type="uint8[]" ++ .set_region.data type="uint8[]" ++ ++Texture2D ++ .new_from_data skip=false ++ .new_from_data.data array=true ++ ++shader_* name="shader_(.+)" parent="Cogl.Shader" ++shader_* symbol_type="method" instance_idx=0 ++ ++program_* name="program_(.+)" parent="Cogl.Program" ++program_attach_shader symbol_type="method" instance_idx=0 ++program_get_uniform_location symbol_type="method" instance_idx=0 ++program_link symbol_type="method" instance_idx=0 ++program_set_uniform_1f symbol_type="method" instance_idx=0 ++program_set_uniform_1i symbol_type="method" instance_idx=0 ++program_set_uniform_float symbol_type="method" instance_idx=0 ++program_set_uniform_int symbol_type="method" instance_idx=0 ++program_set_uniform_matrix symbol_type="method" instance_idx=0 ++ ++is_bitmap parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_program parent="Cogl.Handle" ++is_shader parent="Cogl.Handle" ++is_texture parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_context parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_framebuffer parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_frame_info parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_pipeline parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_texture_2d parent="Cogl.Object" symbol_type="method" instance_idx=0 ++is_texture_2d_sliced parent="Cogl.Object" symbol_type="method" instance_idx=0 ++ ++create_program type="unowned Cogl.Program" name="create" parent="Cogl.Program" ++create_shader type="unowned Cogl.Shader" name="create" parent="Cogl.Shader" ++ ++foreach_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 ++get_graphics_reset_status parent="Cogl.Context" symbol_type="method" instance_idx=0 ++has_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 ++ ++Bitmap.error_quark parent="Cogl.BitmapError" name="quark" ++Texture.error_quark parent="Cogl.TextureError" name="quark" ++texture_error_quark skip ++Scanout.error_quark parent="Cogl.ScanoutError" name="quark" ++scanout_error_quark skip ++ ++BitmapError errordomain ++BlendStringError errordomain ++RendererError errordomain ++SystemError errordomain ++TextureError errordomain ++FramebufferError errordomain ++ScanoutError errordomain +diff --git a/vapi/Meta-10.metadata b/vapi/Meta-10.metadata +new file mode 100644 +index 00000000..eaefc051 +--- /dev/null ++++ b/vapi/Meta-10.metadata +@@ -0,0 +1,181 @@ ++* skip=false ++*.* skip=false ++* cheader_filename="meta/main.h" ++ ++Backend cheader_filename="meta/meta-backend.h" ++Backend.gpu_added skip ++get_backend parent="Meta.Backend" cheader_filename="meta/meta-backend.h" ++Background cheader_filename="meta/meta-background.h" ++Background.set_file.file nullable ++BackgroundContent.new symbol_type="constructor" ++BackgroundActor cheader_filename="meta/meta-background-actor.h" ++BackgroundContent cheader_filename="meta/meta-background-content.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" ++BarrierDirection cheader_filename="meta/barrier.h" ++BarrierEvent cheader_filename="meta/barrier.h" ++ButtonFunction cheader_filename="meta/common.h" ++ButtonLayout cheader_filename="meta/common.h" ++Compositor cheader_filename="meta/compositor.h" ++Compositor.sync_stack.stack type_arguments="Meta.Window" ++get_feedback_group_for_display parent="Meta.Display" symbol_type="method" name="get_feedback_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++get_stage_for_display parent="Meta.Display" symbol_type="method" name="get_stage" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++get_top_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_top_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++get_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++disable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="disable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++enable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="enable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++ ++get_window_actors parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" type_arguments="Meta.WindowActor" ++focus_stage_window parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++ ++CompEffect cheader_filename="meta/compositor.h" ++CloseDialog cheader_filename="meta/meta-close-dialog.h" ++CloseDialogResponse cheader_filename="meta/meta-close-dialog.h" ++Context cheader_filename="meta/meta-context.h" ++Cursor cheader_filename="meta/common.h" ++CursorTracker cheader_filename="meta/meta-cursor-tracker.h" ++CursorTracker.get_for_display parent="Meta.Display" symbol_type="method" instance_idx=0 name="get_cursor_tracker" ++CursorTracker.get_pointer.mods out ++DebugTopic cheader_filename="meta/util.h" ++Direction cheader_filename="meta/common.h" ++Display cheader_filename="meta/display.h" ++DisplayCorner cheader_filename="meta/display.h" ++DisplayDirection cheader_filename="meta/display.h" ++Dnd cheader_filename="meta/meta-dnd.h" ++EdgeType cheader_filename="meta/boxes.h" ++Edge cheader_filename="meta/boxes.h" ++Frame cheader_filename="meta/types.h" ++FrameBorders cheader_filename="meta/common.h" ++FrameFlags cheader_filename="meta/common.h" ++FrameType cheader_filename="meta/common.h" ++GrabOp cheader_filename="meta/common.h" ++Group cheader_filename="meta/group.h" ++Group.property_notify.event type="X.Event" ref ++IdleMonitor cheader_filename="meta/meta-idle-monitor.h" ++IdleMonitorWatchFunc cheader_filename="meta/meta-idle-monitor.h" ++InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" ++InhibitShortcutsDialogResponse cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" ++KeyBinding cheader_filename="meta/keybindings.h" ++keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler" cheader_filename="meta/keybindings.h" ++KeyBindingAction cheader_filename="meta/prefs.h" ++KeyBindingFlags cheader_filename="meta/prefs.h" ++KeyHandlerFunc cheader_filename="meta/prefs.h" ++KeyHandlerFunc.event type="Clutter.KeyEvent?" ++KeyHandlerFunc.window nullable ++LaunchContext cheader_filename="meta/meta-launch-context.h" ++LaterType cheader_filename="meta/util.h" ++LocaleDirection cheader_filename="meta/util.h" ++MaximizeFlags cheader_filename="meta/window.h" ++ModalOptions cheader_filename="meta/meta-plugin.h" ++MonitorManager cheader_filename="meta/meta-monitor-manager.h" ++MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" ++MotionDirection cheader_filename="meta/common.h" ++PadActionType cheader_filename="meta/display.h" ++Plugin cheader_filename="meta/meta-plugin.h" ++Plugin.xevent_filter.event type="X.Event" ref ++PluginInfo cheader_filename="meta/meta-plugin.h" ++Preference cheader_filename="meta/prefs.h" ++PrefsChangedFunc cheader_filename="meta/prefs.h" ++Rectangle cheader_filename="meta/boxes.h" struct ++RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h" ++RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h" ++Selection cheader_filename="meta/meta-selection.h" ++SelectionSource cheader_filename="meta/meta-selection-source.h" ++SelectionSourceMemory cheader_filename="meta/meta-selection-source-memory.h" ++SelectionType cheader_filename="meta/meta-selection-source.h" ++Settings cheader_filename="meta/meta-settings.h" ++Shadow cheader_filename="meta/meta-shadow-factory.h" ++ShadowFactory cheader_filename="meta/meta-shadow-factory.h" ++ShadowMode cheader_filename="meta/meta-window-actor.h" ++ShadowParams cheader_filename="meta/meta-shadow-factory.h" ++ShapedTexture cheader_filename="meta/meta-shaped-texture.h" ++Side cheader_filename="meta/common.h" ++SizeChange cheader_filename="meta/compositor.h" ++SoundPlayer cheader_filename="meta/meta-sound-player.h" ++StartupNotification cheader_filename="meta/meta-startup-notification.h" ++StartupNotification.changed.object type="Meta.StartupSequence" ++StartupNotification.get_sequences type_arguments="Meta.StartupSequence" ++StartupSequence cheader_filename="meta/meta-startup-notification.h" ++StackLayer cheader_filename="meta/common.h" ++Stage cheader_filename="meta/meta-stage.h" ++Stage.is_focused parent="Meta.Display" symbol_type="method" name="stage_is_focused" instance_idx=0 cheader_filename="meta/compositor-mutter.h" ++Strut cheader_filename="meta/boxes.h" ++TabList cheader_filename="meta/display.h" ++TabShowType cheader_filename="meta/display.h" ++Theme cheader_filename="meta/theme.h" ++theme_get_default cheader_filename="meta/theme.h" ++theme_new cheader_filename="meta/theme.h" ++VirtualModifier cheader_filename="meta/common.h" ++Workspace cheader_filename="meta/workspace.h" ++WorkspaceManager cheader_filename="meta/meta-workspace-manager.h" ++Window cheader_filename="meta/window.h" ++Window.focus#signal name="focused" ++Window.icon type="Cairo.Surface" ++Window.mini_icon type="Cairo.Surface" ++WindowActor cheader_filename="meta/meta-window-actor.h" ++WindowClientType cheader_filename="meta/window.h" ++WindowForeachFunc cheader_filename="meta/window.h" ++WindowGroup cheader_filename="meta/meta-window-group.h" ++WindowMenuType cheader_filename="meta/compositor.h" ++WindowShape cheader_filename="meta/meta-window-shape.h" ++WindowType cheader_filename="meta/window.h" ++X11Display cheader_filename="meta/meta-x11-display.h" ++ ++rect skip ++prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h" ++ ++g_utf8_strndup skip ++ ++preference_to_string cheader_filename="meta/prefs.h" ++frame_type_to_string cheader_filename="meta/util.h" ++topic_to_string parent="Meta.DebugTopic" name="to_string" ++ ++CURRENT_TIME cheader_filename="meta/common.h" ++ICON_WIDTH cheader_filename="meta/common.h" ++ICON_HEIGHT cheader_filename="meta/common.h" ++MINI_ICON_WIDTH cheader_filename="meta/common.h" ++MINI_ICON_HEIGHT cheader_filename="meta/common.h" ++DEFAULT_ICON_NAME cheader_filename="meta/common.h" ++PRIORITY_RESIZE cheader_filename="meta/common.h" ++PRIORITY_BEFORE_REDRAW cheader_filename="meta/common.h" ++PRIORITY_REDRAW cheader_filename="meta/common.h" ++PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h" ++VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h" ++VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h" ++ ++add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" ++bug parent="Meta.Util" cheader_filename="meta/util.h" ++external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h" ++fatal parent="Meta.Util" cheader_filename="meta/util.h" ++get_locale_direction 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" ++remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" ++show_dialog parent="Meta.Util" cheader_filename="meta/util.h" ++show_dialog.columns type_arguments="string" nullable default=null ++show_dialog.entries type_arguments="string" nullable default=null ++show_dialog.transient_for default=0 ++show_dialog.icon_name nullable default=null ++show_dialog.cancel_text nullable default=null ++show_dialog.ok_text nullable default=null ++show_dialog.display nullable default=null ++show_dialog.timeout nullable default=null ++unsigned_long_equal parent="Meta.Util" name="ulong_equal" cheader_filename="meta/util.h" ++unsigned_long_equal.v1 type="ulong?" ++unsigned_long_equal.v2 type="ulong?" ++unsigned_long_hash parent="Meta.Util" name="ulong_hash" cheader_filename="meta/util.h" ++unsigned_long_hash.v type="ulong?" ++warning parent="Meta.Util" cheader_filename="meta/util.h" ++create_context parent="Meta.Context" name="new" symbol_type="constructor" cheader_filename="meta/meta-context.h" ++ ++x11_error_trap_pop parent="Meta.X11Display" symbol_type="method" name="error_trap_pop" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" ++x11_error_trap_pop_with_return parent="Meta.X11Display" symbol_type="method" name="error_trap_pop_with_return" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" ++x11_error_trap_push parent="Meta.X11Display" symbol_type="method" name="error_trap_push" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" ++x11_init_gdk_display parent="Meta.X11Display" cheader_filename="meta/meta-x11-display.h" +diff --git a/vapi/config.vapi b/vapi/config.vapi +index c2c3a35b..35abae73 100644 +--- a/vapi/config.vapi ++++ b/vapi/config.vapi +@@ -18,6 +18,8 @@ + [CCode (cprefix = "", lower_case_cprefix = "", cheader_filename = "config.h")] + namespace Config + { ++ public const string GETTEXT_PACKAGE; ++ public const string LOCALEDIR; + public const string DATADIR; + public const string PKGDATADIR; + public const string VERSION; +diff --git a/vapi/libmutter-10.deps b/vapi/libmutter-10.deps +new file mode 120000 +index 00000000..cdf92777 +--- /dev/null ++++ b/vapi/libmutter-10.deps +@@ -0,0 +1 @@ ++libmutter-9.deps +\ No newline at end of file +diff --git a/vapi/libmutter-10.vapi b/vapi/libmutter-10.vapi +new file mode 120000 +index 00000000..3d8073f5 +--- /dev/null ++++ b/vapi/libmutter-10.vapi +@@ -0,0 +1 @@ ++libmutter-9.vapi +\ No newline at end of file +diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi +index baba792d..5dacb629 100644 +--- a/vapi/libmutter.vapi ++++ b/vapi/libmutter.vapi +@@ -137,14 +137,18 @@ namespace Meta { + #endif + [CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")] + public static GLib.Pid show_dialog (string type, string message, string? timeout = null, string? display = null, string? ok_text = null, string? cancel_text = null, string? icon_name = null, int transient_for = 0, GLib.SList? columns = null, GLib.SList? entries = null); ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "meta/util.h", cname = "meta_topic_real")] + public static void topic_real (Meta.DebugTopic topic, string format, ...); ++#endif + [CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")] + public static int ulong_equal ([CCode (type = "gconstpointer")] ulong? v1, [CCode (type = "gconstpointer")] ulong? v2); + [CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")] + public static uint ulong_hash ([CCode (type = "gconstpointer")] ulong? v); ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "meta/util.h", cname = "meta_verbose_real")] + public static void verbose_real (string format, ...); ++#endif + [CCode (cheader_filename = "meta/util.h", cname = "meta_warning")] + public static void warning (string format, ...); + } +@@ -159,16 +163,24 @@ namespace Meta { + public unowned Meta.IdleMonitor get_core_idle_monitor (); + #endif + public unowned Meta.Dnd get_dnd (); ++#if HAS_MUTTER42 ++ public unowned Meta.MonitorManager get_monitor_manager (); ++#endif + public unowned Meta.RemoteAccessController get_remote_access_controller (); + public unowned Meta.Settings get_settings (); + public unowned Clutter.Actor get_stage (); ++#if HAS_MUTTER42 ++ public bool is_headless (); ++#endif + public bool is_rendering_hardware_accelerated (); + public void lock_layout_group (uint idx); + public void set_keymap (string layouts, string variants, string options); + #if HAS_MUTTER41 + public Meta.Context context { get; construct; } + #endif ++#if !HAS_MUTTER42 + public void set_numlock (bool numlock_state); ++#endif + public signal void keymap_changed (); + public signal void keymap_layout_group_changed (uint object); + public signal void last_device_changed (Clutter.InputDevice object); +@@ -352,6 +364,10 @@ namespace Meta { + public void terminate_with_error (GLib.Error error); + [NoAccessorMethod] + public string name { owned get; construct; } ++#if HAS_MUTTER42 ++ [NoAccessorMethod] ++ public bool unsafe_mode { get; set; } ++#endif + } + #endif + [CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")] +@@ -365,6 +381,9 @@ namespace Meta { + public void get_pointer (out int x, out int y, out Clutter.ModifierType mods); + #endif + public bool get_pointer_visible (); ++#if HAS_MUTTER42 ++ public float get_scale (); ++#endif + public unowned Cogl.Texture get_sprite (); + public void set_pointer_visible (bool visible); + #if HAS_MUTTER338 +@@ -444,6 +463,9 @@ namespace Meta { + public unowned Meta.X11Display get_x11_display (); + public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags); + public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence); ++#if HAS_MUTTER42 ++ public GLib.List list_all_windows (); ++#endif + public bool remove_keybinding (string name); + public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode); + public void set_cursor (Meta.Cursor cursor); +@@ -569,6 +591,10 @@ namespace Meta { + public void switch_config (Meta.MonitorSwitchConfigType config_type); + [NoAccessorMethod] + public Meta.Backend backend { owned get; construct; } ++#if HAS_MUTTER42 ++ [NoAccessorMethod] ++ public bool has_builtin_panel { get; } ++#endif + #if HAS_MUTTER338 + public bool panel_orientation_managed { get; } + #endif +@@ -855,6 +881,9 @@ namespace Meta { + public unowned Meta.Workspace get_workspace (); + public X.Window get_xwindow (); + public void group_leader_changed (); ++#if HAS_MUTTER42 ++ public bool has_attached_dialogs (); ++#endif + public bool has_focus (); + public bool is_above (); + public bool is_always_on_all_workspaces (); +@@ -923,6 +952,10 @@ namespace Meta { + public string gtk_window_object_path { get; } + [NoAccessorMethod] + public Cairo.Surface icon { owned get; } ++#if HAS_MUTTER42 ++ [NoAccessorMethod] ++ public bool is_alive { get; } ++#endif + [NoAccessorMethod] + public bool maximized_horizontally { get; } + [NoAccessorMethod] +@@ -968,6 +1001,9 @@ namespace Meta { + public unowned Meta.Window get_meta_window (); + public unowned Meta.ShapedTexture get_texture (); + public bool is_destroyed (); ++#if HAS_MUTTER42 ++ public Clutter.Content? paint_to_content (Meta.Rectangle? clip) throws GLib.Error; ++#endif + public void sync_visibility (); + #if HAS_MUTTER338 + public void thaw (); +@@ -1277,6 +1313,10 @@ namespace Meta { + KMS, + SCREEN_CAST, + REMOTE_DESKTOP, ++#endif ++#if HAS_MUTTER42 ++ BACKEND, ++ RENDER, + #endif + DBUS + } +@@ -1433,7 +1473,9 @@ namespace Meta { + CYCLE_PANELS, + CYCLE_PANELS_BACKWARD, + SHOW_DESKTOP, ++#if !HAS_MUTTER42 + PANEL_MAIN_MENU, ++#endif + PANEL_RUN_DIALOG, + TOGGLE_RECORDING, + SET_SPEW_MARK, +@@ -1745,10 +1787,6 @@ namespace Meta { + #endif + [CCode (cheader_filename = "meta/main.h")] + public static void clutter_init (); +-#if HAS_MUTTER41 +- [CCode (cheader_filename = "meta/meta-context.h")] +- public static Meta.Context create_context (string name); +-#endif + [CCode (cheader_filename = "meta/main.h")] + public static void exit (Meta.ExitCode code); + #if !HAS_MUTTER41 +diff --git a/vapi/libsystemd.vapi b/vapi/libsystemd.vapi +new file mode 100644 +index 00000000..54bc3a68 +--- /dev/null ++++ b/vapi/libsystemd.vapi +@@ -0,0 +1,18 @@ ++[CCode (cheader_filename = "systemd/sd-daemon.h")] ++namespace Systemd.Daemon { ++ [CCode (cname="sd_notify")] ++ int notify([CCode (type="int")]bool unset_environment, string state); ++ ++ [CCode (cname="sd_notifyf")] ++ int notifyf([CCode (type="int")]bool unset_environment, string format, ...); ++ ++ [CCode (cname="sd_pid_notify")] ++ int pid_notify(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string state); ++ ++ [CCode (cname="sd_pid_notifyf")] ++ int pid_notifyf(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string format, ...); ++ ++ [CCode (cname="sd_pid_notify_with_fds")] ++ int pid_notify_with_fds(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string state, int[] fds); ++} ++ +diff --git a/vapi/meson.build b/vapi/meson.build +index 3773b0bc..a348b16b 100644 +--- a/vapi/meson.build ++++ b/vapi/meson.build +@@ -286,3 +286,72 @@ if mutter41_dep.found() + output: 'libmutter-9.vapi' + ) + endif ++if mutter42_dep.found() ++ cogl_target = custom_target('mutter-cogl-10', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'Cogl-10.gir', ++ '--library=mutter-cogl-10', ++ '--pkg=gobject-2.0', ++ '--pkg=cairo', ++ '--pkg=graphene-gobject-1.0', ++ vapigen_args, ++ files('Cogl-10-custom.vala') ++ ], ++ output: 'mutter-cogl-10.vapi' ++ ) ++ ++ cogl_pango_target = custom_target('mutter-cogl-pango-10', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'CoglPango-10.gir', ++ '--library=mutter-cogl-pango-10', ++ '--pkg=mutter-cogl-10', ++ '--pkg=pangocairo', ++ vapigen_args ++ ], ++ depends: cogl_target, ++ output: 'mutter-cogl-pango-10.vapi' ++ ) ++ ++ clutter_target = custom_target('mutter-clutter-10', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'Clutter-10.gir', ++ '--library=mutter-clutter-10', ++ '--pkg=graphene-gobject-1.0', ++ '--pkg=mutter-cogl-10', ++ '--pkg=mutter-cogl-pango-10', ++ '--pkg=atk', ++ '--pkg=gio-2.0', ++ '--pkg=json-glib-1.0', ++ '--pkg=pangocairo', ++ vapigen_args, ++ files('Clutter-10-custom.vala') ++ ], ++ depends: [ cogl_target, cogl_pango_target ], ++ output: 'mutter-clutter-10.vapi' ++ ) ++ ++ libmutter_target = custom_target('libmutter-10', ++ command: [ ++ vapigen, ++ mutter_typelib_dir / 'Meta-10.gir', ++ '--library=libmutter-10', ++ '--pkg=graphene-gobject-1.0', ++ '--pkg=mutter-cogl-10', ++ '--pkg=mutter-cogl-pango-10', ++ '--pkg=mutter-clutter-10', ++ '--pkg=atk', ++ '--pkg=gio-2.0', ++ '--pkg=json-glib-1.0', ++ '--pkg=pangocairo', ++ '--pkg=gtk+-3.0', ++ '--pkg=x11', ++ '--pkg=xfixes-4.0', ++ vapigen_args ++ ], ++ depends: [ cogl_target, cogl_pango_target, clutter_target ], ++ output: 'libmutter-10.vapi' ++ ) ++endif +diff --git a/vapi/mutter-clutter-10.deps b/vapi/mutter-clutter-10.deps +new file mode 100644 +index 00000000..f4c6e420 +--- /dev/null ++++ b/vapi/mutter-clutter-10.deps +@@ -0,0 +1,6 @@ ++atk ++cairo ++pango ++json-glib-1.0 ++mutter-cogl-10 ++graphene-gobject-1.0 +diff --git a/vapi/mutter-clutter-10.vapi b/vapi/mutter-clutter-10.vapi +new file mode 120000 +index 00000000..8a0ba541 +--- /dev/null ++++ b/vapi/mutter-clutter-10.vapi +@@ -0,0 +1 @@ ++mutter-clutter-9.vapi +\ No newline at end of file +diff --git a/vapi/mutter-clutter-9.deps b/vapi/mutter-clutter-9.deps +index fffc4803..f4c6e420 100644 +--- a/vapi/mutter-clutter-9.deps ++++ b/vapi/mutter-clutter-9.deps +@@ -2,5 +2,5 @@ atk + cairo + pango + json-glib-1.0 +-mutter-cogl-9 ++mutter-cogl-10 + graphene-gobject-1.0 +diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi +index c54ca952..04307759 100644 +--- a/vapi/mutter-clutter.vapi ++++ b/vapi/mutter-clutter.vapi +@@ -3,7 +3,6 @@ + [CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "1.0", 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")] +@@ -4629,6 +4628,11 @@ namespace Clutter { + public abstract class Action : Clutter.ActorMeta { + [CCode (has_construct_function = false)] + protected Action (); ++#if HAS_MUTTER42 ++ public Clutter.EventPhase get_phase (); ++ [NoWrapper] ++ public virtual bool handle_event (Clutter.Event event); ++#endif + } + [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 { +@@ -4638,6 +4642,9 @@ namespace Clutter { + public Actor (); + [Version (since = "1.4")] + public void add_action (Clutter.Action action); ++#if HAS_MUTTER42 ++ public void add_action_full (string name, Clutter.EventPhase phase, Clutter.Action action); ++#endif + [Version (since = "1.4")] + public void add_action_with_name (string name, Clutter.Action action); + [Version (since = "1.10")] +@@ -4724,7 +4731,7 @@ namespace Clutter { + 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); ++ public unowned Clutter.Action? get_action (string name); + [Version (since = "1.4")] + public GLib.List get_actions (); + [Version (since = "0.8")] +@@ -4745,7 +4752,7 @@ namespace Clutter { + public static unowned Clutter.Actor get_by_gid (uint32 id_); + #endif + [Version (since = "1.10")] +- public unowned Clutter.Actor get_child_at_index (int index_); ++ public unowned Clutter.Actor? get_child_at_index (int index_); + [Version (since = "1.12")] + #if HAS_MUTTER40 + public Graphene.Matrix get_child_transform (); +@@ -4759,11 +4766,11 @@ namespace Clutter { + [Version (since = "1.4")] + public bool get_clip_to_allocation (); + [Version (since = "1.4")] +- public unowned Clutter.Constraint get_constraint (string name); ++ public unowned Clutter.Constraint? get_constraint (string name); + [Version (since = "1.4")] + public GLib.List get_constraints (); + [Version (since = "1.10")] +- public unowned Clutter.Content get_content (); ++ public unowned Clutter.Content? get_content (); + [Version (since = "1.10")] + public Clutter.ActorBox get_content_box (); + [Version (since = "1.10")] +@@ -4785,11 +4792,11 @@ namespace Clutter { + [Version (since = "1.10")] + public Clutter.AnimationMode get_easing_mode (); + [Version (since = "1.4")] +- public unowned Clutter.Effect get_effect (string name); ++ public unowned Clutter.Effect? get_effect (string name); + [Version (since = "1.4")] + public GLib.List get_effects (); + [Version (since = "1.10")] +- public unowned Clutter.Actor get_first_child (); ++ public unowned Clutter.Actor? get_first_child (); + #if HAS_MUTTER338 + public bool get_fixed_position (out float x, out float y); + #endif +@@ -4802,9 +4809,9 @@ namespace Clutter { + public bool get_has_pointer (); + public float get_height (); + [Version (since = "1.10")] +- public unowned Clutter.Actor get_last_child (); ++ public unowned Clutter.Actor? get_last_child (); + [Version (since = "1.10")] +- public unowned Clutter.LayoutManager get_layout_manager (); ++ public unowned Clutter.LayoutManager? get_layout_manager (); + [Version (since = "1.10")] + public Clutter.Margin get_margin (); + [Version (since = "1.10")] +@@ -4817,9 +4824,9 @@ namespace Clutter { + public float get_margin_top (); + [Version (since = "1.10")] + public int get_n_children (); +- public unowned string get_name (); ++ public unowned string? get_name (); + [Version (since = "1.10")] +- public unowned Clutter.Actor get_next_sibling (); ++ public unowned Clutter.Actor? get_next_sibling (); + [Version (since = "1.8")] + public Clutter.OffscreenRedirect get_offscreen_redirect (); + public uint8 get_opacity (); +@@ -4852,7 +4859,7 @@ namespace Clutter { + [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 (); ++ public unowned Clutter.Actor? get_previous_sibling (); + [Version (since = "0.6")] + public bool get_reactive (); + [Version (since = "1.2")] +@@ -4898,7 +4905,7 @@ namespace Clutter { + [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); ++ 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 (); +@@ -5083,7 +5090,7 @@ namespace Clutter { + public void set_margin_right (float margin); + [Version (since = "1.10")] + public void set_margin_top (float margin); +- public void set_name (string name); ++ public void set_name (string? name); + [Version (since = "1.8")] + public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect); + public void set_opacity (uint8 opacity); +@@ -5707,6 +5714,7 @@ namespace Clutter { + public bool get_homogeneous (); + [Version (since = "1.12")] + public Clutter.Orientation get_orientation (); ++ [Version (deprecated = true)] + public bool get_pack_start (); + public uint get_spacing (); + #if !HAS_MUTTER338 +@@ -5731,6 +5739,7 @@ namespace Clutter { + public void set_homogeneous (bool homogeneous); + [Version (since = "1.12")] + public void set_orientation (Clutter.Orientation orientation); ++ [Version (deprecated = true)] + public void set_pack_start (bool pack_start); + public void set_spacing (uint spacing); + #if !HAS_MUTTER338 +@@ -5747,6 +5756,7 @@ namespace Clutter { + public bool homogeneous { get; set; } + [Version (since = "1.12")] + public Clutter.Orientation orientation { get; set; } ++ [Version (deprecated = true)] + public bool pack_start { get; set; } + public uint spacing { get; set; } + #if !HAS_MUTTER338 +@@ -5778,7 +5788,9 @@ namespace Clutter { + public class ButtonEvent : Clutter.Event { + public double axes; + public uint32 button; ++#if !HAS_MUTTER42 + public uint click_count; ++#endif + public weak Clutter.InputDevice device; + #if HAS_MUTTER40 + public uint32 evdev_code; +@@ -5884,6 +5896,13 @@ namespace Clutter { + #endif + public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, ref float minimum_size, ref float natural_size); + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] ++ [Compact] ++ public class Context { ++ public unowned Clutter.Backend get_backend (); ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] + [Compact] + [Version (since = "0.2")] +@@ -6035,8 +6054,10 @@ namespace Clutter { + public double get_axes (out uint n_axes); + [Version (since = "1.0")] + public uint32 get_button (); ++#if !HAS_MUTTER42 + [Version (since = "1.0")] + public uint get_click_count (); ++#endif + [Version (since = "0.4")] + public void get_coords (out float x, out float y); + [Version (since = "1.0")] +@@ -6324,6 +6345,9 @@ namespace Clutter { + public class IMEvent : Clutter.Event { + public Clutter.EventFlags flags; + public uint32 len; ++#if HAS_MUTTER42 ++ public Clutter.PreeditResetMode mode; ++#endif + public int32 offset; + public weak Clutter.Actor source; + public weak Clutter.Stage stage; +@@ -6362,6 +6386,7 @@ namespace Clutter { + public class InputDevice : GLib.Object { + [CCode (has_construct_function = false)] + protected InputDevice (); ++#if !HAS_MUTTER42 + #if HAS_MUTTER338 + [Version (since = "1.2")] + public unowned Clutter.Actor get_actor (Clutter.EventSequence? sequence); +@@ -6383,6 +6408,7 @@ namespace Clutter { + public bool get_coords (Clutter.EventSequence? sequence, out Graphene.Point point); + [Version (since = "1.0")] + public int get_device_id (); ++#endif + #endif + [Version (since = "1.6")] + public Clutter.InputMode get_device_mode (); +@@ -6408,8 +6434,10 @@ namespace Clutter { + [Version (since = "1.16")] + public Clutter.ModifierType get_modifier_state (); + #endif ++#if !HAS_MUTTER42 + [Version (since = "1.6")] + public uint get_n_axes (); ++#endif + #if HAS_MUTTER40 + public int get_n_buttons (); + #else +@@ -6573,7 +6601,11 @@ namespace Clutter { + [NoWrapper] + public virtual void set_cursor_location (Graphene.Rect rect); + public void set_input_panel_state (Clutter.InputPanelState state); ++#if HAS_MUTTER42 ++ public void set_preedit_text (string? preedit, uint cursor, Clutter.PreeditResetMode mode); ++#else + public void set_preedit_text (string? preedit, uint cursor); ++#endif + [NoWrapper] + public virtual void set_surrounding (string text, uint cursor, uint anchor); + [NoWrapper] +@@ -6898,7 +6930,11 @@ namespace Clutter { + public double deceleration { get; set; } + public bool interpolate { get; set; } + public Clutter.PanAxis pan_axis { get; set; } ++#if HAS_MUTTER42 ++ public signal bool pan (Clutter.Actor actor, bool is_interpolated); ++#else + public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated); ++#endif + 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 ()")] +@@ -6958,6 +6994,9 @@ namespace Clutter { + public void destroy (); + #if HAS_MUTTER40 + public Graphene.Matrix get_transform (); ++#if HAS_MUTTER42 ++ public void log_overlap (Clutter.Actor actor); ++#endif + public void log_pick (Clutter.ActorBox box, Clutter.Actor actor); + public void pop_clip (); + public void pop_transform (); +@@ -7041,7 +7080,11 @@ namespace Clutter { + public class RotateAction : Clutter.GestureAction { + [CCode (has_construct_function = false, type = "ClutterAction*")] + public RotateAction (); ++#if HAS_MUTTER42 ++ public signal bool rotate (Clutter.Actor actor, double angle); ++#else + public virtual signal bool rotate (Clutter.Actor actor, double angle); ++#endif + } + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")] + [Version (since = "0.6")] +@@ -7163,8 +7206,10 @@ namespace Clutter { + public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings); + public void uninhibit_unfocus (); + public virtual void warp_pointer (int x, int y); ++#if !HAS_MUTTER42 + [NoAccessorMethod] + public Clutter.Backend backend { owned get; construct; } ++#endif + public bool touch_mode { get; } + public signal void device_added (Clutter.InputDevice object); + public signal void device_removed (Clutter.InputDevice object); +@@ -7320,8 +7365,10 @@ namespace Clutter { + public int64 get_frame_counter (); + [Version (since = "0.6")] + public unowned Clutter.Actor get_key_focus (); ++#if !HAS_MUTTER42 + [Version (since = "1.2")] + public void get_minimum_size (out uint width, out uint height); ++#endif + [Version (since = "1.8")] + public bool get_motion_events_enabled (); + public Clutter.Perspective get_perspective (); +@@ -7336,7 +7383,10 @@ namespace Clutter { + [Version (since = "1.2")] + public bool get_use_alpha (); + #if HAS_MUTTER338 +- public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] ref unowned uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; ++ public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; ++#if HAS_MUTTER42 ++ public Clutter.Content paint_to_content (Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags) throws GLib.Error; ++#endif + public void paint_to_framebuffer (Cogl.Framebuffer framebuffer, Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags); + #else + [Version (since = "0.4")] +@@ -7375,7 +7425,9 @@ namespace Clutter { + public void set_title (string title); + [Version (since = "1.2")] + public void set_use_alpha (bool use_alpha); +-#if HAS_MUTTER40 ++#if HAS_MUTTER42 ++ public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, Cairo.Region region, bool emit_crossing); ++#elif HAS_MUTTER40 + public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, bool emit_crossing); + #endif + #if !HAS_MUTTER338 +@@ -7512,8 +7564,6 @@ namespace Clutter { + #endif + [NoAccessorMethod] + public int64 vblank_duration_us { get; construct; } +-#if HAS_MUTTER41 +-#endif + } + #if !HAS_MUTTER338 + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")] +@@ -7561,7 +7611,11 @@ namespace Clutter { + [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")] ++#if HAS_MUTTER42 ++ public signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction); ++#else + public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction); ++#endif + } + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")] + [Version (since = "1.14")] +@@ -7901,6 +7955,21 @@ namespace Clutter { + public float x; + public float y; + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] ++ [Compact] ++ public class TouchpadHoldEvent : Clutter.Event { ++ public Clutter.EventFlags flags; ++ public uint32 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; ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] + [Compact] + [Version (since = "1.24")] +@@ -8016,10 +8085,14 @@ namespace Clutter { + public ZoomAction (); + public Graphene.Point get_focal_point (); + public Graphene.Point get_transformed_focal_point (); ++#if HAS_MUTTER42 ++ public signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor); ++#else + 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); ++#endif + } + [CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")] + public interface Animatable : GLib.Object { +@@ -8064,23 +8137,29 @@ namespace Clutter { + 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); ++#if !HAS_MUTTER42 + [Version (deprecated = true, deprecated_since = "1.10", since = "0.4")] + public GLib.List get_children (); ++#endif + [CCode (cname = "clutter_container_class_list_child_properties")] + public class unowned GLib.ParamSpec[] list_child_properties (); ++#if !HAS_MUTTER42 + [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); ++#endif + [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); ++#if !HAS_MUTTER42 + [Version (deprecated = true, deprecated_since = "1.10", since = "0.6")] + public abstract void sort_depth_order (); ++#endif + public virtual signal void actor_added (Clutter.Actor actor); + public virtual signal void actor_removed (Clutter.Actor actor); + [HasEmitter] +@@ -8162,8 +8241,8 @@ namespace Clutter { + 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 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_copy_function = false, has_destroy_function = false, has_type_id = false)] +@@ -8187,16 +8266,40 @@ namespace Clutter { + public bool equal (Clutter.Color v2); + [Version (since = "0.2")] + public void free (); +- public void from_hls (float hue, float luminance, float saturation); +- public void from_pixel (uint32 pixel); +- [Version (since = "1.0")] +- public bool from_string (string str); ++ [CCode (cname = "_vala_clutter_color_from_hls")] ++ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { ++ Clutter.Color? color = Clutter.Color.alloc (); ++ color.init_from_hls (hue, luminance, saturation); ++ return color; ++ } ++ [CCode (cname = "_vala_clutter_color_from_pixel")] ++ public static Clutter.Color? from_pixel (uint32 pixel) { ++ Clutter.Color? color = Clutter.Color.alloc (); ++ color.init_from_pixel (pixel); ++ return color; ++ } ++ [CCode (cname = "clutter_color_new")] ++ [Version (since = "0.8")] ++ public static Clutter.Color? from_rgba (uint8 red = 0, uint8 green = 0, uint8 blue = 0, uint8 alpha = 0); ++ [CCode (cname = "_vala_clutter_color_from_string")] ++ public static Clutter.Color? from_string (string str) { ++ Clutter.Color? color = Clutter.Color.alloc (); ++ color.init_from_string (str); ++ return color; ++ } + [Version (since = "1.6")] + 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); ++ public unowned Clutter.Color? init (uint8 red = 0, uint8 green = 0, uint8 blue = 0, uint8 alpha = 0); ++ [CCode (cname = "clutter_color_from_hls")] ++ public void init_from_hls (float hue, float luminance, float saturation); ++ [CCode (cname = "clutter_color_from_pixel")] ++ public void init_from_pixel (uint32 pixel); ++ [CCode (cname = "clutter_color_from_string")] ++ [Version (since = "1.0")] ++ public bool init_from_string (string str); + [Version (since = "1.6")] + public Clutter.Color interpolate (Clutter.Color final, double progress); + public Clutter.Color lighten (); +@@ -8549,6 +8652,13 @@ namespace Clutter { + #endif + FLAG_REPEATED + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PHASE_", type_id = "clutter_event_phase_get_type ()")] ++ public enum EventPhase { ++ CAPTURE, ++ BUBBLE ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")] + [Version (since = "0.4")] + public enum EventType { +@@ -8575,6 +8685,9 @@ namespace Clutter { + TOUCH_CANCEL, + TOUCHPAD_PINCH, + TOUCHPAD_SWIPE, ++#if HAS_MUTTER42 ++ TOUCHPAD_HOLD, ++#endif + PROXIMITY_IN, + PROXIMITY_OUT, + PAD_BUTTON_PRESS, +@@ -8597,12 +8710,14 @@ namespace Clutter { + #if !HAS_MUTTER338 + SWAP_THROTTLE, + #endif ++#if !HAS_MUTTER42 + STAGE_STATIC, + STAGE_CURSOR, +- SHADERS_GLSL, + OFFSCREEN, + STAGE_MULTIPLE, +- SWAP_EVENTS ++ SWAP_EVENTS, ++#endif ++ SHADERS_GLSL + } + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")] + [Version (since = "1.2")] +@@ -8654,6 +8769,7 @@ namespace Clutter { + TOP, + BOTTOM + } ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")] + [Version (since = "0.2")] + public enum InitError { +@@ -8664,6 +8780,7 @@ namespace Clutter { + ERROR_INTERNAL; + public static GLib.Quark quark (); + } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")] + [Version (since = "1.6")] + public enum InputAxis { +@@ -8956,6 +9073,13 @@ namespace Clutter { + DWELL, + GESTURE + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PREEDIT_RESET_", type_id = "clutter_preedit_reset_mode_get_type ()")] ++ public enum PreeditResetMode { ++ CLEAR, ++ COMMIT ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")] + [Flags] + [Version (since = "1.10")] +@@ -9167,6 +9291,7 @@ namespace Clutter { + POINTER, + TOUCHSCREEN + } ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")] + [Version (since = "1.12")] + public enum ZoomAxis { +@@ -9174,6 +9299,7 @@ namespace Clutter { + Y_AXIS, + BOTH + } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")] + [Version (since = "1.10")] + public errordomain ImageError { +@@ -9285,17 +9411,21 @@ namespace Clutter { + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "1.0")] + public static unowned Pango.FontMap get_font_map (); ++#if !HAS_MUTTER42 + [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 (); ++#endif + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "0.6")] + public static unowned string get_script_id (GLib.Object gobject); ++#if !HAS_MUTTER42 + [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); ++#endif + #if !HAS_MUTTER41 + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "0.2")] +diff --git a/vapi/mutter-cogl-10.deps b/vapi/mutter-cogl-10.deps +new file mode 120000 +index 00000000..ea52a856 +--- /dev/null ++++ b/vapi/mutter-cogl-10.deps +@@ -0,0 +1 @@ ++mutter-cogl-9.deps +\ No newline at end of file +diff --git a/vapi/mutter-cogl-10.vapi b/vapi/mutter-cogl-10.vapi +new file mode 120000 +index 00000000..698673de +--- /dev/null ++++ b/vapi/mutter-cogl-10.vapi +@@ -0,0 +1 @@ ++mutter-cogl-9.vapi +\ No newline at end of file +diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi +index b55bd648..526bb415 100644 +--- a/vapi/mutter-cogl-6.vapi ++++ b/vapi/mutter-cogl-6.vapi +@@ -27,6 +27,10 @@ namespace Cogl { + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_foreach_feature")] + [Version (since = "1.10")] + public void foreach_feature (Cogl.FeatureCallback callback); ++#if HAS_MUTTER42 ++ public void free_timestamp_query (owned Cogl.TimestampQuery query); ++ public int64 get_gpu_time_ns (); ++#endif + #if !HAS_MUTTER40 + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_get_clock_time")] + [Version (since = "1.14")] +@@ -45,6 +49,9 @@ namespace Cogl { + #endif + #if HAS_MUTTER40 + public void set_named_pipeline (Cogl.PipelineKey key, Cogl.Pipeline? pipeline); ++#endif ++#if HAS_MUTTER42 ++ public int64 timestamp_query_get_time_ns (Cogl.TimestampQuery query); + #endif + } + [CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")] +@@ -69,8 +76,14 @@ namespace Cogl { + #endif + [Version (since = "1.14")] + public float get_refresh_rate (); ++#if HAS_MUTTER42 ++ public int64 get_rendering_duration_ns (); ++#endif + #if HAS_MUTTER40 + public uint get_sequence (); ++#if HAS_MUTTER42 ++ public int64 get_time_before_buffer_swap_us (); ++#endif + public bool is_hw_clock (); + public bool is_vsync (); + public bool is_zero_copy (); +@@ -224,6 +237,7 @@ namespace Cogl { + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_texture")] + public bool is_texture (); + } ++#if !HAS_MUTTER42 + [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 : Cogl.Handle { +@@ -265,6 +279,7 @@ namespace Cogl { + [Compact] + public class MaterialLayer : Cogl.Handle { + } ++#endif + [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")] + public abstract class Object { + [CCode (has_construct_function = false)] +@@ -353,6 +368,9 @@ namespace Cogl { + #endif + [Version (since = "2.0")] + public void hide (); ++#if HAS_MUTTER42 ++ public virtual void queue_damage_region (int rectangles, int n_rectangles); ++#endif + [Version (since = "1.16")] + public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure); + [Version (since = "1.14")] +@@ -620,6 +638,12 @@ namespace Cogl { + [Version (since = "1.16")] + public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste); + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] ++ [Compact] ++ public class TimestampQuery { ++ } ++#endif + #if HAS_MUTTER338 + [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] + [Compact] +@@ -751,13 +775,13 @@ namespace Cogl { + public interface Texture : Cogl.Object { + public bool allocate () throws GLib.Error; + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_bitmap")] +- [Version (deprecated = true, deprecated_since = "1.18", since = "1.0")] ++ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_bitmap", since = "1.0")] + public static Cogl.Texture from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format); + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_data")] +- [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] ++ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_data", since = "0.8")] + public static Cogl.Texture from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] uint8[] data); + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_file")] +- [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] ++ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_file", since = "0.8")] + public static Cogl.Texture from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error; + [Version (since = "1.18")] + public Cogl.TextureComponents get_components (); +@@ -775,10 +799,12 @@ namespace Cogl { + public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] 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; ++#if !HAS_MUTTER42 + [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); ++#endif + [Version (since = "1.18")] + public void set_components (Cogl.TextureComponents components); + public bool set_data (Cogl.PixelFormat format, int rowstride, [CCode (array_length = false)] uint8[] data, int level) throws GLib.Error; +@@ -787,9 +813,11 @@ namespace Cogl { + 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, [CCode (array_length = false)] 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); ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_with_size")] + [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] + public static Cogl.Texture with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format); ++#endif + } + [CCode (cheader_filename = "cogl/cogl.h")] + [SimpleType] +@@ -828,6 +856,14 @@ namespace Cogl { + 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); ++ [Version (since = "1.16")] ++ public void init_from_hsl (float hue, float saturation, float luminance); + public void premultiply (); + [Version (since = "1.4")] + public void set_alpha (float alpha); +@@ -945,6 +981,9 @@ namespace Cogl { + public struct TraceHead { + public uint64 begin_time; + public weak string name; ++#if HAS_MUTTER42 ++ public weak string description; ++#endif + } + #endif + [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] +@@ -1093,6 +1132,12 @@ namespace Cogl { + #if HAS_MUTTER338 + [CCode (cname = "COGL_FEATURE_ID_BLIT_FRAMEBUFFER")] + OGL_FEATURE_ID_BLIT_FRAMEBUFFER, ++#endif ++#if HAS_MUTTER42 ++ [CCode (cname = "COGL_FEATURE_ID_TIMESTAMP_QUERY")] ++ OGL_FEATURE_ID_TIMESTAMP_QUERY, ++ [CCode (cname = "COGL_FEATURE_ID_GET_GPU_TIME")] ++ OGL_FEATURE_ID_GET_GPU_TIME, + #endif + [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] + OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL +@@ -1122,6 +1167,7 @@ namespace Cogl { + SHORT, + INT + } ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)] + public enum MaterialAlphaFunc { + NEVER, +@@ -1149,6 +1195,7 @@ namespace Cogl { + CLAMP_TO_EDGE, + AUTOMATIC + } ++#endif + [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)] + public enum PipelineAlphaFunc { + NEVER, +@@ -1204,12 +1251,24 @@ namespace Cogl { + ABGR_8888, + RGBA_1010102, + BGRA_1010102, ++#if HAS_MUTTER42 ++ XRGB_2101010, ++#endif + ARGB_2101010, ++#if HAS_MUTTER42 ++ XBGR_2101010, ++#endif + ABGR_2101010, + #if HAS_MUTTER338 + RGBA_FP_16161616, + BGRA_FP_16161616, ++#if HAS_MUTTER42 ++ XRGB_FP_16161616, ++#endif + ARGB_FP_16161616, ++#if HAS_MUTTER42 ++ XBGR_FP_16161616, ++#endif + ABGR_FP_16161616, + #endif + RGBA_8888_PRE, +@@ -1293,7 +1352,9 @@ namespace Cogl { + } + [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)] + public enum WinsysFeature { ++#if !HAS_MUTTER42 + MULTIPLE_ONSCREEN, ++#endif + #if !HAS_MUTTER338 + SWAP_THROTTLE, + #endif +@@ -1420,12 +1481,14 @@ namespace Cogl { + [CCode (cheader_filename = "cogl/cogl.h")] + [Version (since = "1.0")] + public static void flush (); ++#if !HAS_MUTTER42 + [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 (deprecated = true, deprecated_since = "1.16")] + public static bool get_depth_test_enabled (); ++#endif + [CCode (cheader_filename = "cogl/cogl.h")] + [Version (deprecated = true, deprecated_since = "1.16", since = "1.0")] + public static GLib.OptionGroup get_option_group (); +@@ -1434,23 +1497,31 @@ namespace Cogl { + [Version (deprecated = true, deprecated_since = "1.18")] + public static GLib.Type gtype_matrix_get_type (); + #endif ++#if !HAS_MUTTER42 + [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); ++#endif + [CCode (cheader_filename = "cogl/cogl.h")] + public static void set_tracing_disabled_on_thread (GLib.MainContext main_context); + [CCode (cheader_filename = "cogl/cogl.h")] + public static void set_tracing_enabled_on_thread (GLib.MainContext main_context, string group, string filename); + [CCode (cheader_filename = "cogl/cogl.h")] + public static void set_tracing_enabled_on_thread_with_fd (GLib.MainContext main_context, string group, int fd); ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "cogl/cogl.h")] ++ public static void trace_describe (Cogl.TraceHead head, string description); ++#endif + #if HAS_MUTTER338 + [CCode (cheader_filename = "cogl/cogl.h")] + public static void trace_end (Cogl.TraceHead head); + #endif ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "cogl/cogl.h")] + [Version (since = "1.10")] + public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen); ++#endif + } +diff --git a/vapi/mutter-cogl-pango-10.vapi b/vapi/mutter-cogl-pango-10.vapi +new file mode 120000 +index 00000000..5362ecec +--- /dev/null ++++ b/vapi/mutter-cogl-pango-10.vapi +@@ -0,0 +1 @@ ++mutter-cogl-pango-9.vapi +\ No newline at end of file +diff --git a/wingpanel-interface/meson.build b/wingpanel-interface/meson.build +index 667a15cf..c0b645e3 100644 +--- a/wingpanel-interface/meson.build ++++ b/wingpanel-interface/meson.build +@@ -46,6 +46,17 @@ if mutter41_dep.found() + vala_flags = ['--define', 'HAS_MUTTER338', '--define', 'HAS_MUTTER40', '--define', 'HAS_MUTTER41'] + endif + ++mutter42_dep = dependency('libmutter-10', version: ['>= 42', '< 43'], required: false) ++if mutter42_dep.found() ++ libmutter_dep = dependency('libmutter-10', version: '>= 42') ++ mutter_dep = [ ++ libmutter_dep, ++ dependency('mutter-cogl-10'), dependency('mutter-cogl-pango-10'), ++ dependency('mutter-clutter-10') ++ ] ++ vala_flags = ['--define', 'HAS_MUTTER338', '--define', 'HAS_MUTTER40', '--define', 'HAS_MUTTER41', '--define', 'HAS_MUTTER42'] ++endif ++ + if mutter_dep.length() == 0 + error ('No supported mutter library found!') + endif diff --git a/453.patch b/453.patch new file mode 100644 index 0000000..ea50df0 --- /dev/null +++ b/453.patch @@ -0,0 +1,582 @@ +From 9a64bfe0d8844483d7ba8e412d8766f4bff8905a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Corentin=20No=C3=ABl?= +Date: Tue, 26 Apr 2022 09:41:35 +0200 +Subject: [PATCH] Synchronize the .vapi with Gala + +--- + vapi/Clutter-10.metadata | 1 - + vapi/Meta-10.metadata | 10 +++++- + vapi/libmutter.vapi | 66 +++++++++++++++++++++++++----------- + vapi/mutter-clutter.vapi | 72 ++++++++++++++++++++++++++++++++++++++-- + vapi/mutter-cogl-6.vapi | 26 +++++++-------- + 5 files changed, 136 insertions(+), 39 deletions(-) + +diff --git a/vapi/Clutter-10.metadata b/vapi/Clutter-10.metadata +index 5b69ae58..516fc6fb 100644 +--- a/vapi/Clutter-10.metadata ++++ b/vapi/Clutter-10.metadata +@@ -123,7 +123,6 @@ FrameClock.new skip + StageView.layout skip + + Stage +- .event name="emit_event" + .paint_view.redraw_clip type="Cairo.Region" + + Capture +diff --git a/vapi/Meta-10.metadata b/vapi/Meta-10.metadata +index eaefc051..e4438413 100644 +--- a/vapi/Meta-10.metadata ++++ b/vapi/Meta-10.metadata +@@ -65,10 +65,10 @@ KeyHandlerFunc cheader_filename="meta/prefs.h" + KeyHandlerFunc.event type="Clutter.KeyEvent?" + KeyHandlerFunc.window nullable + LaunchContext cheader_filename="meta/meta-launch-context.h" ++Laters cheader_filename="meta/types.h" + LaterType cheader_filename="meta/util.h" + LocaleDirection cheader_filename="meta/util.h" + MaximizeFlags cheader_filename="meta/window.h" +-ModalOptions cheader_filename="meta/meta-plugin.h" + MonitorManager cheader_filename="meta/meta-monitor-manager.h" + MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" + MotionDirection cheader_filename="meta/common.h" +@@ -123,6 +123,9 @@ WindowShape cheader_filename="meta/meta-window-shape.h" + WindowType cheader_filename="meta/window.h" + X11Display cheader_filename="meta/meta-x11-display.h" + ++// As per https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2287 ++MonitorManager.monitor_privacy_screen_changed skip ++ + rect skip + prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h" + +@@ -145,6 +148,11 @@ PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h" + VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h" + VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h" + ++Display.window_visibility_updated ++ .object name="unplaced" type="GLib.List" ++ .p0 name="should_show" type="GLib.List" ++ .p1 name="should_hide" type="GLib.List" ++ + add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" + bug parent="Meta.Util" cheader_filename="meta/util.h" + external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h" +diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi +index 5dacb629..5edcddb1 100644 +--- a/vapi/libmutter.vapi ++++ b/vapi/libmutter.vapi +@@ -316,6 +316,9 @@ namespace Meta { + public void destroy (); + public bool filter_keybinding (Meta.KeyBinding binding); + public void flash_display (Meta.Display display); ++#if HAS_MUTTER42 ++ public unowned Meta.Laters get_laters (); ++#endif + public void hide_tile_preview (); + public void hide_window (Meta.Window window, Meta.CompEffect effect); + public void manage (); +@@ -354,6 +357,10 @@ namespace Meta { + public unowned Meta.Display get_display (); + public bool is_replacing (); + public void notify_ready (); ++#if HAS_MUTTER42 ++ public bool raise_rlimit_nofile () throws GLib.Error; ++ public bool restore_rlimit_nofile () throws GLib.Error; ++#endif + public bool run_main_loop () throws GLib.Error; + public void set_gnome_wm_keybindings (string wm_keybindings); + public void set_plugin_gtype (GLib.Type plugin_gtype); +@@ -376,7 +383,7 @@ namespace Meta { + protected CursorTracker (); + public void get_hot (out int x, out int y); + #if HAS_MUTTER40 +- public void get_pointer (Graphene.Point coords, out Clutter.ModifierType mods); ++ public void get_pointer (out Graphene.Point coords, out Clutter.ModifierType mods); + #else + public void get_pointer (out int x, out int y, out Clutter.ModifierType mods); + #endif +@@ -511,6 +518,9 @@ namespace Meta { + 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); ++#if HAS_MUTTER42 ++ public signal void window_visibility_updated ([CCode (type = "gpointer")] GLib.List unplaced, [CCode (type = "gpointer")] GLib.List should_show, [CCode (type = "gpointer")] GLib.List should_hide); ++#endif + public signal void workareas_changed (); + public signal void x11_display_closing (); + public signal void x11_display_opened (); +@@ -562,6 +572,14 @@ namespace Meta { + [CCode (cheader_filename = "meta/keybindings.h", cname = "meta_keybindings_set_custom_handler")] + public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler); + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "meta/types.h", has_type_id = false)] ++ [Compact] ++ public class Laters { ++ public uint add (Meta.LaterType when, owned GLib.SourceFunc func); ++ public void remove (uint later_id); ++ } ++#endif + [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)] +@@ -607,7 +625,9 @@ namespace Meta { + public abstract class Plugin : GLib.Object { + [CCode (has_construct_function = false)] + protected Plugin (); ++#if !HAS_MUTTER42 + public bool begin_modal (Meta.ModalOptions options, uint32 timestamp); ++#endif + public void complete_display_change (bool ok); + [NoWrapper] + public virtual void confirm_display_change (); +@@ -618,7 +638,9 @@ namespace Meta { + [NoWrapper] + public virtual void destroy (Meta.WindowActor actor); + public void destroy_completed (Meta.WindowActor actor); ++#if !HAS_MUTTER42 + public void end_modal (uint32 timestamp); ++#endif + public unowned Meta.Display get_display (); + public unowned Meta.PluginInfo? get_info (); + [NoWrapper] +@@ -767,19 +789,19 @@ namespace Meta { + public unowned GLib.SList get_sequences (); + [NoAccessorMethod] + public Meta.Display display { owned get; construct; } +- public signal void changed ([CCode (type = "gpointer")] Meta.StartupSequence object); ++ public signal void changed (Meta.StartupSequence object); + } + [CCode (cheader_filename = "meta/meta-startup-notification.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 unowned string? get_application_id (); + public bool get_completed (); +- public unowned string get_icon_name (); ++ 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 unowned string? get_wmclass (); + public int get_workspace (); + public string application_id { get; construct; } + public string icon_name { get; construct; } +@@ -840,7 +862,7 @@ namespace Meta { + 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 unowned string? get_client_machine (); + public Meta.WindowClientType get_client_type (); + public unowned GLib.Object get_compositor_private (); + public unowned string get_description (); +@@ -849,32 +871,32 @@ namespace Meta { + public unowned Cairo.Region? get_frame_bounds (); + public Meta.Rectangle get_frame_rect (); + public Meta.FrameType get_frame_type (); +- public unowned Meta.Group get_group (); +- 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 unowned Meta.Group? get_group (); ++ 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 unowned string? get_mutter_hints (); + public int get_pid (); + public unowned string get_role (); +- public unowned string get_sandboxed_app_id (); ++ public unowned string? get_sandboxed_app_id (); + public uint get_stable_sequence (); +- public unowned string get_startup_id (); ++ 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 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 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); +@@ -1394,7 +1416,9 @@ namespace Meta { + public enum GrabOp { + NONE, + WINDOW_BASE, ++#if !HAS_MUTTER42 + COMPOSITOR, ++#endif + WAYLAND_POPUP, + FRAME_BUTTON, + MOVING, +@@ -1568,12 +1592,14 @@ namespace Meta { + VERTICAL, + BOTH + } ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "meta/meta-plugin.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")] + [Flags] + public enum ModalOptions { + POINTER_ALREADY_GRABBED, + KEYBOARD_ALREADY_GRABBED + } ++#endif + [CCode (cheader_filename = "meta/meta-monitor-manager.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")] + public enum MonitorSwitchConfigType { + ALL_MIRROR, +diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi +index 04307759..c2a63a09 100644 +--- a/vapi/mutter-clutter.vapi ++++ b/vapi/mutter-clutter.vapi +@@ -6312,6 +6312,16 @@ namespace Clutter { + public virtual signal void gesture_end (Clutter.Actor actor); + public virtual signal bool gesture_progress (Clutter.Actor actor); + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_grab_ref", type_id = "clutter_grab_get_type ()", unref_function = "clutter_grab_unref")] ++ [Compact] ++ public class Grab { ++ public void dismiss (); ++ public Clutter.GrabState get_seat_state (); ++ public unowned Clutter.Grab @ref (); ++ public void unref (); ++ } ++#endif + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")] + [Version (since = "1.12")] + public class GridLayout : Clutter.LayoutManager { +@@ -6421,8 +6431,10 @@ namespace Clutter { + [Version (since = "1.6")] + public bool get_enabled (); + #endif ++#if !HAS_MUTTER42 + [Version (since = "1.10")] + public unowned Clutter.Actor get_grabbed_actor (); ++#endif + public virtual int get_group_n_modes (int group); + [Version (since = "1.6")] + public bool get_has_cursor (); +@@ -6430,7 +6442,9 @@ namespace Clutter { + [Version (since = "1.6")] + public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers); + public Clutter.InputDeviceMapping get_mapping_mode (); ++#endif + public int get_mode_switch_button_group (uint button); ++#if !HAS_MUTTER40 + [Version (since = "1.16")] + public Clutter.ModifierType get_modifier_state (); + #endif +@@ -6479,12 +6493,14 @@ namespace Clutter { + [Version (since = "1.10")] + public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode); + #endif ++#if !HAS_MUTTER42 + [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); ++#endif + #if !HAS_MUTTER40 + [Version (since = "1.6")] + public void set_enabled (bool enabled); +@@ -6492,8 +6508,10 @@ namespace Clutter { + public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers); + public void set_mapping_mode (Clutter.InputDeviceMapping mapping); + #endif ++#if !HAS_MUTTER42 + [Version (since = "1.10")] + public void ungrab (); ++#endif + #if !HAS_MUTTER40 + [Version (since = "1.2")] + public void update_from_event (Clutter.Event event, bool update_stage); +@@ -7185,6 +7203,10 @@ namespace Clutter { + public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types (); + #endif + public bool get_touch_mode (); ++#if HAS_MUTTER42 ++ [NoWrapper] ++ public virtual Clutter.GrabState grab (uint32 time); ++#endif + #if HAS_MUTTER40 + public virtual bool handle_event_post (Clutter.Event event); + #elif HAS_MUTTER338 +@@ -7204,6 +7226,10 @@ namespace Clutter { + #endif + public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type); + public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings); ++#if HAS_MUTTER42 ++ [NoWrapper] ++ public virtual void ungrab (uint32 time); ++#endif + public void uninhibit_unfocus (); + public virtual void warp_pointer (int x, int y); + #if !HAS_MUTTER42 +@@ -7327,7 +7353,9 @@ namespace Clutter { + public bool capture (bool paint, Cairo.RectangleInt rect, [CCode (array_length_cname = "out_n_captures", array_length_pos = 3.1)] out Clutter.Capture[] out_captures); + #endif + #if HAS_MUTTER40 ++#if !HAS_MUTTER42 + public void capture_into (Cairo.RectangleInt rect, float scale, uint8 data, int stride); ++#endif + public void capture_view_into (Clutter.StageView view, Cairo.RectangleInt rect, uint8 data, int stride); + #else + public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data); +@@ -7365,12 +7393,15 @@ namespace Clutter { + public int64 get_frame_counter (); + [Version (since = "0.6")] + public unowned Clutter.Actor get_key_focus (); ++#if HAS_MUTTER42 ++ public unowned Clutter.Actor get_grab_actor (); ++#endif + #if !HAS_MUTTER42 + [Version (since = "1.2")] + public void get_minimum_size (out uint width, out uint height); +-#endif + [Version (since = "1.8")] + public bool get_motion_events_enabled (); ++#endif + public Clutter.Perspective get_perspective (); + #if !HAS_MUTTER338 + [Version (since = "1.8")] +@@ -7380,8 +7411,13 @@ namespace Clutter { + public bool get_throttle_motion_events (); + [Version (since = "0.4")] + public unowned string get_title (); ++#if HAS_MUTTER42 ++ public Clutter.Grab grab (Clutter.Actor actor); ++#endif ++#if !HAS_MUTTER42 + [Version (since = "1.2")] + public bool get_use_alpha (); ++#endif + #if HAS_MUTTER338 + public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; + #if HAS_MUTTER42 +@@ -7414,8 +7450,10 @@ namespace Clutter { + public void set_key_focus (Clutter.Actor? actor); + [Version (since = "1.2")] + public void set_minimum_size (uint width, uint height); ++#if !HAS_MUTTER42 + [Version (since = "1.8")] + public void set_motion_events_enabled (bool enabled); ++#endif + #if !HAS_MUTTER338 + public void set_perspective (Clutter.Perspective perspective); + #endif +@@ -7423,8 +7461,10 @@ namespace Clutter { + public void set_throttle_motion_events (bool throttle); + [Version (since = "0.4")] + public void set_title (string title); ++#if !HAS_MUTTER42 + [Version (since = "1.2")] + public void set_use_alpha (bool use_alpha); ++#endif + #if HAS_MUTTER42 + public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, Cairo.Region region, bool emit_crossing); + #elif HAS_MUTTER40 +@@ -8064,6 +8104,9 @@ namespace Clutter { + [CCode (has_construct_function = false)] + protected VirtualInputDevice (); + public int get_device_type (); ++#if HAS_MUTTER42 ++ public unowned Clutter.Seat get_seat (); ++#endif + 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); +@@ -8075,8 +8118,12 @@ namespace Clutter { + 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; } ++#if HAS_MUTTER42 ++ public Clutter.Seat seat { get; construct; } ++#else + [NoAccessorMethod] + public Clutter.Seat seat { owned get; construct; } ++#endif + } + [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")] + [Version (since = "1.12")] +@@ -8649,6 +8696,9 @@ namespace Clutter { + FLAG_INPUT_METHOD, + #if HAS_MUTTER40 + FLAG_RELATIVE_MOTION, ++#endif ++#if HAS_MUTTER42 ++ FLAG_GRAB_NOTIFY, + #endif + FLAG_REPEATED + } +@@ -8747,6 +8797,16 @@ namespace Clutter { + AFTER, + BEFORE + } ++#if HAS_MUTTER42 ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAB_STATE_", type_id = "clutter_grab_state_get_type ()")] ++ [Flags] ++ public enum GrabState { ++ NONE, ++ POINTER, ++ KEYBOARD, ++ ALL ++ } ++#endif + [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 { +@@ -9300,13 +9360,13 @@ namespace Clutter { + BOTH + } + #endif +- [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")] ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_", type_id = "clutter_image_error_get_type ()")] + [Version (since = "1.10")] + public errordomain ImageError { + DATA; + public static GLib.Quark quark (); + } +- [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")] ++ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_", type_id = "clutter_script_error_get_type ()")] + [Version (since = "0.6")] + public errordomain ScriptError { + TYPE_FUNCTION, +@@ -9360,8 +9420,10 @@ namespace Clutter { + [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")] + [Version (since = "0.8")] + public const int PRIORITY_REDRAW; ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "clutter/clutter.h")] + public static void base_init (); ++#endif + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "1.12")] + public static void cairo_clear (Cairo.Context cr); +@@ -9402,9 +9464,11 @@ namespace Clutter { + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "0.4")] + public static unowned Clutter.Backend get_default_backend (); ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "0.6")] + public static uint get_default_frame_rate (); ++#endif + [CCode (cheader_filename = "clutter/clutter.h")] + [Version (since = "1.2")] + public static Clutter.TextDirection get_default_text_direction (); +@@ -9441,8 +9505,10 @@ namespace Clutter { + [CCode (cheader_filename = "clutter/clutter.h")] + public static void main_quit (); + #endif ++#if !HAS_MUTTER42 + [CCode (cheader_filename = "clutter/clutter.h")] + public static void set_custom_backend_func (void* func); ++#endif + [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.vapi b/vapi/mutter-cogl-6.vapi +index 526bb415..89a1169e 100644 +--- a/vapi/mutter-cogl-6.vapi ++++ b/vapi/mutter-cogl-6.vapi +@@ -1136,8 +1136,6 @@ namespace Cogl { + #if HAS_MUTTER42 + [CCode (cname = "COGL_FEATURE_ID_TIMESTAMP_QUERY")] + OGL_FEATURE_ID_TIMESTAMP_QUERY, +- [CCode (cname = "COGL_FEATURE_ID_GET_GPU_TIME")] +- OGL_FEATURE_ID_GET_GPU_TIME, + #endif + [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] + OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL +@@ -1369,7 +1367,7 @@ namespace Cogl { + SYNC_AND_COMPLETE_EVENT, + N_FEATURES + } +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)] + [Version (since = "1.4")] + public errordomain BitmapError { + FAILED, +@@ -1377,7 +1375,7 @@ namespace Cogl { + CORRUPT_IMAGE; + public static uint32 quark (); + } +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)] + [Version (since = "1.0")] + public errordomain BlendStringError { + PARSE_ERROR, +@@ -1387,13 +1385,18 @@ namespace Cogl { + [CCode (cheader_filename = "cogl/cogl.h")] + public static uint32 quark (); + } +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)] + public errordomain FramebufferError { + [CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")] + FRAMEBUFFER_ERROR_ALLOCATE + } ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)] ++ public errordomain RendererError { ++ XLIB_DISPLAY_OPEN, ++ BAD_CONSTRAINT ++ } + #if HAS_MUTTER40 +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SCANOUT_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SCANOUT_ERROR_", has_type_id = false)] + public errordomain ScanoutError { + [CCode (cname = "COGL_SCANOUT_ERROR_INHIBITED")] + SCANOUT_ERROR_INHIBITED; +@@ -1401,18 +1404,13 @@ namespace Cogl { + public static GLib.Quark quark (); + } + #endif +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_")] +- public errordomain RendererError { +- XLIB_DISPLAY_OPEN, +- BAD_CONSTRAINT +- } +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)] + [Version (since = "1.4")] + public errordomain SystemError { + UNSUPPORTED, + NO_MEMORY + } +- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_")] ++ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)] + [Version (since = "1.8")] + public errordomain TextureError { + SIZE, +@@ -1464,7 +1462,7 @@ namespace Cogl { + [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; ++ public static bool blit_framebuffer (Cogl.Framebuffer framebuffer, Cogl.Framebuffer dst, 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); + #if !HAS_MUTTER40 diff --git a/changelog b/changelog new file mode 100644 index 0000000..10640c4 --- /dev/null +++ b/changelog @@ -0,0 +1,170 @@ +* Fri Jul 23 2021 Fedora Release Engineering - 3.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 +- Update to version 3.0.0. + +* Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 +- Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. +- Rebuilt for granite 6 soname bump. + +* Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 +- Add patch for initial mutter 3.38 support. + +* Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 +- Update to version 2.3.2. + +* Fri May 01 2020 Fabio Valentini - 2.3.1-3 +- Obsolete the retired wingpanel-indicator-ayatana package. + +* Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 +- Rebuild for gala 3.3.0 and mutter 3.36. + +* Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 +- Update to version 2.3.1. + +* Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 +- Bump to commit 88305e0. + +* Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 +- Update to version 2.3.0. + +* Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 +- Update to version 2.2.6. + +* Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 +- Update to version 2.2.5. + +* Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 +- Update to version 2.2.4. + +* Tue Apr 16 2019 Adam Williamson - 2.2.3-2 +- Rebuild with Meson fix for #1699099 + +* Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 +- Update to version 2.2.3. + +* Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jan 18 2019 Fabio Valentini - 2.2.2-1 +- Update to version 2.2.2. + +* Thu Dec 20 2018 Fabio Valentini - 2.2.1-1 +- Update to version 2.2.1. + +* Fri Oct 05 2018 Fabio Valentini - 2.2.0-1 +- Update to version 2.2.0. + +* Sun Sep 09 2018 Fabio Valentini - 2.1.1-4 +- Rebuild for gala mutter328 support. + +* Sat Jul 14 2018 Fedora Release Engineering - 2.1.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Jul 11 2018 Fabio Valentini - 2.1.1-2 +- Add missing BR: gcc, gcc-c++. + +* Fri Jul 06 2018 Fabio Valentini - 2.1.1-1 +- Update to version 2.1.1. + +* Wed Jun 13 2018 Fabio Valentini - 2.1.0-2 +- Rebuild for granite5 soname bump. + +* Thu Jun 07 2018 Fabio Valentini - 2.1.0-1 +- Update to version 2.1.0. + +* Tue Mar 13 2018 Fabio Valentini - 2.0.4-6 +- Add patch to support and bump release for mutter 3.28. + +* Fri Feb 09 2018 Fedora Release Engineering - 2.0.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Jan 23 2018 Fabio Valentini - 2.0.4-4 +- Include upstream patch to fix undefined symbols. + +* Sat Jan 06 2018 Fabio Valentini - 2.0.4-3 +- Remove icon cache scriptlets, replaced by file triggers. + +* Sat Nov 04 2017 Fabio Valentini - 2.0.4-2 +- Rebuild for granite soname bump. + +* Wed Sep 13 2017 Fabio Valentini - 2.0.4-1 +- Update to version 2.0.4. + +* Mon Sep 04 2017 Fabio Valentini - 2.0.3-5.20170902.git434f674 +- Bump to commit 434f674, which includes fixes for the latest mutter. + +* Sat Sep 02 2017 Fabio Valentini - 2.0.3-4.20170901.git7a1a583 +- Bump to commit 7a1a583, which includes support for the latest mutter. + +* Thu Aug 03 2017 Fedora Release Engineering - 2.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 2.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Tue May 30 2017 Fabio Valentini - 2.0.3-1 +- Update to version 2.0.3. + +* Sat Apr 08 2017 Fabio Valentini - 2.0.2-2 +- Create and own missing settings directory. + +* Fri Mar 17 2017 Fabio Valentini - 2.0.2-1 +- Update to version 2.0.2. +- Remove upstreamed patches. + +* Wed Feb 22 2017 Fabio Valentini - 2.0.1-12 +- Rebuild for new gala snapshot. + +* Sat Feb 11 2017 Fedora Release Engineering - 2.0.1-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Jan 11 2017 Fabio Valentini - 2.0.1-10 +- Add patch to fix pkgconfig file. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-9 +- Create and own plugin directory. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-8 +- Split off -libs subpackage. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-7 +- Don't let COPYING be executable. + +* Fri Jan 06 2017 Fabio Valentini - 2.0.1-6 +- Clean up spec file. + +* Thu Nov 17 2016 Fabio Valentini - 2.0.1-5 +- Add rpath workaround for f25. + +* Thu Sep 29 2016 Fabio Valentini - 2.0.1-4 +- Mass rebuild. + +* Wed Sep 28 2016 Fabio Valentini - 2.0.1-3 +- Spec file cleanups. + +* Mon Sep 19 2016 Fabio Valentini - 2.0.1-2 +- Spec file cosmetics. + +* Sun Aug 21 2016 Fabio Valentini - 2.0.1-1 +- Update to version 2.0.1. + +* Fri Aug 19 2016 Fabio Valentini - 0.4-1 +- Update to version 0.4. diff --git a/dead.package b/dead.package deleted file mode 100644 index 43a9af6..0000000 --- a/dead.package +++ /dev/null @@ -1 +0,0 @@ -remove package (temporarily) due to unresolved issues with GNOME 43 diff --git a/sources b/sources new file mode 100644 index 0000000..0552b68 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (wingpanel-3.0.2.tar.gz) = 31e8584e3e243fcfc344d4f264f284d81fbc56bc08f3e75475946f78c504da74f8a8e3d53155d1238ab7398e02d1532f87790cb51bd59469ffd360e21a509c53 diff --git a/wingpanel.rpmlintrc b/wingpanel.rpmlintrc new file mode 100644 index 0000000..80b3bf5 --- /dev/null +++ b/wingpanel.rpmlintrc @@ -0,0 +1,6 @@ +# false positives +addFilter("E: invalid-lc-messages-dir /usr/share/locale/bh*") +addFilter("E: invalid-lc-messages-dir /usr/share/locale/mo*") + +# don't care about manpages +addFilter("W: no-manual-page-for-binary wingpanel*") diff --git a/wingpanel.spec b/wingpanel.spec new file mode 100644 index 0000000..5f274af --- /dev/null +++ b/wingpanel.spec @@ -0,0 +1,130 @@ +%global appname io.elementary.wingpanel + +%global common_description %{expand: +Stylish top panel that holds indicators and spawns an application +launcher.} + +Name: wingpanel +Summary: Stylish top panel +Version: 3.0.2 +Release: %autorelease +License: GPLv2+ + +URL: https://github.com/elementary/wingpanel +Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz + +# merged PR for mutter 42 / libmutter-10 support +Patch0: %{url}/pull/434.patch +# merged PR to support latest mutter / gala changes +Patch1: %{url}/pull/453.patch + +BuildRequires: desktop-file-utils +BuildRequires: gettext +BuildRequires: libappstream-glib +BuildRequires: meson +BuildRequires: vala >= 0.24.0 + +BuildRequires: mesa-libEGL-devel + +BuildRequires: pkgconfig(gala) +BuildRequires: pkgconfig(gdk-x11-3.0) +BuildRequires: pkgconfig(gee-0.8) +BuildRequires: pkgconfig(glib-2.0) >= 2.32 +BuildRequires: pkgconfig(granite) >= 5.4.0 +BuildRequires: pkgconfig(gtk+-3.0) >= 3.10 +BuildRequires: pkgconfig(mutter-clutter-10) +BuildRequires: pkgconfig(mutter-cogl-10) +BuildRequires: pkgconfig(mutter-cogl-pango-10) + +Requires: %{name}-libs%{?_isa} = %{version}-%{release} + +# wingpanel ayatana appindicator support was abandoned by upstream +# wingpanel-indicator-ayatana-2.0.3-10.fc32 retired for fedora 33+ +Obsoletes: wingpanel-indicator-ayatana < 2.0.3-11 + +%description %{common_description} + + +%package libs +Summary: Stylish top panel (shared library) + +%description libs %{common_description} + +This package contains the shared library. + + +%package devel +Summary: Stylish top panel (development files) +Requires: %{name}-libs%{?_isa} = %{version}-%{release} + +%description devel %{common_description} + +This package contains the files required for developing for wingpanel. + + +%prep +%autosetup -p1 + + +%build +%meson +%meson_build + + +%install +%meson_install + +%find_lang %{appname} + +# create plugin directory +mkdir -p %{buildroot}/%{_libdir}/wingpanel + +# create settings directory +mkdir -p %{buildroot}/%{_sysconfdir}/wingpanel.d + + +%check +desktop-file-validate \ + %{buildroot}/%{_datadir}/applications/%{appname}.desktop + +desktop-file-validate \ + %{buildroot}/%{_sysconfdir}/xdg/autostart/%{appname}.desktop + +appstream-util validate-relax --nonet \ + %{buildroot}/%{_datadir}/metainfo/%{appname}.appdata.xml + + +%files -f %{appname}.lang +%config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}.desktop + +%{_bindir}/%{appname} + +%{_libdir}/gala/plugins/libwingpanel-interface.so + +%{_datadir}/applications/%{appname}.desktop +%{_datadir}/glib-2.0/schemas/io.elementary.desktop.wingpanel.gschema.xml +%{_datadir}/icons/hicolor/scalable/apps/%{appname}.svg +%{_datadir}/metainfo/%{appname}.appdata.xml + +%files libs +%license COPYING +%doc README.md + +%dir %{_sysconfdir}/wingpanel.d +%dir %{_libdir}/wingpanel + +%{_libdir}/libwingpanel.so.3 +%{_libdir}/libwingpanel.so.3.* + +%files devel +%{_includedir}/wingpanel/ + +%{_libdir}/libwingpanel.so +%{_libdir}/pkgconfig/wingpanel.pc + +%{_datadir}/vala/vapi/wingpanel.deps +%{_datadir}/vala/vapi/wingpanel.vapi + + +%changelog +%autochangelog From b70893e3cd525b8b5ca538e3055f9cbe22995ef6 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Thu, 21 Dec 2023 20:50:37 +0100 Subject: [PATCH 31/44] Bump to commit 0fb4a14 --- .gitignore | 1 + 434.patch | 1993 ------------------------------------------- 453.patch | 582 ------------- changelog | 170 ---- sources | 2 +- wingpanel.rpmlintrc | 6 - wingpanel.spec | 280 +++++- 7 files changed, 236 insertions(+), 2798 deletions(-) delete mode 100644 434.patch delete mode 100644 453.patch delete mode 100644 changelog delete mode 100644 wingpanel.rpmlintrc diff --git a/.gitignore b/.gitignore index 8116fdb..8e41592 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ /wingpanel-3.0.0.tar.gz /wingpanel-3.0.1.tar.gz /wingpanel-3.0.2.tar.gz +/wingpanel-0fb4a14.tar.gz diff --git a/434.patch b/434.patch deleted file mode 100644 index bd4bab1..0000000 --- a/434.patch +++ /dev/null @@ -1,1993 +0,0 @@ -From 3cb4daa89a04f0f134679229d9dc4c9b1638a12f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Corentin=20No=C3=ABl?= -Date: Tue, 18 Jan 2022 19:45:40 +0100 -Subject: [PATCH] Add support for Mutter 42 - ---- - vapi/Clutter-10-custom.vala | 53 +++++++++ - vapi/Clutter-10.metadata | 192 ++++++++++++++++++++++++++++++++ - vapi/Clutter-9-custom.vala | 23 ++++ - vapi/Clutter-9.metadata | 19 +++- - vapi/Cogl-10-custom.vala | 161 ++++++++++++++++++++++++++ - vapi/Cogl-10.metadata | 68 +++++++++++ - vapi/Meta-10.metadata | 181 ++++++++++++++++++++++++++++++ - vapi/config.vapi | 2 + - vapi/libmutter-10.deps | 1 + - vapi/libmutter-10.vapi | 1 + - vapi/libmutter.vapi | 46 +++++++- - vapi/libsystemd.vapi | 18 +++ - vapi/meson.build | 69 ++++++++++++ - vapi/mutter-clutter-10.deps | 6 + - vapi/mutter-clutter-10.vapi | 1 + - vapi/mutter-clutter-9.deps | 2 +- - vapi/mutter-clutter.vapi | 184 +++++++++++++++++++++++++----- - vapi/mutter-cogl-10.deps | 1 + - vapi/mutter-cogl-10.vapi | 1 + - vapi/mutter-cogl-6.vapi | 77 ++++++++++++- - vapi/mutter-cogl-pango-10.vapi | 1 + - wingpanel-interface/meson.build | 11 ++ - 22 files changed, 1080 insertions(+), 38 deletions(-) - create mode 100644 vapi/Clutter-10-custom.vala - create mode 100644 vapi/Clutter-10.metadata - create mode 100644 vapi/Cogl-10-custom.vala - create mode 100644 vapi/Cogl-10.metadata - create mode 100644 vapi/Meta-10.metadata - create mode 120000 vapi/libmutter-10.deps - create mode 120000 vapi/libmutter-10.vapi - create mode 100644 vapi/libsystemd.vapi - create mode 100644 vapi/mutter-clutter-10.deps - create mode 120000 vapi/mutter-clutter-10.vapi - create mode 120000 vapi/mutter-cogl-10.deps - create mode 120000 vapi/mutter-cogl-10.vapi - create mode 120000 vapi/mutter-cogl-pango-10.vapi - -diff --git a/vapi/Clutter-10-custom.vala b/vapi/Clutter-10-custom.vala -new file mode 100644 -index 00000000..e5c71c2d ---- /dev/null -+++ b/vapi/Clutter-10-custom.vala -@@ -0,0 +1,53 @@ -+namespace Clutter { -+ public struct Color { -+ [CCode (cname = "_vala_clutter_color_from_hls")] -+ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_hls (hue, luminance, saturation); -+ return color; -+ } -+ [CCode (cname = "_vala_clutter_color_from_pixel")] -+ public static Clutter.Color? from_pixel (uint32 pixel) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_pixel (pixel); -+ return color; -+ } -+ [CCode (cname = "_vala_clutter_color_from_string")] -+ public static Clutter.Color? from_string (string str) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_string (str); -+ return color; -+ } -+ [CCode (cname = "clutter_color_from_string")] -+ public bool parse_string (string str); -+ } -+ -+ 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 (); -+ } -+ -+ 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); -+ } -+ -+ [CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)] -+ public struct Capture { -+ } -+} -diff --git a/vapi/Clutter-10.metadata b/vapi/Clutter-10.metadata -new file mode 100644 -index 00000000..5b69ae58 ---- /dev/null -+++ b/vapi/Clutter-10.metadata -@@ -0,0 +1,192 @@ -+// Non mini-object -+ActorBox struct -+Color struct -+Knot struct -+Margin struct -+PaintVolume struct -+PathNode struct -+Perspective struct -+Units struct -+ -+*.ref unowned -+ -+Actor -+ .apply_transform.matrix ref -+ .get_abs_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" -+ScriptError errordomain -+ImageError errordomain -+ -+// 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#virtual_method name="get_paint_volume_vfunc" -+ .get_paint_volume#virtual_method.volume out -+Container -+ .add_actor skip=false -+ .class_* skip -+Text -+ .activate#method name="try_activate" -+ .insert_text#signal skip -+TextBuffer.get_text#virtual_method name="get_text_with_length" -+ -+// virtual/abstract distinction -+Container -+ .*_child_meta#virtual_method virtual -+ -+// Default values -+Stage.read_pixels -+ .width default=-1 -+ .height default=-1 -+Stage.paint_to_buffer -+ .data type="uint8[]" -+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 -+Backend -+ .get_cogl_context skip=false -+Container -+ .child_get skip=false -+ .child_set skip=false -+ .remove 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 -+ -+// Skipped upstream for unknown reasons -+Interval.register_progress_func 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 -+Margin -+ .new skip -+ -+// Class methods -+container_class_find_child_property skip -+container_class_list_child_properties skip -+ -+// Move symbols -+units_from_* skip -+ -+// Struct return values -+color_get_static nullable -+ -+// Upstream -+Event -+ .get_position.position out -+ -+FrameListenerIface skip -+FrameClock.new skip -+ -+// Remove for clutter-2.0 -+///////////////////////// -+ -+StageView.layout skip -+ -+Stage -+ .event name="emit_event" -+ .paint_view.redraw_clip type="Cairo.Region" -+ -+Capture -+ .image type="Cairo.ImageSurface" -+ -+// *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" -+DeviceEvent struct=false base_type="Clutter.Event" -+IMEvent struct=false base_type="Clutter.Event" -+KeyEvent struct=false base_type="Clutter.Event" -+MotionEvent struct=false base_type="Clutter.Event" -+PadButtonEvent struct=false base_type="Clutter.Event" -+PadRingEvent struct=false base_type="Clutter.Event" -+PadStripEvent struct=false base_type="Clutter.Event" -+ProximityEvent struct=false base_type="Clutter.Event" -+ScrollEvent struct=false base_type="Clutter.Event" -+TouchEvent struct=false base_type="Clutter.Event" -+TouchpadHoldEvent 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" -+ -+Color.from_hls name="init_from_hls" -+Color.from_pixel name="init_from_pixel" -+Color.from_string name="init_from_string" -+ -+Color.new name="from_rgba" symbol_type="function" -+ .alpha default=0 -+ .blue default=0 -+ .green default=0 -+ .red default=0 -+ -+Color.init -+ .alpha default=0 -+ .blue default=0 -+ .green default=0 -+ .red default=0 -+ -+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/Clutter-9-custom.vala b/vapi/Clutter-9-custom.vala -index abc9b22d..e5c71c2d 100644 ---- a/vapi/Clutter-9-custom.vala -+++ b/vapi/Clutter-9-custom.vala -@@ -1,4 +1,27 @@ - namespace Clutter { -+ public struct Color { -+ [CCode (cname = "_vala_clutter_color_from_hls")] -+ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_hls (hue, luminance, saturation); -+ return color; -+ } -+ [CCode (cname = "_vala_clutter_color_from_pixel")] -+ public static Clutter.Color? from_pixel (uint32 pixel) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_pixel (pixel); -+ return color; -+ } -+ [CCode (cname = "_vala_clutter_color_from_string")] -+ public static Clutter.Color? from_string (string str) { -+ var color = Clutter.Color.alloc (); -+ color.init_from_string (str); -+ return color; -+ } -+ [CCode (cname = "clutter_color_from_string")] -+ public bool parse_string (string str); -+ } -+ - public interface Container : GLib.Object { - public void add (params Clutter.Actor[] actors); - [CCode (cname = "clutter_container_class_find_child_property")] -diff --git a/vapi/Clutter-9.metadata b/vapi/Clutter-9.metadata -index 7955ad82..0750e787 100644 ---- a/vapi/Clutter-9.metadata -+++ b/vapi/Clutter-9.metadata -@@ -106,8 +106,6 @@ ActorBox - .new skip - .from_vertices skip - Units.from_* skip --Color -- .new skip - Margin - .new skip - -@@ -116,7 +114,6 @@ container_class_find_child_property skip - container_class_list_child_properties skip - - // Move symbols --color_from_* skip - units_from_* skip - - // Struct return values -@@ -178,6 +175,22 @@ threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout" - // Backwards compatibility - Color.alloc symbol_type="function" - -+Color.from_hls name="init_from_hls" -+Color.from_pixel name="init_from_pixel" -+Color.from_string name="init_from_string" -+ -+Color.new name="from_rgba" symbol_type="function" -+ .alpha default=0 -+ .blue default=0 -+ .green default=0 -+ .red default=0 -+ -+Color.init -+ .alpha default=0 -+ .blue default=0 -+ .green default=0 -+ .red default=0 -+ - BinAlignment deprecated=false deprecated_since=null - BinAlignment.* deprecated - BinAlignment.start deprecated=false -diff --git a/vapi/Cogl-10-custom.vala b/vapi/Cogl-10-custom.vala -new file mode 100644 -index 00000000..f6034717 ---- /dev/null -+++ b/vapi/Cogl-10-custom.vala -@@ -0,0 +1,161 @@ -+namespace Cogl { -+ public struct Color { -+ [Version (since = "1.4")] -+ [CCode (cname="cogl_color_init_from_4f")] -+ public Color.from_4f (float red, float green, float blue, float alpha); -+ [Version (since = "1.4")] -+ [CCode (cname="cogl_color_init_from_4fv")] -+ public Color.from_4fv (float color_array); -+ [Version (since = "1.4")] -+ [CCode (cname="cogl_color_init_from_4ub")] -+ public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha); -+ [Version (since = "1.16")] -+ [CCode (cname="cogl_color_init_from_hsl")] -+ public Color.from_hsl (float hue, float saturation, float luminance); -+ } -+ -+ [Compact] -+ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] -+ public class Shader : Cogl.Handle { -+ } -+ -+ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")] -+ public class Primitive : Cogl.Object { -+ [CCode (has_construct_function = false)] -+ protected Primitive (); -+ [Version (since = "1.10")] -+ public Cogl.Primitive copy (); -+ [Version (since = "1.16")] -+ public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline); -+ public int get_first_vertex (); -+ public Cogl.VerticesMode get_mode (); -+ [Version (since = "1.8")] -+ public int get_n_vertices (); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data); -+ [CCode (has_construct_function = false)] -+ [Version (since = "1.6")] -+ public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data); -+ public void set_first_vertex (int first_vertex); -+ public void set_mode (Cogl.VerticesMode mode); -+ [Version (since = "1.8")] -+ public void set_n_vertices (int n_vertices); -+ } -+ -+ [Compact] -+ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] -+ public class Program : Cogl.Handle { -+ } -+ -+ [Compact] -+ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")] -+ public class Handle { -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")] -+ [Version (deprecated = true, deprecated_since = "1.16")] -+ public bool is_material (); -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")] -+ [Version (deprecated = true, deprecated_since = "1.16")] -+ public bool is_program (Cogl.Handle handle); -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")] -+ [Version (deprecated = true, deprecated_since = "1.16")] -+ public bool is_shader (); -+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")] -+ public bool is_texture (); -+ } -+ -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2 { -+ public float x; -+ public float y; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2C4 { -+ public float x; -+ public float y; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2T2 { -+ public float x; -+ public float y; -+ public float s; -+ public float t; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP2T2C4 { -+ public float x; -+ public float y; -+ public float s; -+ public float t; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3 { -+ public float x; -+ public float y; -+ public float z; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3C4 { -+ public float x; -+ public float y; -+ public float z; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3T2 { -+ public float x; -+ public float y; -+ public float z; -+ public float s; -+ public float t; -+ } -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Version (since = "1.6")] -+ public struct VertexP3T2C4 { -+ public float x; -+ public float y; -+ public float z; -+ public float s; -+ public float t; -+ public uint8 r; -+ public uint8 g; -+ public uint8 b; -+ public uint8 a; -+ } -+} -diff --git a/vapi/Cogl-10.metadata b/vapi/Cogl-10.metadata -new file mode 100644 -index 00000000..06197be7 ---- /dev/null -+++ b/vapi/Cogl-10.metadata -@@ -0,0 +1,68 @@ -+* cheader_filename="cogl/cogl.h" -+ -+Color struct -+ -+_ColorSizeCheck skip -+_TextureVertexSizeCheck skip -+ -+Color.equal.v1 type="Cogl.Color" -+Color.equal.v2 type="Cogl.Color" -+color_equal skip -+ -+Context.free_timestamp_query.query owned -+ -+texture_new_* name="texture_new_(.+)" parent="Cogl.Texture" -+Texture -+ .get_data.data type="uint8[]" -+ .new_from_data.data type="uint8[]" -+ .set_data.data type="uint8[]" -+ .set_region.data type="uint8[]" -+ -+Texture2D -+ .new_from_data skip=false -+ .new_from_data.data array=true -+ -+shader_* name="shader_(.+)" parent="Cogl.Shader" -+shader_* symbol_type="method" instance_idx=0 -+ -+program_* name="program_(.+)" parent="Cogl.Program" -+program_attach_shader symbol_type="method" instance_idx=0 -+program_get_uniform_location symbol_type="method" instance_idx=0 -+program_link symbol_type="method" instance_idx=0 -+program_set_uniform_1f symbol_type="method" instance_idx=0 -+program_set_uniform_1i symbol_type="method" instance_idx=0 -+program_set_uniform_float symbol_type="method" instance_idx=0 -+program_set_uniform_int symbol_type="method" instance_idx=0 -+program_set_uniform_matrix symbol_type="method" instance_idx=0 -+ -+is_bitmap parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_program parent="Cogl.Handle" -+is_shader parent="Cogl.Handle" -+is_texture parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_context parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_framebuffer parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_frame_info parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_pipeline parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_texture_2d parent="Cogl.Object" symbol_type="method" instance_idx=0 -+is_texture_2d_sliced parent="Cogl.Object" symbol_type="method" instance_idx=0 -+ -+create_program type="unowned Cogl.Program" name="create" parent="Cogl.Program" -+create_shader type="unowned Cogl.Shader" name="create" parent="Cogl.Shader" -+ -+foreach_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 -+get_graphics_reset_status parent="Cogl.Context" symbol_type="method" instance_idx=0 -+has_feature parent="Cogl.Context" symbol_type="method" instance_idx=0 -+ -+Bitmap.error_quark parent="Cogl.BitmapError" name="quark" -+Texture.error_quark parent="Cogl.TextureError" name="quark" -+texture_error_quark skip -+Scanout.error_quark parent="Cogl.ScanoutError" name="quark" -+scanout_error_quark skip -+ -+BitmapError errordomain -+BlendStringError errordomain -+RendererError errordomain -+SystemError errordomain -+TextureError errordomain -+FramebufferError errordomain -+ScanoutError errordomain -diff --git a/vapi/Meta-10.metadata b/vapi/Meta-10.metadata -new file mode 100644 -index 00000000..eaefc051 ---- /dev/null -+++ b/vapi/Meta-10.metadata -@@ -0,0 +1,181 @@ -+* skip=false -+*.* skip=false -+* cheader_filename="meta/main.h" -+ -+Backend cheader_filename="meta/meta-backend.h" -+Backend.gpu_added skip -+get_backend parent="Meta.Backend" cheader_filename="meta/meta-backend.h" -+Background cheader_filename="meta/meta-background.h" -+Background.set_file.file nullable -+BackgroundContent.new symbol_type="constructor" -+BackgroundActor cheader_filename="meta/meta-background-actor.h" -+BackgroundContent cheader_filename="meta/meta-background-content.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" -+BarrierDirection cheader_filename="meta/barrier.h" -+BarrierEvent cheader_filename="meta/barrier.h" -+ButtonFunction cheader_filename="meta/common.h" -+ButtonLayout cheader_filename="meta/common.h" -+Compositor cheader_filename="meta/compositor.h" -+Compositor.sync_stack.stack type_arguments="Meta.Window" -+get_feedback_group_for_display parent="Meta.Display" symbol_type="method" name="get_feedback_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+get_stage_for_display parent="Meta.Display" symbol_type="method" name="get_stage" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+get_top_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_top_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+get_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+disable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="disable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+enable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="enable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+ -+get_window_actors parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" type_arguments="Meta.WindowActor" -+focus_stage_window parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+ -+CompEffect cheader_filename="meta/compositor.h" -+CloseDialog cheader_filename="meta/meta-close-dialog.h" -+CloseDialogResponse cheader_filename="meta/meta-close-dialog.h" -+Context cheader_filename="meta/meta-context.h" -+Cursor cheader_filename="meta/common.h" -+CursorTracker cheader_filename="meta/meta-cursor-tracker.h" -+CursorTracker.get_for_display parent="Meta.Display" symbol_type="method" instance_idx=0 name="get_cursor_tracker" -+CursorTracker.get_pointer.mods out -+DebugTopic cheader_filename="meta/util.h" -+Direction cheader_filename="meta/common.h" -+Display cheader_filename="meta/display.h" -+DisplayCorner cheader_filename="meta/display.h" -+DisplayDirection cheader_filename="meta/display.h" -+Dnd cheader_filename="meta/meta-dnd.h" -+EdgeType cheader_filename="meta/boxes.h" -+Edge cheader_filename="meta/boxes.h" -+Frame cheader_filename="meta/types.h" -+FrameBorders cheader_filename="meta/common.h" -+FrameFlags cheader_filename="meta/common.h" -+FrameType cheader_filename="meta/common.h" -+GrabOp cheader_filename="meta/common.h" -+Group cheader_filename="meta/group.h" -+Group.property_notify.event type="X.Event" ref -+IdleMonitor cheader_filename="meta/meta-idle-monitor.h" -+IdleMonitorWatchFunc cheader_filename="meta/meta-idle-monitor.h" -+InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" -+InhibitShortcutsDialogResponse cheader_filename="meta/meta-inhibit-shortcuts-dialog.h" -+KeyBinding cheader_filename="meta/keybindings.h" -+keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler" cheader_filename="meta/keybindings.h" -+KeyBindingAction cheader_filename="meta/prefs.h" -+KeyBindingFlags cheader_filename="meta/prefs.h" -+KeyHandlerFunc cheader_filename="meta/prefs.h" -+KeyHandlerFunc.event type="Clutter.KeyEvent?" -+KeyHandlerFunc.window nullable -+LaunchContext cheader_filename="meta/meta-launch-context.h" -+LaterType cheader_filename="meta/util.h" -+LocaleDirection cheader_filename="meta/util.h" -+MaximizeFlags cheader_filename="meta/window.h" -+ModalOptions cheader_filename="meta/meta-plugin.h" -+MonitorManager cheader_filename="meta/meta-monitor-manager.h" -+MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" -+MotionDirection cheader_filename="meta/common.h" -+PadActionType cheader_filename="meta/display.h" -+Plugin cheader_filename="meta/meta-plugin.h" -+Plugin.xevent_filter.event type="X.Event" ref -+PluginInfo cheader_filename="meta/meta-plugin.h" -+Preference cheader_filename="meta/prefs.h" -+PrefsChangedFunc cheader_filename="meta/prefs.h" -+Rectangle cheader_filename="meta/boxes.h" struct -+RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h" -+RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h" -+Selection cheader_filename="meta/meta-selection.h" -+SelectionSource cheader_filename="meta/meta-selection-source.h" -+SelectionSourceMemory cheader_filename="meta/meta-selection-source-memory.h" -+SelectionType cheader_filename="meta/meta-selection-source.h" -+Settings cheader_filename="meta/meta-settings.h" -+Shadow cheader_filename="meta/meta-shadow-factory.h" -+ShadowFactory cheader_filename="meta/meta-shadow-factory.h" -+ShadowMode cheader_filename="meta/meta-window-actor.h" -+ShadowParams cheader_filename="meta/meta-shadow-factory.h" -+ShapedTexture cheader_filename="meta/meta-shaped-texture.h" -+Side cheader_filename="meta/common.h" -+SizeChange cheader_filename="meta/compositor.h" -+SoundPlayer cheader_filename="meta/meta-sound-player.h" -+StartupNotification cheader_filename="meta/meta-startup-notification.h" -+StartupNotification.changed.object type="Meta.StartupSequence" -+StartupNotification.get_sequences type_arguments="Meta.StartupSequence" -+StartupSequence cheader_filename="meta/meta-startup-notification.h" -+StackLayer cheader_filename="meta/common.h" -+Stage cheader_filename="meta/meta-stage.h" -+Stage.is_focused parent="Meta.Display" symbol_type="method" name="stage_is_focused" instance_idx=0 cheader_filename="meta/compositor-mutter.h" -+Strut cheader_filename="meta/boxes.h" -+TabList cheader_filename="meta/display.h" -+TabShowType cheader_filename="meta/display.h" -+Theme cheader_filename="meta/theme.h" -+theme_get_default cheader_filename="meta/theme.h" -+theme_new cheader_filename="meta/theme.h" -+VirtualModifier cheader_filename="meta/common.h" -+Workspace cheader_filename="meta/workspace.h" -+WorkspaceManager cheader_filename="meta/meta-workspace-manager.h" -+Window cheader_filename="meta/window.h" -+Window.focus#signal name="focused" -+Window.icon type="Cairo.Surface" -+Window.mini_icon type="Cairo.Surface" -+WindowActor cheader_filename="meta/meta-window-actor.h" -+WindowClientType cheader_filename="meta/window.h" -+WindowForeachFunc cheader_filename="meta/window.h" -+WindowGroup cheader_filename="meta/meta-window-group.h" -+WindowMenuType cheader_filename="meta/compositor.h" -+WindowShape cheader_filename="meta/meta-window-shape.h" -+WindowType cheader_filename="meta/window.h" -+X11Display cheader_filename="meta/meta-x11-display.h" -+ -+rect skip -+prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h" -+ -+g_utf8_strndup skip -+ -+preference_to_string cheader_filename="meta/prefs.h" -+frame_type_to_string cheader_filename="meta/util.h" -+topic_to_string parent="Meta.DebugTopic" name="to_string" -+ -+CURRENT_TIME cheader_filename="meta/common.h" -+ICON_WIDTH cheader_filename="meta/common.h" -+ICON_HEIGHT cheader_filename="meta/common.h" -+MINI_ICON_WIDTH cheader_filename="meta/common.h" -+MINI_ICON_HEIGHT cheader_filename="meta/common.h" -+DEFAULT_ICON_NAME cheader_filename="meta/common.h" -+PRIORITY_RESIZE cheader_filename="meta/common.h" -+PRIORITY_BEFORE_REDRAW cheader_filename="meta/common.h" -+PRIORITY_REDRAW cheader_filename="meta/common.h" -+PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h" -+VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h" -+VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h" -+ -+add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" -+bug parent="Meta.Util" cheader_filename="meta/util.h" -+external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h" -+fatal parent="Meta.Util" cheader_filename="meta/util.h" -+get_locale_direction 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" -+remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" -+show_dialog parent="Meta.Util" cheader_filename="meta/util.h" -+show_dialog.columns type_arguments="string" nullable default=null -+show_dialog.entries type_arguments="string" nullable default=null -+show_dialog.transient_for default=0 -+show_dialog.icon_name nullable default=null -+show_dialog.cancel_text nullable default=null -+show_dialog.ok_text nullable default=null -+show_dialog.display nullable default=null -+show_dialog.timeout nullable default=null -+unsigned_long_equal parent="Meta.Util" name="ulong_equal" cheader_filename="meta/util.h" -+unsigned_long_equal.v1 type="ulong?" -+unsigned_long_equal.v2 type="ulong?" -+unsigned_long_hash parent="Meta.Util" name="ulong_hash" cheader_filename="meta/util.h" -+unsigned_long_hash.v type="ulong?" -+warning parent="Meta.Util" cheader_filename="meta/util.h" -+create_context parent="Meta.Context" name="new" symbol_type="constructor" cheader_filename="meta/meta-context.h" -+ -+x11_error_trap_pop parent="Meta.X11Display" symbol_type="method" name="error_trap_pop" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" -+x11_error_trap_pop_with_return parent="Meta.X11Display" symbol_type="method" name="error_trap_pop_with_return" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" -+x11_error_trap_push parent="Meta.X11Display" symbol_type="method" name="error_trap_push" instance_idx=0 cheader_filename="meta/meta-x11-errors.h" -+x11_init_gdk_display parent="Meta.X11Display" cheader_filename="meta/meta-x11-display.h" -diff --git a/vapi/config.vapi b/vapi/config.vapi -index c2c3a35b..35abae73 100644 ---- a/vapi/config.vapi -+++ b/vapi/config.vapi -@@ -18,6 +18,8 @@ - [CCode (cprefix = "", lower_case_cprefix = "", cheader_filename = "config.h")] - namespace Config - { -+ public const string GETTEXT_PACKAGE; -+ public const string LOCALEDIR; - public const string DATADIR; - public const string PKGDATADIR; - public const string VERSION; -diff --git a/vapi/libmutter-10.deps b/vapi/libmutter-10.deps -new file mode 120000 -index 00000000..cdf92777 ---- /dev/null -+++ b/vapi/libmutter-10.deps -@@ -0,0 +1 @@ -+libmutter-9.deps -\ No newline at end of file -diff --git a/vapi/libmutter-10.vapi b/vapi/libmutter-10.vapi -new file mode 120000 -index 00000000..3d8073f5 ---- /dev/null -+++ b/vapi/libmutter-10.vapi -@@ -0,0 +1 @@ -+libmutter-9.vapi -\ No newline at end of file -diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi -index baba792d..5dacb629 100644 ---- a/vapi/libmutter.vapi -+++ b/vapi/libmutter.vapi -@@ -137,14 +137,18 @@ namespace Meta { - #endif - [CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")] - public static GLib.Pid show_dialog (string type, string message, string? timeout = null, string? display = null, string? ok_text = null, string? cancel_text = null, string? icon_name = null, int transient_for = 0, GLib.SList? columns = null, GLib.SList? entries = null); -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "meta/util.h", cname = "meta_topic_real")] - public static void topic_real (Meta.DebugTopic topic, string format, ...); -+#endif - [CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")] - public static int ulong_equal ([CCode (type = "gconstpointer")] ulong? v1, [CCode (type = "gconstpointer")] ulong? v2); - [CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")] - public static uint ulong_hash ([CCode (type = "gconstpointer")] ulong? v); -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "meta/util.h", cname = "meta_verbose_real")] - public static void verbose_real (string format, ...); -+#endif - [CCode (cheader_filename = "meta/util.h", cname = "meta_warning")] - public static void warning (string format, ...); - } -@@ -159,16 +163,24 @@ namespace Meta { - public unowned Meta.IdleMonitor get_core_idle_monitor (); - #endif - public unowned Meta.Dnd get_dnd (); -+#if HAS_MUTTER42 -+ public unowned Meta.MonitorManager get_monitor_manager (); -+#endif - public unowned Meta.RemoteAccessController get_remote_access_controller (); - public unowned Meta.Settings get_settings (); - public unowned Clutter.Actor get_stage (); -+#if HAS_MUTTER42 -+ public bool is_headless (); -+#endif - public bool is_rendering_hardware_accelerated (); - public void lock_layout_group (uint idx); - public void set_keymap (string layouts, string variants, string options); - #if HAS_MUTTER41 - public Meta.Context context { get; construct; } - #endif -+#if !HAS_MUTTER42 - public void set_numlock (bool numlock_state); -+#endif - public signal void keymap_changed (); - public signal void keymap_layout_group_changed (uint object); - public signal void last_device_changed (Clutter.InputDevice object); -@@ -352,6 +364,10 @@ namespace Meta { - public void terminate_with_error (GLib.Error error); - [NoAccessorMethod] - public string name { owned get; construct; } -+#if HAS_MUTTER42 -+ [NoAccessorMethod] -+ public bool unsafe_mode { get; set; } -+#endif - } - #endif - [CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")] -@@ -365,6 +381,9 @@ namespace Meta { - public void get_pointer (out int x, out int y, out Clutter.ModifierType mods); - #endif - public bool get_pointer_visible (); -+#if HAS_MUTTER42 -+ public float get_scale (); -+#endif - public unowned Cogl.Texture get_sprite (); - public void set_pointer_visible (bool visible); - #if HAS_MUTTER338 -@@ -444,6 +463,9 @@ namespace Meta { - public unowned Meta.X11Display get_x11_display (); - public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags); - public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence); -+#if HAS_MUTTER42 -+ public GLib.List list_all_windows (); -+#endif - public bool remove_keybinding (string name); - public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode); - public void set_cursor (Meta.Cursor cursor); -@@ -569,6 +591,10 @@ namespace Meta { - public void switch_config (Meta.MonitorSwitchConfigType config_type); - [NoAccessorMethod] - public Meta.Backend backend { owned get; construct; } -+#if HAS_MUTTER42 -+ [NoAccessorMethod] -+ public bool has_builtin_panel { get; } -+#endif - #if HAS_MUTTER338 - public bool panel_orientation_managed { get; } - #endif -@@ -855,6 +881,9 @@ namespace Meta { - public unowned Meta.Workspace get_workspace (); - public X.Window get_xwindow (); - public void group_leader_changed (); -+#if HAS_MUTTER42 -+ public bool has_attached_dialogs (); -+#endif - public bool has_focus (); - public bool is_above (); - public bool is_always_on_all_workspaces (); -@@ -923,6 +952,10 @@ namespace Meta { - public string gtk_window_object_path { get; } - [NoAccessorMethod] - public Cairo.Surface icon { owned get; } -+#if HAS_MUTTER42 -+ [NoAccessorMethod] -+ public bool is_alive { get; } -+#endif - [NoAccessorMethod] - public bool maximized_horizontally { get; } - [NoAccessorMethod] -@@ -968,6 +1001,9 @@ namespace Meta { - public unowned Meta.Window get_meta_window (); - public unowned Meta.ShapedTexture get_texture (); - public bool is_destroyed (); -+#if HAS_MUTTER42 -+ public Clutter.Content? paint_to_content (Meta.Rectangle? clip) throws GLib.Error; -+#endif - public void sync_visibility (); - #if HAS_MUTTER338 - public void thaw (); -@@ -1277,6 +1313,10 @@ namespace Meta { - KMS, - SCREEN_CAST, - REMOTE_DESKTOP, -+#endif -+#if HAS_MUTTER42 -+ BACKEND, -+ RENDER, - #endif - DBUS - } -@@ -1433,7 +1473,9 @@ namespace Meta { - CYCLE_PANELS, - CYCLE_PANELS_BACKWARD, - SHOW_DESKTOP, -+#if !HAS_MUTTER42 - PANEL_MAIN_MENU, -+#endif - PANEL_RUN_DIALOG, - TOGGLE_RECORDING, - SET_SPEW_MARK, -@@ -1745,10 +1787,6 @@ namespace Meta { - #endif - [CCode (cheader_filename = "meta/main.h")] - public static void clutter_init (); --#if HAS_MUTTER41 -- [CCode (cheader_filename = "meta/meta-context.h")] -- public static Meta.Context create_context (string name); --#endif - [CCode (cheader_filename = "meta/main.h")] - public static void exit (Meta.ExitCode code); - #if !HAS_MUTTER41 -diff --git a/vapi/libsystemd.vapi b/vapi/libsystemd.vapi -new file mode 100644 -index 00000000..54bc3a68 ---- /dev/null -+++ b/vapi/libsystemd.vapi -@@ -0,0 +1,18 @@ -+[CCode (cheader_filename = "systemd/sd-daemon.h")] -+namespace Systemd.Daemon { -+ [CCode (cname="sd_notify")] -+ int notify([CCode (type="int")]bool unset_environment, string state); -+ -+ [CCode (cname="sd_notifyf")] -+ int notifyf([CCode (type="int")]bool unset_environment, string format, ...); -+ -+ [CCode (cname="sd_pid_notify")] -+ int pid_notify(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string state); -+ -+ [CCode (cname="sd_pid_notifyf")] -+ int pid_notifyf(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string format, ...); -+ -+ [CCode (cname="sd_pid_notify_with_fds")] -+ int pid_notify_with_fds(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string state, int[] fds); -+} -+ -diff --git a/vapi/meson.build b/vapi/meson.build -index 3773b0bc..a348b16b 100644 ---- a/vapi/meson.build -+++ b/vapi/meson.build -@@ -286,3 +286,72 @@ if mutter41_dep.found() - output: 'libmutter-9.vapi' - ) - endif -+if mutter42_dep.found() -+ cogl_target = custom_target('mutter-cogl-10', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'Cogl-10.gir', -+ '--library=mutter-cogl-10', -+ '--pkg=gobject-2.0', -+ '--pkg=cairo', -+ '--pkg=graphene-gobject-1.0', -+ vapigen_args, -+ files('Cogl-10-custom.vala') -+ ], -+ output: 'mutter-cogl-10.vapi' -+ ) -+ -+ cogl_pango_target = custom_target('mutter-cogl-pango-10', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'CoglPango-10.gir', -+ '--library=mutter-cogl-pango-10', -+ '--pkg=mutter-cogl-10', -+ '--pkg=pangocairo', -+ vapigen_args -+ ], -+ depends: cogl_target, -+ output: 'mutter-cogl-pango-10.vapi' -+ ) -+ -+ clutter_target = custom_target('mutter-clutter-10', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'Clutter-10.gir', -+ '--library=mutter-clutter-10', -+ '--pkg=graphene-gobject-1.0', -+ '--pkg=mutter-cogl-10', -+ '--pkg=mutter-cogl-pango-10', -+ '--pkg=atk', -+ '--pkg=gio-2.0', -+ '--pkg=json-glib-1.0', -+ '--pkg=pangocairo', -+ vapigen_args, -+ files('Clutter-10-custom.vala') -+ ], -+ depends: [ cogl_target, cogl_pango_target ], -+ output: 'mutter-clutter-10.vapi' -+ ) -+ -+ libmutter_target = custom_target('libmutter-10', -+ command: [ -+ vapigen, -+ mutter_typelib_dir / 'Meta-10.gir', -+ '--library=libmutter-10', -+ '--pkg=graphene-gobject-1.0', -+ '--pkg=mutter-cogl-10', -+ '--pkg=mutter-cogl-pango-10', -+ '--pkg=mutter-clutter-10', -+ '--pkg=atk', -+ '--pkg=gio-2.0', -+ '--pkg=json-glib-1.0', -+ '--pkg=pangocairo', -+ '--pkg=gtk+-3.0', -+ '--pkg=x11', -+ '--pkg=xfixes-4.0', -+ vapigen_args -+ ], -+ depends: [ cogl_target, cogl_pango_target, clutter_target ], -+ output: 'libmutter-10.vapi' -+ ) -+endif -diff --git a/vapi/mutter-clutter-10.deps b/vapi/mutter-clutter-10.deps -new file mode 100644 -index 00000000..f4c6e420 ---- /dev/null -+++ b/vapi/mutter-clutter-10.deps -@@ -0,0 +1,6 @@ -+atk -+cairo -+pango -+json-glib-1.0 -+mutter-cogl-10 -+graphene-gobject-1.0 -diff --git a/vapi/mutter-clutter-10.vapi b/vapi/mutter-clutter-10.vapi -new file mode 120000 -index 00000000..8a0ba541 ---- /dev/null -+++ b/vapi/mutter-clutter-10.vapi -@@ -0,0 +1 @@ -+mutter-clutter-9.vapi -\ No newline at end of file -diff --git a/vapi/mutter-clutter-9.deps b/vapi/mutter-clutter-9.deps -index fffc4803..f4c6e420 100644 ---- a/vapi/mutter-clutter-9.deps -+++ b/vapi/mutter-clutter-9.deps -@@ -2,5 +2,5 @@ atk - cairo - pango - json-glib-1.0 --mutter-cogl-9 -+mutter-cogl-10 - graphene-gobject-1.0 -diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi -index c54ca952..04307759 100644 ---- a/vapi/mutter-clutter.vapi -+++ b/vapi/mutter-clutter.vapi -@@ -3,7 +3,6 @@ - [CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "1.0", 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")] -@@ -4629,6 +4628,11 @@ namespace Clutter { - public abstract class Action : Clutter.ActorMeta { - [CCode (has_construct_function = false)] - protected Action (); -+#if HAS_MUTTER42 -+ public Clutter.EventPhase get_phase (); -+ [NoWrapper] -+ public virtual bool handle_event (Clutter.Event event); -+#endif - } - [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 { -@@ -4638,6 +4642,9 @@ namespace Clutter { - public Actor (); - [Version (since = "1.4")] - public void add_action (Clutter.Action action); -+#if HAS_MUTTER42 -+ public void add_action_full (string name, Clutter.EventPhase phase, Clutter.Action action); -+#endif - [Version (since = "1.4")] - public void add_action_with_name (string name, Clutter.Action action); - [Version (since = "1.10")] -@@ -4724,7 +4731,7 @@ namespace Clutter { - 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); -+ public unowned Clutter.Action? get_action (string name); - [Version (since = "1.4")] - public GLib.List get_actions (); - [Version (since = "0.8")] -@@ -4745,7 +4752,7 @@ namespace Clutter { - public static unowned Clutter.Actor get_by_gid (uint32 id_); - #endif - [Version (since = "1.10")] -- public unowned Clutter.Actor get_child_at_index (int index_); -+ public unowned Clutter.Actor? get_child_at_index (int index_); - [Version (since = "1.12")] - #if HAS_MUTTER40 - public Graphene.Matrix get_child_transform (); -@@ -4759,11 +4766,11 @@ namespace Clutter { - [Version (since = "1.4")] - public bool get_clip_to_allocation (); - [Version (since = "1.4")] -- public unowned Clutter.Constraint get_constraint (string name); -+ public unowned Clutter.Constraint? get_constraint (string name); - [Version (since = "1.4")] - public GLib.List get_constraints (); - [Version (since = "1.10")] -- public unowned Clutter.Content get_content (); -+ public unowned Clutter.Content? get_content (); - [Version (since = "1.10")] - public Clutter.ActorBox get_content_box (); - [Version (since = "1.10")] -@@ -4785,11 +4792,11 @@ namespace Clutter { - [Version (since = "1.10")] - public Clutter.AnimationMode get_easing_mode (); - [Version (since = "1.4")] -- public unowned Clutter.Effect get_effect (string name); -+ public unowned Clutter.Effect? get_effect (string name); - [Version (since = "1.4")] - public GLib.List get_effects (); - [Version (since = "1.10")] -- public unowned Clutter.Actor get_first_child (); -+ public unowned Clutter.Actor? get_first_child (); - #if HAS_MUTTER338 - public bool get_fixed_position (out float x, out float y); - #endif -@@ -4802,9 +4809,9 @@ namespace Clutter { - public bool get_has_pointer (); - public float get_height (); - [Version (since = "1.10")] -- public unowned Clutter.Actor get_last_child (); -+ public unowned Clutter.Actor? get_last_child (); - [Version (since = "1.10")] -- public unowned Clutter.LayoutManager get_layout_manager (); -+ public unowned Clutter.LayoutManager? get_layout_manager (); - [Version (since = "1.10")] - public Clutter.Margin get_margin (); - [Version (since = "1.10")] -@@ -4817,9 +4824,9 @@ namespace Clutter { - public float get_margin_top (); - [Version (since = "1.10")] - public int get_n_children (); -- public unowned string get_name (); -+ public unowned string? get_name (); - [Version (since = "1.10")] -- public unowned Clutter.Actor get_next_sibling (); -+ public unowned Clutter.Actor? get_next_sibling (); - [Version (since = "1.8")] - public Clutter.OffscreenRedirect get_offscreen_redirect (); - public uint8 get_opacity (); -@@ -4852,7 +4859,7 @@ namespace Clutter { - [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 (); -+ public unowned Clutter.Actor? get_previous_sibling (); - [Version (since = "0.6")] - public bool get_reactive (); - [Version (since = "1.2")] -@@ -4898,7 +4905,7 @@ namespace Clutter { - [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); -+ 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 (); -@@ -5083,7 +5090,7 @@ namespace Clutter { - public void set_margin_right (float margin); - [Version (since = "1.10")] - public void set_margin_top (float margin); -- public void set_name (string name); -+ public void set_name (string? name); - [Version (since = "1.8")] - public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect); - public void set_opacity (uint8 opacity); -@@ -5707,6 +5714,7 @@ namespace Clutter { - public bool get_homogeneous (); - [Version (since = "1.12")] - public Clutter.Orientation get_orientation (); -+ [Version (deprecated = true)] - public bool get_pack_start (); - public uint get_spacing (); - #if !HAS_MUTTER338 -@@ -5731,6 +5739,7 @@ namespace Clutter { - public void set_homogeneous (bool homogeneous); - [Version (since = "1.12")] - public void set_orientation (Clutter.Orientation orientation); -+ [Version (deprecated = true)] - public void set_pack_start (bool pack_start); - public void set_spacing (uint spacing); - #if !HAS_MUTTER338 -@@ -5747,6 +5756,7 @@ namespace Clutter { - public bool homogeneous { get; set; } - [Version (since = "1.12")] - public Clutter.Orientation orientation { get; set; } -+ [Version (deprecated = true)] - public bool pack_start { get; set; } - public uint spacing { get; set; } - #if !HAS_MUTTER338 -@@ -5778,7 +5788,9 @@ namespace Clutter { - public class ButtonEvent : Clutter.Event { - public double axes; - public uint32 button; -+#if !HAS_MUTTER42 - public uint click_count; -+#endif - public weak Clutter.InputDevice device; - #if HAS_MUTTER40 - public uint32 evdev_code; -@@ -5884,6 +5896,13 @@ namespace Clutter { - #endif - public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, ref float minimum_size, ref float natural_size); - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] -+ [Compact] -+ public class Context { -+ public unowned Clutter.Backend get_backend (); -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] - [Compact] - [Version (since = "0.2")] -@@ -6035,8 +6054,10 @@ namespace Clutter { - public double get_axes (out uint n_axes); - [Version (since = "1.0")] - public uint32 get_button (); -+#if !HAS_MUTTER42 - [Version (since = "1.0")] - public uint get_click_count (); -+#endif - [Version (since = "0.4")] - public void get_coords (out float x, out float y); - [Version (since = "1.0")] -@@ -6324,6 +6345,9 @@ namespace Clutter { - public class IMEvent : Clutter.Event { - public Clutter.EventFlags flags; - public uint32 len; -+#if HAS_MUTTER42 -+ public Clutter.PreeditResetMode mode; -+#endif - public int32 offset; - public weak Clutter.Actor source; - public weak Clutter.Stage stage; -@@ -6362,6 +6386,7 @@ namespace Clutter { - public class InputDevice : GLib.Object { - [CCode (has_construct_function = false)] - protected InputDevice (); -+#if !HAS_MUTTER42 - #if HAS_MUTTER338 - [Version (since = "1.2")] - public unowned Clutter.Actor get_actor (Clutter.EventSequence? sequence); -@@ -6383,6 +6408,7 @@ namespace Clutter { - public bool get_coords (Clutter.EventSequence? sequence, out Graphene.Point point); - [Version (since = "1.0")] - public int get_device_id (); -+#endif - #endif - [Version (since = "1.6")] - public Clutter.InputMode get_device_mode (); -@@ -6408,8 +6434,10 @@ namespace Clutter { - [Version (since = "1.16")] - public Clutter.ModifierType get_modifier_state (); - #endif -+#if !HAS_MUTTER42 - [Version (since = "1.6")] - public uint get_n_axes (); -+#endif - #if HAS_MUTTER40 - public int get_n_buttons (); - #else -@@ -6573,7 +6601,11 @@ namespace Clutter { - [NoWrapper] - public virtual void set_cursor_location (Graphene.Rect rect); - public void set_input_panel_state (Clutter.InputPanelState state); -+#if HAS_MUTTER42 -+ public void set_preedit_text (string? preedit, uint cursor, Clutter.PreeditResetMode mode); -+#else - public void set_preedit_text (string? preedit, uint cursor); -+#endif - [NoWrapper] - public virtual void set_surrounding (string text, uint cursor, uint anchor); - [NoWrapper] -@@ -6898,7 +6930,11 @@ namespace Clutter { - public double deceleration { get; set; } - public bool interpolate { get; set; } - public Clutter.PanAxis pan_axis { get; set; } -+#if HAS_MUTTER42 -+ public signal bool pan (Clutter.Actor actor, bool is_interpolated); -+#else - public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated); -+#endif - 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 ()")] -@@ -6958,6 +6994,9 @@ namespace Clutter { - public void destroy (); - #if HAS_MUTTER40 - public Graphene.Matrix get_transform (); -+#if HAS_MUTTER42 -+ public void log_overlap (Clutter.Actor actor); -+#endif - public void log_pick (Clutter.ActorBox box, Clutter.Actor actor); - public void pop_clip (); - public void pop_transform (); -@@ -7041,7 +7080,11 @@ namespace Clutter { - public class RotateAction : Clutter.GestureAction { - [CCode (has_construct_function = false, type = "ClutterAction*")] - public RotateAction (); -+#if HAS_MUTTER42 -+ public signal bool rotate (Clutter.Actor actor, double angle); -+#else - public virtual signal bool rotate (Clutter.Actor actor, double angle); -+#endif - } - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")] - [Version (since = "0.6")] -@@ -7163,8 +7206,10 @@ namespace Clutter { - public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings); - public void uninhibit_unfocus (); - public virtual void warp_pointer (int x, int y); -+#if !HAS_MUTTER42 - [NoAccessorMethod] - public Clutter.Backend backend { owned get; construct; } -+#endif - public bool touch_mode { get; } - public signal void device_added (Clutter.InputDevice object); - public signal void device_removed (Clutter.InputDevice object); -@@ -7320,8 +7365,10 @@ namespace Clutter { - public int64 get_frame_counter (); - [Version (since = "0.6")] - public unowned Clutter.Actor get_key_focus (); -+#if !HAS_MUTTER42 - [Version (since = "1.2")] - public void get_minimum_size (out uint width, out uint height); -+#endif - [Version (since = "1.8")] - public bool get_motion_events_enabled (); - public Clutter.Perspective get_perspective (); -@@ -7336,7 +7383,10 @@ namespace Clutter { - [Version (since = "1.2")] - public bool get_use_alpha (); - #if HAS_MUTTER338 -- public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] ref unowned uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; -+ public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; -+#if HAS_MUTTER42 -+ public Clutter.Content paint_to_content (Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags) throws GLib.Error; -+#endif - public void paint_to_framebuffer (Cogl.Framebuffer framebuffer, Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags); - #else - [Version (since = "0.4")] -@@ -7375,7 +7425,9 @@ namespace Clutter { - public void set_title (string title); - [Version (since = "1.2")] - public void set_use_alpha (bool use_alpha); --#if HAS_MUTTER40 -+#if HAS_MUTTER42 -+ public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, Cairo.Region region, bool emit_crossing); -+#elif HAS_MUTTER40 - public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, bool emit_crossing); - #endif - #if !HAS_MUTTER338 -@@ -7512,8 +7564,6 @@ namespace Clutter { - #endif - [NoAccessorMethod] - public int64 vblank_duration_us { get; construct; } --#if HAS_MUTTER41 --#endif - } - #if !HAS_MUTTER338 - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")] -@@ -7561,7 +7611,11 @@ namespace Clutter { - [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")] -+#if HAS_MUTTER42 -+ public signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction); -+#else - public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction); -+#endif - } - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")] - [Version (since = "1.14")] -@@ -7901,6 +7955,21 @@ namespace Clutter { - public float x; - public float y; - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] -+ [Compact] -+ public class TouchpadHoldEvent : Clutter.Event { -+ public Clutter.EventFlags flags; -+ public uint32 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; -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] - [Compact] - [Version (since = "1.24")] -@@ -8016,10 +8085,14 @@ namespace Clutter { - public ZoomAction (); - public Graphene.Point get_focal_point (); - public Graphene.Point get_transformed_focal_point (); -+#if HAS_MUTTER42 -+ public signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor); -+#else - 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); -+#endif - } - [CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")] - public interface Animatable : GLib.Object { -@@ -8064,23 +8137,29 @@ namespace Clutter { - 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); -+#if !HAS_MUTTER42 - [Version (deprecated = true, deprecated_since = "1.10", since = "0.4")] - public GLib.List get_children (); -+#endif - [CCode (cname = "clutter_container_class_list_child_properties")] - public class unowned GLib.ParamSpec[] list_child_properties (); -+#if !HAS_MUTTER42 - [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); -+#endif - [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); -+#if !HAS_MUTTER42 - [Version (deprecated = true, deprecated_since = "1.10", since = "0.6")] - public abstract void sort_depth_order (); -+#endif - public virtual signal void actor_added (Clutter.Actor actor); - public virtual signal void actor_removed (Clutter.Actor actor); - [HasEmitter] -@@ -8162,8 +8241,8 @@ namespace Clutter { - 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 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_copy_function = false, has_destroy_function = false, has_type_id = false)] -@@ -8187,16 +8266,40 @@ namespace Clutter { - public bool equal (Clutter.Color v2); - [Version (since = "0.2")] - public void free (); -- public void from_hls (float hue, float luminance, float saturation); -- public void from_pixel (uint32 pixel); -- [Version (since = "1.0")] -- public bool from_string (string str); -+ [CCode (cname = "_vala_clutter_color_from_hls")] -+ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) { -+ Clutter.Color? color = Clutter.Color.alloc (); -+ color.init_from_hls (hue, luminance, saturation); -+ return color; -+ } -+ [CCode (cname = "_vala_clutter_color_from_pixel")] -+ public static Clutter.Color? from_pixel (uint32 pixel) { -+ Clutter.Color? color = Clutter.Color.alloc (); -+ color.init_from_pixel (pixel); -+ return color; -+ } -+ [CCode (cname = "clutter_color_new")] -+ [Version (since = "0.8")] -+ public static Clutter.Color? from_rgba (uint8 red = 0, uint8 green = 0, uint8 blue = 0, uint8 alpha = 0); -+ [CCode (cname = "_vala_clutter_color_from_string")] -+ public static Clutter.Color? from_string (string str) { -+ Clutter.Color? color = Clutter.Color.alloc (); -+ color.init_from_string (str); -+ return color; -+ } - [Version (since = "1.6")] - 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); -+ public unowned Clutter.Color? init (uint8 red = 0, uint8 green = 0, uint8 blue = 0, uint8 alpha = 0); -+ [CCode (cname = "clutter_color_from_hls")] -+ public void init_from_hls (float hue, float luminance, float saturation); -+ [CCode (cname = "clutter_color_from_pixel")] -+ public void init_from_pixel (uint32 pixel); -+ [CCode (cname = "clutter_color_from_string")] -+ [Version (since = "1.0")] -+ public bool init_from_string (string str); - [Version (since = "1.6")] - public Clutter.Color interpolate (Clutter.Color final, double progress); - public Clutter.Color lighten (); -@@ -8549,6 +8652,13 @@ namespace Clutter { - #endif - FLAG_REPEATED - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PHASE_", type_id = "clutter_event_phase_get_type ()")] -+ public enum EventPhase { -+ CAPTURE, -+ BUBBLE -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")] - [Version (since = "0.4")] - public enum EventType { -@@ -8575,6 +8685,9 @@ namespace Clutter { - TOUCH_CANCEL, - TOUCHPAD_PINCH, - TOUCHPAD_SWIPE, -+#if HAS_MUTTER42 -+ TOUCHPAD_HOLD, -+#endif - PROXIMITY_IN, - PROXIMITY_OUT, - PAD_BUTTON_PRESS, -@@ -8597,12 +8710,14 @@ namespace Clutter { - #if !HAS_MUTTER338 - SWAP_THROTTLE, - #endif -+#if !HAS_MUTTER42 - STAGE_STATIC, - STAGE_CURSOR, -- SHADERS_GLSL, - OFFSCREEN, - STAGE_MULTIPLE, -- SWAP_EVENTS -+ SWAP_EVENTS, -+#endif -+ SHADERS_GLSL - } - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")] - [Version (since = "1.2")] -@@ -8654,6 +8769,7 @@ namespace Clutter { - TOP, - BOTTOM - } -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")] - [Version (since = "0.2")] - public enum InitError { -@@ -8664,6 +8780,7 @@ namespace Clutter { - ERROR_INTERNAL; - public static GLib.Quark quark (); - } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")] - [Version (since = "1.6")] - public enum InputAxis { -@@ -8956,6 +9073,13 @@ namespace Clutter { - DWELL, - GESTURE - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PREEDIT_RESET_", type_id = "clutter_preedit_reset_mode_get_type ()")] -+ public enum PreeditResetMode { -+ CLEAR, -+ COMMIT -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")] - [Flags] - [Version (since = "1.10")] -@@ -9167,6 +9291,7 @@ namespace Clutter { - POINTER, - TOUCHSCREEN - } -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")] - [Version (since = "1.12")] - public enum ZoomAxis { -@@ -9174,6 +9299,7 @@ namespace Clutter { - Y_AXIS, - BOTH - } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")] - [Version (since = "1.10")] - public errordomain ImageError { -@@ -9285,17 +9411,21 @@ namespace Clutter { - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "1.0")] - public static unowned Pango.FontMap get_font_map (); -+#if !HAS_MUTTER42 - [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 (); -+#endif - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "0.6")] - public static unowned string get_script_id (GLib.Object gobject); -+#if !HAS_MUTTER42 - [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); -+#endif - #if !HAS_MUTTER41 - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "0.2")] -diff --git a/vapi/mutter-cogl-10.deps b/vapi/mutter-cogl-10.deps -new file mode 120000 -index 00000000..ea52a856 ---- /dev/null -+++ b/vapi/mutter-cogl-10.deps -@@ -0,0 +1 @@ -+mutter-cogl-9.deps -\ No newline at end of file -diff --git a/vapi/mutter-cogl-10.vapi b/vapi/mutter-cogl-10.vapi -new file mode 120000 -index 00000000..698673de ---- /dev/null -+++ b/vapi/mutter-cogl-10.vapi -@@ -0,0 +1 @@ -+mutter-cogl-9.vapi -\ No newline at end of file -diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi -index b55bd648..526bb415 100644 ---- a/vapi/mutter-cogl-6.vapi -+++ b/vapi/mutter-cogl-6.vapi -@@ -27,6 +27,10 @@ namespace Cogl { - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_foreach_feature")] - [Version (since = "1.10")] - public void foreach_feature (Cogl.FeatureCallback callback); -+#if HAS_MUTTER42 -+ public void free_timestamp_query (owned Cogl.TimestampQuery query); -+ public int64 get_gpu_time_ns (); -+#endif - #if !HAS_MUTTER40 - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_get_clock_time")] - [Version (since = "1.14")] -@@ -45,6 +49,9 @@ namespace Cogl { - #endif - #if HAS_MUTTER40 - public void set_named_pipeline (Cogl.PipelineKey key, Cogl.Pipeline? pipeline); -+#endif -+#if HAS_MUTTER42 -+ public int64 timestamp_query_get_time_ns (Cogl.TimestampQuery query); - #endif - } - [CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")] -@@ -69,8 +76,14 @@ namespace Cogl { - #endif - [Version (since = "1.14")] - public float get_refresh_rate (); -+#if HAS_MUTTER42 -+ public int64 get_rendering_duration_ns (); -+#endif - #if HAS_MUTTER40 - public uint get_sequence (); -+#if HAS_MUTTER42 -+ public int64 get_time_before_buffer_swap_us (); -+#endif - public bool is_hw_clock (); - public bool is_vsync (); - public bool is_zero_copy (); -@@ -224,6 +237,7 @@ namespace Cogl { - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_texture")] - public bool is_texture (); - } -+#if !HAS_MUTTER42 - [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 : Cogl.Handle { -@@ -265,6 +279,7 @@ namespace Cogl { - [Compact] - public class MaterialLayer : Cogl.Handle { - } -+#endif - [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")] - public abstract class Object { - [CCode (has_construct_function = false)] -@@ -353,6 +368,9 @@ namespace Cogl { - #endif - [Version (since = "2.0")] - public void hide (); -+#if HAS_MUTTER42 -+ public virtual void queue_damage_region (int rectangles, int n_rectangles); -+#endif - [Version (since = "1.16")] - public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure); - [Version (since = "1.14")] -@@ -620,6 +638,12 @@ namespace Cogl { - [Version (since = "1.16")] - public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste); - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -+ [Compact] -+ public class TimestampQuery { -+ } -+#endif - #if HAS_MUTTER338 - [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] - [Compact] -@@ -751,13 +775,13 @@ namespace Cogl { - public interface Texture : Cogl.Object { - public bool allocate () throws GLib.Error; - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_bitmap")] -- [Version (deprecated = true, deprecated_since = "1.18", since = "1.0")] -+ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_bitmap", since = "1.0")] - public static Cogl.Texture from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format); - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_data")] -- [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] -+ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_data", since = "0.8")] - public static Cogl.Texture from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] uint8[] data); - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_file")] -- [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] -+ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_file", since = "0.8")] - public static Cogl.Texture from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error; - [Version (since = "1.18")] - public Cogl.TextureComponents get_components (); -@@ -775,10 +799,12 @@ namespace Cogl { - public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] 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; -+#if !HAS_MUTTER42 - [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); -+#endif - [Version (since = "1.18")] - public void set_components (Cogl.TextureComponents components); - public bool set_data (Cogl.PixelFormat format, int rowstride, [CCode (array_length = false)] uint8[] data, int level) throws GLib.Error; -@@ -787,9 +813,11 @@ namespace Cogl { - 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, [CCode (array_length = false)] 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); -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_with_size")] - [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")] - public static Cogl.Texture with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format); -+#endif - } - [CCode (cheader_filename = "cogl/cogl.h")] - [SimpleType] -@@ -828,6 +856,14 @@ namespace Cogl { - 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); -+ [Version (since = "1.16")] -+ public void init_from_hsl (float hue, float saturation, float luminance); - public void premultiply (); - [Version (since = "1.4")] - public void set_alpha (float alpha); -@@ -945,6 +981,9 @@ namespace Cogl { - public struct TraceHead { - public uint64 begin_time; - public weak string name; -+#if HAS_MUTTER42 -+ public weak string description; -+#endif - } - #endif - [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)] -@@ -1093,6 +1132,12 @@ namespace Cogl { - #if HAS_MUTTER338 - [CCode (cname = "COGL_FEATURE_ID_BLIT_FRAMEBUFFER")] - OGL_FEATURE_ID_BLIT_FRAMEBUFFER, -+#endif -+#if HAS_MUTTER42 -+ [CCode (cname = "COGL_FEATURE_ID_TIMESTAMP_QUERY")] -+ OGL_FEATURE_ID_TIMESTAMP_QUERY, -+ [CCode (cname = "COGL_FEATURE_ID_GET_GPU_TIME")] -+ OGL_FEATURE_ID_GET_GPU_TIME, - #endif - [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] - OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL -@@ -1122,6 +1167,7 @@ namespace Cogl { - SHORT, - INT - } -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)] - public enum MaterialAlphaFunc { - NEVER, -@@ -1149,6 +1195,7 @@ namespace Cogl { - CLAMP_TO_EDGE, - AUTOMATIC - } -+#endif - [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)] - public enum PipelineAlphaFunc { - NEVER, -@@ -1204,12 +1251,24 @@ namespace Cogl { - ABGR_8888, - RGBA_1010102, - BGRA_1010102, -+#if HAS_MUTTER42 -+ XRGB_2101010, -+#endif - ARGB_2101010, -+#if HAS_MUTTER42 -+ XBGR_2101010, -+#endif - ABGR_2101010, - #if HAS_MUTTER338 - RGBA_FP_16161616, - BGRA_FP_16161616, -+#if HAS_MUTTER42 -+ XRGB_FP_16161616, -+#endif - ARGB_FP_16161616, -+#if HAS_MUTTER42 -+ XBGR_FP_16161616, -+#endif - ABGR_FP_16161616, - #endif - RGBA_8888_PRE, -@@ -1293,7 +1352,9 @@ namespace Cogl { - } - [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)] - public enum WinsysFeature { -+#if !HAS_MUTTER42 - MULTIPLE_ONSCREEN, -+#endif - #if !HAS_MUTTER338 - SWAP_THROTTLE, - #endif -@@ -1420,12 +1481,14 @@ namespace Cogl { - [CCode (cheader_filename = "cogl/cogl.h")] - [Version (since = "1.0")] - public static void flush (); -+#if !HAS_MUTTER42 - [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 (deprecated = true, deprecated_since = "1.16")] - public static bool get_depth_test_enabled (); -+#endif - [CCode (cheader_filename = "cogl/cogl.h")] - [Version (deprecated = true, deprecated_since = "1.16", since = "1.0")] - public static GLib.OptionGroup get_option_group (); -@@ -1434,23 +1497,31 @@ namespace Cogl { - [Version (deprecated = true, deprecated_since = "1.18")] - public static GLib.Type gtype_matrix_get_type (); - #endif -+#if !HAS_MUTTER42 - [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); -+#endif - [CCode (cheader_filename = "cogl/cogl.h")] - public static void set_tracing_disabled_on_thread (GLib.MainContext main_context); - [CCode (cheader_filename = "cogl/cogl.h")] - public static void set_tracing_enabled_on_thread (GLib.MainContext main_context, string group, string filename); - [CCode (cheader_filename = "cogl/cogl.h")] - public static void set_tracing_enabled_on_thread_with_fd (GLib.MainContext main_context, string group, int fd); -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "cogl/cogl.h")] -+ public static void trace_describe (Cogl.TraceHead head, string description); -+#endif - #if HAS_MUTTER338 - [CCode (cheader_filename = "cogl/cogl.h")] - public static void trace_end (Cogl.TraceHead head); - #endif -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "cogl/cogl.h")] - [Version (since = "1.10")] - public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen); -+#endif - } -diff --git a/vapi/mutter-cogl-pango-10.vapi b/vapi/mutter-cogl-pango-10.vapi -new file mode 120000 -index 00000000..5362ecec ---- /dev/null -+++ b/vapi/mutter-cogl-pango-10.vapi -@@ -0,0 +1 @@ -+mutter-cogl-pango-9.vapi -\ No newline at end of file -diff --git a/wingpanel-interface/meson.build b/wingpanel-interface/meson.build -index 667a15cf..c0b645e3 100644 ---- a/wingpanel-interface/meson.build -+++ b/wingpanel-interface/meson.build -@@ -46,6 +46,17 @@ if mutter41_dep.found() - vala_flags = ['--define', 'HAS_MUTTER338', '--define', 'HAS_MUTTER40', '--define', 'HAS_MUTTER41'] - endif - -+mutter42_dep = dependency('libmutter-10', version: ['>= 42', '< 43'], required: false) -+if mutter42_dep.found() -+ libmutter_dep = dependency('libmutter-10', version: '>= 42') -+ mutter_dep = [ -+ libmutter_dep, -+ dependency('mutter-cogl-10'), dependency('mutter-cogl-pango-10'), -+ dependency('mutter-clutter-10') -+ ] -+ vala_flags = ['--define', 'HAS_MUTTER338', '--define', 'HAS_MUTTER40', '--define', 'HAS_MUTTER41', '--define', 'HAS_MUTTER42'] -+endif -+ - if mutter_dep.length() == 0 - error ('No supported mutter library found!') - endif diff --git a/453.patch b/453.patch deleted file mode 100644 index ea50df0..0000000 --- a/453.patch +++ /dev/null @@ -1,582 +0,0 @@ -From 9a64bfe0d8844483d7ba8e412d8766f4bff8905a Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Corentin=20No=C3=ABl?= -Date: Tue, 26 Apr 2022 09:41:35 +0200 -Subject: [PATCH] Synchronize the .vapi with Gala - ---- - vapi/Clutter-10.metadata | 1 - - vapi/Meta-10.metadata | 10 +++++- - vapi/libmutter.vapi | 66 +++++++++++++++++++++++++----------- - vapi/mutter-clutter.vapi | 72 ++++++++++++++++++++++++++++++++++++++-- - vapi/mutter-cogl-6.vapi | 26 +++++++-------- - 5 files changed, 136 insertions(+), 39 deletions(-) - -diff --git a/vapi/Clutter-10.metadata b/vapi/Clutter-10.metadata -index 5b69ae58..516fc6fb 100644 ---- a/vapi/Clutter-10.metadata -+++ b/vapi/Clutter-10.metadata -@@ -123,7 +123,6 @@ FrameClock.new skip - StageView.layout skip - - Stage -- .event name="emit_event" - .paint_view.redraw_clip type="Cairo.Region" - - Capture -diff --git a/vapi/Meta-10.metadata b/vapi/Meta-10.metadata -index eaefc051..e4438413 100644 ---- a/vapi/Meta-10.metadata -+++ b/vapi/Meta-10.metadata -@@ -65,10 +65,10 @@ KeyHandlerFunc cheader_filename="meta/prefs.h" - KeyHandlerFunc.event type="Clutter.KeyEvent?" - KeyHandlerFunc.window nullable - LaunchContext cheader_filename="meta/meta-launch-context.h" -+Laters cheader_filename="meta/types.h" - LaterType cheader_filename="meta/util.h" - LocaleDirection cheader_filename="meta/util.h" - MaximizeFlags cheader_filename="meta/window.h" --ModalOptions cheader_filename="meta/meta-plugin.h" - MonitorManager cheader_filename="meta/meta-monitor-manager.h" - MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" - MotionDirection cheader_filename="meta/common.h" -@@ -123,6 +123,9 @@ WindowShape cheader_filename="meta/meta-window-shape.h" - WindowType cheader_filename="meta/window.h" - X11Display cheader_filename="meta/meta-x11-display.h" - -+// As per https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2287 -+MonitorManager.monitor_privacy_screen_changed skip -+ - rect skip - prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h" - -@@ -145,6 +148,11 @@ PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h" - VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h" - VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h" - -+Display.window_visibility_updated -+ .object name="unplaced" type="GLib.List" -+ .p0 name="should_show" type="GLib.List" -+ .p1 name="should_hide" type="GLib.List" -+ - add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h" - bug parent="Meta.Util" cheader_filename="meta/util.h" - external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h" -diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi -index 5dacb629..5edcddb1 100644 ---- a/vapi/libmutter.vapi -+++ b/vapi/libmutter.vapi -@@ -316,6 +316,9 @@ namespace Meta { - public void destroy (); - public bool filter_keybinding (Meta.KeyBinding binding); - public void flash_display (Meta.Display display); -+#if HAS_MUTTER42 -+ public unowned Meta.Laters get_laters (); -+#endif - public void hide_tile_preview (); - public void hide_window (Meta.Window window, Meta.CompEffect effect); - public void manage (); -@@ -354,6 +357,10 @@ namespace Meta { - public unowned Meta.Display get_display (); - public bool is_replacing (); - public void notify_ready (); -+#if HAS_MUTTER42 -+ public bool raise_rlimit_nofile () throws GLib.Error; -+ public bool restore_rlimit_nofile () throws GLib.Error; -+#endif - public bool run_main_loop () throws GLib.Error; - public void set_gnome_wm_keybindings (string wm_keybindings); - public void set_plugin_gtype (GLib.Type plugin_gtype); -@@ -376,7 +383,7 @@ namespace Meta { - protected CursorTracker (); - public void get_hot (out int x, out int y); - #if HAS_MUTTER40 -- public void get_pointer (Graphene.Point coords, out Clutter.ModifierType mods); -+ public void get_pointer (out Graphene.Point coords, out Clutter.ModifierType mods); - #else - public void get_pointer (out int x, out int y, out Clutter.ModifierType mods); - #endif -@@ -511,6 +518,9 @@ namespace Meta { - 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); -+#if HAS_MUTTER42 -+ public signal void window_visibility_updated ([CCode (type = "gpointer")] GLib.List unplaced, [CCode (type = "gpointer")] GLib.List should_show, [CCode (type = "gpointer")] GLib.List should_hide); -+#endif - public signal void workareas_changed (); - public signal void x11_display_closing (); - public signal void x11_display_opened (); -@@ -562,6 +572,14 @@ namespace Meta { - [CCode (cheader_filename = "meta/keybindings.h", cname = "meta_keybindings_set_custom_handler")] - public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler); - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "meta/types.h", has_type_id = false)] -+ [Compact] -+ public class Laters { -+ public uint add (Meta.LaterType when, owned GLib.SourceFunc func); -+ public void remove (uint later_id); -+ } -+#endif - [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)] -@@ -607,7 +625,9 @@ namespace Meta { - public abstract class Plugin : GLib.Object { - [CCode (has_construct_function = false)] - protected Plugin (); -+#if !HAS_MUTTER42 - public bool begin_modal (Meta.ModalOptions options, uint32 timestamp); -+#endif - public void complete_display_change (bool ok); - [NoWrapper] - public virtual void confirm_display_change (); -@@ -618,7 +638,9 @@ namespace Meta { - [NoWrapper] - public virtual void destroy (Meta.WindowActor actor); - public void destroy_completed (Meta.WindowActor actor); -+#if !HAS_MUTTER42 - public void end_modal (uint32 timestamp); -+#endif - public unowned Meta.Display get_display (); - public unowned Meta.PluginInfo? get_info (); - [NoWrapper] -@@ -767,19 +789,19 @@ namespace Meta { - public unowned GLib.SList get_sequences (); - [NoAccessorMethod] - public Meta.Display display { owned get; construct; } -- public signal void changed ([CCode (type = "gpointer")] Meta.StartupSequence object); -+ public signal void changed (Meta.StartupSequence object); - } - [CCode (cheader_filename = "meta/meta-startup-notification.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 unowned string? get_application_id (); - public bool get_completed (); -- public unowned string get_icon_name (); -+ 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 unowned string? get_wmclass (); - public int get_workspace (); - public string application_id { get; construct; } - public string icon_name { get; construct; } -@@ -840,7 +862,7 @@ namespace Meta { - 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 unowned string? get_client_machine (); - public Meta.WindowClientType get_client_type (); - public unowned GLib.Object get_compositor_private (); - public unowned string get_description (); -@@ -849,32 +871,32 @@ namespace Meta { - public unowned Cairo.Region? get_frame_bounds (); - public Meta.Rectangle get_frame_rect (); - public Meta.FrameType get_frame_type (); -- public unowned Meta.Group get_group (); -- 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 unowned Meta.Group? get_group (); -+ 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 unowned string? get_mutter_hints (); - public int get_pid (); - public unowned string get_role (); -- public unowned string get_sandboxed_app_id (); -+ public unowned string? get_sandboxed_app_id (); - public uint get_stable_sequence (); -- public unowned string get_startup_id (); -+ 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 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 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); -@@ -1394,7 +1416,9 @@ namespace Meta { - public enum GrabOp { - NONE, - WINDOW_BASE, -+#if !HAS_MUTTER42 - COMPOSITOR, -+#endif - WAYLAND_POPUP, - FRAME_BUTTON, - MOVING, -@@ -1568,12 +1592,14 @@ namespace Meta { - VERTICAL, - BOTH - } -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "meta/meta-plugin.h", cprefix = "META_MODAL_", type_id = "meta_modal_options_get_type ()")] - [Flags] - public enum ModalOptions { - POINTER_ALREADY_GRABBED, - KEYBOARD_ALREADY_GRABBED - } -+#endif - [CCode (cheader_filename = "meta/meta-monitor-manager.h", cprefix = "META_MONITOR_SWITCH_CONFIG_", type_id = "meta_monitor_switch_config_type_get_type ()")] - public enum MonitorSwitchConfigType { - ALL_MIRROR, -diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi -index 04307759..c2a63a09 100644 ---- a/vapi/mutter-clutter.vapi -+++ b/vapi/mutter-clutter.vapi -@@ -6312,6 +6312,16 @@ namespace Clutter { - public virtual signal void gesture_end (Clutter.Actor actor); - public virtual signal bool gesture_progress (Clutter.Actor actor); - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_grab_ref", type_id = "clutter_grab_get_type ()", unref_function = "clutter_grab_unref")] -+ [Compact] -+ public class Grab { -+ public void dismiss (); -+ public Clutter.GrabState get_seat_state (); -+ public unowned Clutter.Grab @ref (); -+ public void unref (); -+ } -+#endif - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_grid_layout_get_type ()")] - [Version (since = "1.12")] - public class GridLayout : Clutter.LayoutManager { -@@ -6421,8 +6431,10 @@ namespace Clutter { - [Version (since = "1.6")] - public bool get_enabled (); - #endif -+#if !HAS_MUTTER42 - [Version (since = "1.10")] - public unowned Clutter.Actor get_grabbed_actor (); -+#endif - public virtual int get_group_n_modes (int group); - [Version (since = "1.6")] - public bool get_has_cursor (); -@@ -6430,7 +6442,9 @@ namespace Clutter { - [Version (since = "1.6")] - public bool get_key (uint index_, out uint keyval, out Clutter.ModifierType modifiers); - public Clutter.InputDeviceMapping get_mapping_mode (); -+#endif - public int get_mode_switch_button_group (uint button); -+#if !HAS_MUTTER40 - [Version (since = "1.16")] - public Clutter.ModifierType get_modifier_state (); - #endif -@@ -6479,12 +6493,14 @@ namespace Clutter { - [Version (since = "1.10")] - public virtual bool keycode_to_evdev (uint hardware_keycode, uint evdev_keycode); - #endif -+#if !HAS_MUTTER42 - [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); -+#endif - #if !HAS_MUTTER40 - [Version (since = "1.6")] - public void set_enabled (bool enabled); -@@ -6492,8 +6508,10 @@ namespace Clutter { - public void set_key (uint index_, uint keyval, Clutter.ModifierType modifiers); - public void set_mapping_mode (Clutter.InputDeviceMapping mapping); - #endif -+#if !HAS_MUTTER42 - [Version (since = "1.10")] - public void ungrab (); -+#endif - #if !HAS_MUTTER40 - [Version (since = "1.2")] - public void update_from_event (Clutter.Event event, bool update_stage); -@@ -7185,6 +7203,10 @@ namespace Clutter { - public virtual Clutter.VirtualDeviceType get_supported_virtual_device_types (); - #endif - public bool get_touch_mode (); -+#if HAS_MUTTER42 -+ [NoWrapper] -+ public virtual Clutter.GrabState grab (uint32 time); -+#endif - #if HAS_MUTTER40 - public virtual bool handle_event_post (Clutter.Event event); - #elif HAS_MUTTER338 -@@ -7204,6 +7226,10 @@ namespace Clutter { - #endif - public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type); - public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings); -+#if HAS_MUTTER42 -+ [NoWrapper] -+ public virtual void ungrab (uint32 time); -+#endif - public void uninhibit_unfocus (); - public virtual void warp_pointer (int x, int y); - #if !HAS_MUTTER42 -@@ -7327,7 +7353,9 @@ namespace Clutter { - public bool capture (bool paint, Cairo.RectangleInt rect, [CCode (array_length_cname = "out_n_captures", array_length_pos = 3.1)] out Clutter.Capture[] out_captures); - #endif - #if HAS_MUTTER40 -+#if !HAS_MUTTER42 - public void capture_into (Cairo.RectangleInt rect, float scale, uint8 data, int stride); -+#endif - public void capture_view_into (Clutter.StageView view, Cairo.RectangleInt rect, uint8 data, int stride); - #else - public void capture_into (bool paint, Cairo.RectangleInt rect, uint8 data); -@@ -7365,12 +7393,15 @@ namespace Clutter { - public int64 get_frame_counter (); - [Version (since = "0.6")] - public unowned Clutter.Actor get_key_focus (); -+#if HAS_MUTTER42 -+ public unowned Clutter.Actor get_grab_actor (); -+#endif - #if !HAS_MUTTER42 - [Version (since = "1.2")] - public void get_minimum_size (out uint width, out uint height); --#endif - [Version (since = "1.8")] - public bool get_motion_events_enabled (); -+#endif - public Clutter.Perspective get_perspective (); - #if !HAS_MUTTER338 - [Version (since = "1.8")] -@@ -7380,8 +7411,13 @@ namespace Clutter { - public bool get_throttle_motion_events (); - [Version (since = "0.4")] - public unowned string get_title (); -+#if HAS_MUTTER42 -+ public Clutter.Grab grab (Clutter.Actor actor); -+#endif -+#if !HAS_MUTTER42 - [Version (since = "1.2")] - public bool get_use_alpha (); -+#endif - #if HAS_MUTTER338 - public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; - #if HAS_MUTTER42 -@@ -7414,8 +7450,10 @@ namespace Clutter { - public void set_key_focus (Clutter.Actor? actor); - [Version (since = "1.2")] - public void set_minimum_size (uint width, uint height); -+#if !HAS_MUTTER42 - [Version (since = "1.8")] - public void set_motion_events_enabled (bool enabled); -+#endif - #if !HAS_MUTTER338 - public void set_perspective (Clutter.Perspective perspective); - #endif -@@ -7423,8 +7461,10 @@ namespace Clutter { - public void set_throttle_motion_events (bool throttle); - [Version (since = "0.4")] - public void set_title (string title); -+#if !HAS_MUTTER42 - [Version (since = "1.2")] - public void set_use_alpha (bool use_alpha); -+#endif - #if HAS_MUTTER42 - public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, Cairo.Region region, bool emit_crossing); - #elif HAS_MUTTER40 -@@ -8064,6 +8104,9 @@ namespace Clutter { - [CCode (has_construct_function = false)] - protected VirtualInputDevice (); - public int get_device_type (); -+#if HAS_MUTTER42 -+ public unowned Clutter.Seat get_seat (); -+#endif - 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); -@@ -8075,8 +8118,12 @@ namespace Clutter { - 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; } -+#if HAS_MUTTER42 -+ public Clutter.Seat seat { get; construct; } -+#else - [NoAccessorMethod] - public Clutter.Seat seat { owned get; construct; } -+#endif - } - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_zoom_action_get_type ()")] - [Version (since = "1.12")] -@@ -8649,6 +8696,9 @@ namespace Clutter { - FLAG_INPUT_METHOD, - #if HAS_MUTTER40 - FLAG_RELATIVE_MOTION, -+#endif -+#if HAS_MUTTER42 -+ FLAG_GRAB_NOTIFY, - #endif - FLAG_REPEATED - } -@@ -8747,6 +8797,16 @@ namespace Clutter { - AFTER, - BEFORE - } -+#if HAS_MUTTER42 -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAB_STATE_", type_id = "clutter_grab_state_get_type ()")] -+ [Flags] -+ public enum GrabState { -+ NONE, -+ POINTER, -+ KEYBOARD, -+ ALL -+ } -+#endif - [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 { -@@ -9300,13 +9360,13 @@ namespace Clutter { - BOTH - } - #endif -- [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")] -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_", type_id = "clutter_image_error_get_type ()")] - [Version (since = "1.10")] - public errordomain ImageError { - DATA; - public static GLib.Quark quark (); - } -- [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_")] -+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCRIPT_ERROR_INVALID_", type_id = "clutter_script_error_get_type ()")] - [Version (since = "0.6")] - public errordomain ScriptError { - TYPE_FUNCTION, -@@ -9360,8 +9420,10 @@ namespace Clutter { - [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")] - [Version (since = "0.8")] - public const int PRIORITY_REDRAW; -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "clutter/clutter.h")] - public static void base_init (); -+#endif - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "1.12")] - public static void cairo_clear (Cairo.Context cr); -@@ -9402,9 +9464,11 @@ namespace Clutter { - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "0.4")] - public static unowned Clutter.Backend get_default_backend (); -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "0.6")] - public static uint get_default_frame_rate (); -+#endif - [CCode (cheader_filename = "clutter/clutter.h")] - [Version (since = "1.2")] - public static Clutter.TextDirection get_default_text_direction (); -@@ -9441,8 +9505,10 @@ namespace Clutter { - [CCode (cheader_filename = "clutter/clutter.h")] - public static void main_quit (); - #endif -+#if !HAS_MUTTER42 - [CCode (cheader_filename = "clutter/clutter.h")] - public static void set_custom_backend_func (void* func); -+#endif - [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.vapi b/vapi/mutter-cogl-6.vapi -index 526bb415..89a1169e 100644 ---- a/vapi/mutter-cogl-6.vapi -+++ b/vapi/mutter-cogl-6.vapi -@@ -1136,8 +1136,6 @@ namespace Cogl { - #if HAS_MUTTER42 - [CCode (cname = "COGL_FEATURE_ID_TIMESTAMP_QUERY")] - OGL_FEATURE_ID_TIMESTAMP_QUERY, -- [CCode (cname = "COGL_FEATURE_ID_GET_GPU_TIME")] -- OGL_FEATURE_ID_GET_GPU_TIME, - #endif - [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] - OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL -@@ -1369,7 +1367,7 @@ namespace Cogl { - SYNC_AND_COMPLETE_EVENT, - N_FEATURES - } -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BITMAP_ERROR_", has_type_id = false)] - [Version (since = "1.4")] - public errordomain BitmapError { - FAILED, -@@ -1377,7 +1375,7 @@ namespace Cogl { - CORRUPT_IMAGE; - public static uint32 quark (); - } -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_BLEND_STRING_ERROR_", has_type_id = false)] - [Version (since = "1.0")] - public errordomain BlendStringError { - PARSE_ERROR, -@@ -1387,13 +1385,18 @@ namespace Cogl { - [CCode (cheader_filename = "cogl/cogl.h")] - public static uint32 quark (); - } -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FRAMEBUFFER_ERROR_", has_type_id = false)] - public errordomain FramebufferError { - [CCode (cname = "COGL_FRAMEBUFFER_ERROR_ALLOCATE")] - FRAMEBUFFER_ERROR_ALLOCATE - } -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_", has_type_id = false)] -+ public errordomain RendererError { -+ XLIB_DISPLAY_OPEN, -+ BAD_CONSTRAINT -+ } - #if HAS_MUTTER40 -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SCANOUT_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SCANOUT_ERROR_", has_type_id = false)] - public errordomain ScanoutError { - [CCode (cname = "COGL_SCANOUT_ERROR_INHIBITED")] - SCANOUT_ERROR_INHIBITED; -@@ -1401,18 +1404,13 @@ namespace Cogl { - public static GLib.Quark quark (); - } - #endif -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_RENDERER_ERROR_")] -- public errordomain RendererError { -- XLIB_DISPLAY_OPEN, -- BAD_CONSTRAINT -- } -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_SYSTEM_ERROR_", has_type_id = false)] - [Version (since = "1.4")] - public errordomain SystemError { - UNSUPPORTED, - NO_MEMORY - } -- [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_")] -+ [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_TEXTURE_ERROR_", has_type_id = false)] - [Version (since = "1.8")] - public errordomain TextureError { - SIZE, -@@ -1464,7 +1462,7 @@ namespace Cogl { - [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; -+ public static bool blit_framebuffer (Cogl.Framebuffer framebuffer, Cogl.Framebuffer dst, 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); - #if !HAS_MUTTER40 diff --git a/changelog b/changelog deleted file mode 100644 index 10640c4..0000000 --- a/changelog +++ /dev/null @@ -1,170 +0,0 @@ -* Fri Jul 23 2021 Fedora Release Engineering - 3.0.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 -- Update to version 3.0.0. - -* Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 -- Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. -- Rebuilt for granite 6 soname bump. - -* Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 -- Add patch for initial mutter 3.38 support. - -* Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 -- Update to version 2.3.2. - -* Fri May 01 2020 Fabio Valentini - 2.3.1-3 -- Obsolete the retired wingpanel-indicator-ayatana package. - -* Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 -- Rebuild for gala 3.3.0 and mutter 3.36. - -* Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 -- Update to version 2.3.1. - -* Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 -- Bump to commit 88305e0. - -* Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 -- Update to version 2.3.0. - -* Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 -- Update to version 2.2.6. - -* Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 -- Update to version 2.2.5. - -* Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 -- Update to version 2.2.4. - -* Tue Apr 16 2019 Adam Williamson - 2.2.3-2 -- Rebuild with Meson fix for #1699099 - -* Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 -- Update to version 2.2.3. - -* Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Jan 18 2019 Fabio Valentini - 2.2.2-1 -- Update to version 2.2.2. - -* Thu Dec 20 2018 Fabio Valentini - 2.2.1-1 -- Update to version 2.2.1. - -* Fri Oct 05 2018 Fabio Valentini - 2.2.0-1 -- Update to version 2.2.0. - -* Sun Sep 09 2018 Fabio Valentini - 2.1.1-4 -- Rebuild for gala mutter328 support. - -* Sat Jul 14 2018 Fedora Release Engineering - 2.1.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed Jul 11 2018 Fabio Valentini - 2.1.1-2 -- Add missing BR: gcc, gcc-c++. - -* Fri Jul 06 2018 Fabio Valentini - 2.1.1-1 -- Update to version 2.1.1. - -* Wed Jun 13 2018 Fabio Valentini - 2.1.0-2 -- Rebuild for granite5 soname bump. - -* Thu Jun 07 2018 Fabio Valentini - 2.1.0-1 -- Update to version 2.1.0. - -* Tue Mar 13 2018 Fabio Valentini - 2.0.4-6 -- Add patch to support and bump release for mutter 3.28. - -* Fri Feb 09 2018 Fedora Release Engineering - 2.0.4-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Tue Jan 23 2018 Fabio Valentini - 2.0.4-4 -- Include upstream patch to fix undefined symbols. - -* Sat Jan 06 2018 Fabio Valentini - 2.0.4-3 -- Remove icon cache scriptlets, replaced by file triggers. - -* Sat Nov 04 2017 Fabio Valentini - 2.0.4-2 -- Rebuild for granite soname bump. - -* Wed Sep 13 2017 Fabio Valentini - 2.0.4-1 -- Update to version 2.0.4. - -* Mon Sep 04 2017 Fabio Valentini - 2.0.3-5.20170902.git434f674 -- Bump to commit 434f674, which includes fixes for the latest mutter. - -* Sat Sep 02 2017 Fabio Valentini - 2.0.3-4.20170901.git7a1a583 -- Bump to commit 7a1a583, which includes support for the latest mutter. - -* Thu Aug 03 2017 Fedora Release Engineering - 2.0.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 2.0.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Tue May 30 2017 Fabio Valentini - 2.0.3-1 -- Update to version 2.0.3. - -* Sat Apr 08 2017 Fabio Valentini - 2.0.2-2 -- Create and own missing settings directory. - -* Fri Mar 17 2017 Fabio Valentini - 2.0.2-1 -- Update to version 2.0.2. -- Remove upstreamed patches. - -* Wed Feb 22 2017 Fabio Valentini - 2.0.1-12 -- Rebuild for new gala snapshot. - -* Sat Feb 11 2017 Fedora Release Engineering - 2.0.1-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Wed Jan 11 2017 Fabio Valentini - 2.0.1-10 -- Add patch to fix pkgconfig file. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-9 -- Create and own plugin directory. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-8 -- Split off -libs subpackage. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-7 -- Don't let COPYING be executable. - -* Fri Jan 06 2017 Fabio Valentini - 2.0.1-6 -- Clean up spec file. - -* Thu Nov 17 2016 Fabio Valentini - 2.0.1-5 -- Add rpath workaround for f25. - -* Thu Sep 29 2016 Fabio Valentini - 2.0.1-4 -- Mass rebuild. - -* Wed Sep 28 2016 Fabio Valentini - 2.0.1-3 -- Spec file cleanups. - -* Mon Sep 19 2016 Fabio Valentini - 2.0.1-2 -- Spec file cosmetics. - -* Sun Aug 21 2016 Fabio Valentini - 2.0.1-1 -- Update to version 2.0.1. - -* Fri Aug 19 2016 Fabio Valentini - 0.4-1 -- Update to version 0.4. diff --git a/sources b/sources index 0552b68..534ca98 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-3.0.2.tar.gz) = 31e8584e3e243fcfc344d4f264f284d81fbc56bc08f3e75475946f78c504da74f8a8e3d53155d1238ab7398e02d1532f87790cb51bd59469ffd360e21a509c53 +SHA512 (wingpanel-0fb4a14.tar.gz) = 049739a0a0183940d3ec2207e2ac34e79add459270f9e03b06dcb5c6ea389862332d7c8b2416de3351e2117bbc0d5026bb791b05ee6d9ae6f3c3315f39d03edf diff --git a/wingpanel.rpmlintrc b/wingpanel.rpmlintrc deleted file mode 100644 index 80b3bf5..0000000 --- a/wingpanel.rpmlintrc +++ /dev/null @@ -1,6 +0,0 @@ -# false positives -addFilter("E: invalid-lc-messages-dir /usr/share/locale/bh*") -addFilter("E: invalid-lc-messages-dir /usr/share/locale/mo*") - -# don't care about manpages -addFilter("W: no-manual-page-for-binary wingpanel*") diff --git a/wingpanel.spec b/wingpanel.spec index 5f274af..ea40ade 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,69 +1,66 @@ %global appname io.elementary.wingpanel -%global common_description %{expand: +%global commit 0fb4a14b3134b07fd4510f3bfec46b4f0193f20a +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20231206 + +%global _description %{expand: Stylish top panel that holds indicators and spawns an application launcher.} Name: wingpanel +Version: 3.0.5 +Release: 3.%{commitdate}.git%{shortcommit}%{?dist} Summary: Stylish top panel -Version: 3.0.2 -Release: %autorelease -License: GPLv2+ +License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later URL: https://github.com/elementary/wingpanel -Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz - -# merged PR for mutter 42 / libmutter-10 support -Patch0: %{url}/pull/434.patch -# merged PR to support latest mutter / gala changes -Patch1: %{url}/pull/453.patch +Source0: %{url}/archive/%{commit}/wingpanel-%{shortcommit}.tar.gz BuildRequires: desktop-file-utils -BuildRequires: gettext +BuildRequires: gcc BuildRequires: libappstream-glib BuildRequires: meson -BuildRequires: vala >= 0.24.0 +BuildRequires: vala -BuildRequires: mesa-libEGL-devel +%if 0%{?fedora} >= 39 +BuildRequires: pkgconfig(libmutter-13) +BuildRequires: pkgconfig(mutter-clutter-13) +BuildRequires: pkgconfig(mutter-cogl-13) +BuildRequires: pkgconfig(mutter-cogl-pango-13) +%endif +%if 0%{?fedora} == 38 +BuildRequires: pkgconfig(libmutter-12) +BuildRequires: pkgconfig(mutter-clutter-12) +BuildRequires: pkgconfig(mutter-cogl-12) +BuildRequires: pkgconfig(mutter-cogl-pango-12) +%endif BuildRequires: pkgconfig(gala) -BuildRequires: pkgconfig(gdk-x11-3.0) BuildRequires: pkgconfig(gee-0.8) +BuildRequires: pkgconfig(gdk-x11-3.0) +BuildRequires: pkgconfig(gio-2.0) +BuildRequires: pkgconfig(gio-unix-2.0) BuildRequires: pkgconfig(glib-2.0) >= 2.32 +BuildRequires: pkgconfig(gmodule-2.0) BuildRequires: pkgconfig(granite) >= 5.4.0 BuildRequires: pkgconfig(gtk+-3.0) >= 3.10 -BuildRequires: pkgconfig(mutter-clutter-10) -BuildRequires: pkgconfig(mutter-cogl-10) -BuildRequires: pkgconfig(mutter-cogl-pango-10) -Requires: %{name}-libs%{?_isa} = %{version}-%{release} +Requires: hicolor-icon-theme -# wingpanel ayatana appindicator support was abandoned by upstream -# wingpanel-indicator-ayatana-2.0.3-10.fc32 retired for fedora 33+ -Obsoletes: wingpanel-indicator-ayatana < 2.0.3-11 - -%description %{common_description} - - -%package libs -Summary: Stylish top panel (shared library) - -%description libs %{common_description} - -This package contains the shared library. +%description %{_description} %package devel Summary: Stylish top panel (development files) -Requires: %{name}-libs%{?_isa} = %{version}-%{release} - -%description devel %{common_description} +Requires: %{name}%{?_isa} = %{version}-%{release} +%description devel %{_description} This package contains the files required for developing for wingpanel. %prep -%autosetup -p1 +%autosetup -n wingpanel-%{commit} -p1 %build @@ -95,10 +92,17 @@ appstream-util validate-relax --nonet \ %files -f %{appname}.lang +%license COPYING +%doc README.md + %config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}.desktop +%dir %{_sysconfdir}/wingpanel.d +%dir %{_libdir}/wingpanel + %{_bindir}/%{appname} +%{_libdir}/libwingpanel.so.3* %{_libdir}/gala/plugins/libwingpanel-interface.so %{_datadir}/applications/%{appname}.desktop @@ -106,16 +110,6 @@ appstream-util validate-relax --nonet \ %{_datadir}/icons/hicolor/scalable/apps/%{appname}.svg %{_datadir}/metainfo/%{appname}.appdata.xml -%files libs -%license COPYING -%doc README.md - -%dir %{_sysconfdir}/wingpanel.d -%dir %{_libdir}/wingpanel - -%{_libdir}/libwingpanel.so.3 -%{_libdir}/libwingpanel.so.3.* - %files devel %{_includedir}/wingpanel/ @@ -127,4 +121,198 @@ appstream-util validate-relax --nonet \ %changelog -%autochangelog +* Thu Dec 14 2023 Fabio Valentini - 3.0.5-3.20231206.git0fb4a14 +- Bump to commit 0fb4a14. + +* Sun Nov 12 2023 Fabio Valentini - 3.0.5-2.20230915.gitd6009d9 +- Bump to commit d6009d9. + +* Tue May 23 2023 Fabio Valentini - 3.0.3-1.20230423.git0cbf289 +- Packaging refresh for package unretirement. + +* Wed Jul 13 2022 Fabio Valentini 3.0.2-4 +- Include upstream PR to support latest mutter / gala changes + +* Sat Jan 22 2022 Fedora Release Engineering 3.0.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Tue Jan 18 2022 Fabio Valentini 3.0.2-2 +- Include upstream PR for mutter 42 / libmutter-10 support + +* Wed Dec 22 2021 Fabio Valentini 3.0.2-1 +- Update to version 3.0.2; Fixes RHBZ#2034028 + +* Tue Sep 28 2021 Fabio Valentini 3.0.1-1 +- Update to version 3.0.1; Fixes RHBZ#2008349 + +* Fri Jul 23 2021 Fedora Release Engineering - 3.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 +- Update to version 3.0.0. + +* Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 +- Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. +- Rebuilt for granite 6 soname bump. + +* Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 +- Add patch for initial mutter 3.38 support. + +* Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 +- Update to version 2.3.2. + +* Fri May 01 2020 Fabio Valentini - 2.3.1-3 +- Obsolete the retired wingpanel-indicator-ayatana package. + +* Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 +- Rebuild for gala 3.3.0 and mutter 3.36. + +* Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 +- Update to version 2.3.1. + +* Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 +- Bump to commit 88305e0. + +* Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 +- Update to version 2.3.0. + +* Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 +- Update to version 2.2.6. + +* Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 +- Update to version 2.2.5. + +* Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 +- Update to version 2.2.4. + +* Tue Apr 16 2019 Adam Williamson - 2.2.3-2 +- Rebuild with Meson fix for #1699099 + +* Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 +- Update to version 2.2.3. + +* Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jan 18 2019 Fabio Valentini - 2.2.2-1 +- Update to version 2.2.2. + +* Thu Dec 20 2018 Fabio Valentini - 2.2.1-1 +- Update to version 2.2.1. + +* Fri Oct 05 2018 Fabio Valentini - 2.2.0-1 +- Update to version 2.2.0. + +* Sun Sep 09 2018 Fabio Valentini - 2.1.1-4 +- Rebuild for gala mutter328 support. + +* Sat Jul 14 2018 Fedora Release Engineering - 2.1.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Jul 11 2018 Fabio Valentini - 2.1.1-2 +- Add missing BR: gcc, gcc-c++. + +* Fri Jul 06 2018 Fabio Valentini - 2.1.1-1 +- Update to version 2.1.1. + +* Wed Jun 13 2018 Fabio Valentini - 2.1.0-2 +- Rebuild for granite5 soname bump. + +* Thu Jun 07 2018 Fabio Valentini - 2.1.0-1 +- Update to version 2.1.0. + +* Tue Mar 13 2018 Fabio Valentini - 2.0.4-6 +- Add patch to support and bump release for mutter 3.28. + +* Fri Feb 09 2018 Fedora Release Engineering - 2.0.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Jan 23 2018 Fabio Valentini - 2.0.4-4 +- Include upstream patch to fix undefined symbols. + +* Sat Jan 06 2018 Fabio Valentini - 2.0.4-3 +- Remove icon cache scriptlets, replaced by file triggers. + +* Sat Nov 04 2017 Fabio Valentini - 2.0.4-2 +- Rebuild for granite soname bump. + +* Wed Sep 13 2017 Fabio Valentini - 2.0.4-1 +- Update to version 2.0.4. + +* Mon Sep 04 2017 Fabio Valentini - 2.0.3-5.20170902.git434f674 +- Bump to commit 434f674, which includes fixes for the latest mutter. + +* Sat Sep 02 2017 Fabio Valentini - 2.0.3-4.20170901.git7a1a583 +- Bump to commit 7a1a583, which includes support for the latest mutter. + +* Thu Aug 03 2017 Fedora Release Engineering - 2.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 2.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Tue May 30 2017 Fabio Valentini - 2.0.3-1 +- Update to version 2.0.3. + +* Sat Apr 08 2017 Fabio Valentini - 2.0.2-2 +- Create and own missing settings directory. + +* Fri Mar 17 2017 Fabio Valentini - 2.0.2-1 +- Update to version 2.0.2. +- Remove upstreamed patches. + +* Wed Feb 22 2017 Fabio Valentini - 2.0.1-12 +- Rebuild for new gala snapshot. + +* Sat Feb 11 2017 Fedora Release Engineering - 2.0.1-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Jan 11 2017 Fabio Valentini - 2.0.1-10 +- Add patch to fix pkgconfig file. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-9 +- Create and own plugin directory. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-8 +- Split off -libs subpackage. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-7 +- Don't let COPYING be executable. + +* Fri Jan 06 2017 Fabio Valentini - 2.0.1-6 +- Clean up spec file. + +* Thu Nov 17 2016 Fabio Valentini - 2.0.1-5 +- Add rpath workaround for f25. + +* Thu Sep 29 2016 Fabio Valentini - 2.0.1-4 +- Mass rebuild. + +* Wed Sep 28 2016 Fabio Valentini - 2.0.1-3 +- Spec file cleanups. + +* Mon Sep 19 2016 Fabio Valentini - 2.0.1-2 +- Spec file cosmetics. + +* Sun Aug 21 2016 Fabio Valentini - 2.0.1-1 +- Update to version 2.0.1. + +* Fri Aug 19 2016 Fabio Valentini - 0.4-1 +- Update to version 0.4. + From cf7043d7fd3bbe7138bae939ed91f280ebb1cf49 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jan 2024 08:52:08 +0000 Subject: [PATCH 32/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- wingpanel.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index ea40ade..e4042ca 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -10,7 +10,7 @@ launcher.} Name: wingpanel Version: 3.0.5 -Release: 3.%{commitdate}.git%{shortcommit}%{?dist} +Release: 4.%{commitdate}.git%{shortcommit}%{?dist} Summary: Stylish top panel License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later @@ -121,6 +121,9 @@ appstream-util validate-relax --nonet \ %changelog +* Sat Jan 27 2024 Fedora Release Engineering - 3.0.5-4.20231206.git0fb4a14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Thu Dec 14 2023 Fabio Valentini - 3.0.5-3.20231206.git0fb4a14 - Bump to commit 0fb4a14. From e6bfdb67babff70b89e5b35bbad581ee321b3d36 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Mon, 22 Apr 2024 13:49:39 +0200 Subject: [PATCH 33/44] Bump to commit 4dd9990 for compatibility with mutter 46 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 19 +++++++++++++++---- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 8e41592..a961df1 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ /wingpanel-3.0.1.tar.gz /wingpanel-3.0.2.tar.gz /wingpanel-0fb4a14.tar.gz +/wingpanel-4dd9990.tar.gz diff --git a/sources b/sources index 534ca98..62d6dad 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-0fb4a14.tar.gz) = 049739a0a0183940d3ec2207e2ac34e79add459270f9e03b06dcb5c6ea389862332d7c8b2416de3351e2117bbc0d5026bb791b05ee6d9ae6f3c3315f39d03edf +SHA512 (wingpanel-4dd9990.tar.gz) = 7b632a375fcb9e419a18057875f7ed6a04f7effb48a2a1e9218dff4295c69c7127ea71a27b662d43af47048c507150b9e8bcdb2ba1ede8e15b898f54f0b97346 diff --git a/wingpanel.spec b/wingpanel.spec index e4042ca..fb61c7d 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,8 +1,8 @@ %global appname io.elementary.wingpanel -%global commit 0fb4a14b3134b07fd4510f3bfec46b4f0193f20a +%global commit 4dd9990d3d17aef391767fb5240fde9a20ca8a57 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20231206 +%global commitdate 20240416 %global _description %{expand: Stylish top panel that holds indicators and spawns an application @@ -10,7 +10,7 @@ launcher.} Name: wingpanel Version: 3.0.5 -Release: 4.%{commitdate}.git%{shortcommit}%{?dist} +Release: 5.%{commitdate}.git%{shortcommit}%{?dist} Summary: Stylish top panel License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later @@ -23,12 +23,20 @@ BuildRequires: libappstream-glib BuildRequires: meson BuildRequires: vala -%if 0%{?fedora} >= 39 +%if 0%{?fedora} >= 40 +BuildRequires: pkgconfig(libmutter-14) +BuildRequires: pkgconfig(mutter-clutter-14) +BuildRequires: pkgconfig(mutter-cogl-14) +BuildRequires: pkgconfig(mutter-cogl-pango-14) +%endif + +%if 0%{?fedora} == 39 BuildRequires: pkgconfig(libmutter-13) BuildRequires: pkgconfig(mutter-clutter-13) BuildRequires: pkgconfig(mutter-cogl-13) BuildRequires: pkgconfig(mutter-cogl-pango-13) %endif + %if 0%{?fedora} == 38 BuildRequires: pkgconfig(libmutter-12) BuildRequires: pkgconfig(mutter-clutter-12) @@ -121,6 +129,9 @@ appstream-util validate-relax --nonet \ %changelog +* Mon Apr 22 2024 Fabio Valentini - 3.0.5-5.20240416.git4dd9990 +- Bump to commit 4dd9990 for compatibility with mutter 46. + * Sat Jan 27 2024 Fedora Release Engineering - 3.0.5-4.20231206.git0fb4a14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 7f253b616e49391fbabd588721b966d2bd385a7f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 20 Jul 2024 09:23:01 +0000 Subject: [PATCH 34/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- wingpanel.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wingpanel.spec b/wingpanel.spec index fb61c7d..b05707c 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -10,7 +10,7 @@ launcher.} Name: wingpanel Version: 3.0.5 -Release: 5.%{commitdate}.git%{shortcommit}%{?dist} +Release: 6.%{commitdate}.git%{shortcommit}%{?dist} Summary: Stylish top panel License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later @@ -129,6 +129,9 @@ appstream-util validate-relax --nonet \ %changelog +* Sat Jul 20 2024 Fedora Release Engineering - 3.0.5-6.20240416.git4dd9990 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Mon Apr 22 2024 Fabio Valentini - 3.0.5-5.20240416.git4dd9990 - Bump to commit 4dd9990 for compatibility with mutter 46. From 737fbc373e562283a3fe962bac64e44bcfb39902 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Wed, 4 Dec 2024 18:27:22 +0100 Subject: [PATCH 35/44] Convert to %autorelease and %autochangelog [skip changelog] --- changelog | 203 ++++++++++++++++++++++++++++++++++++++++++++++++ wingpanel.spec | 207 +------------------------------------------------ 2 files changed, 205 insertions(+), 205 deletions(-) create mode 100644 changelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..7dfab7c --- /dev/null +++ b/changelog @@ -0,0 +1,203 @@ +* Sat Jul 20 2024 Fedora Release Engineering - 3.0.5-6.20240416.git4dd9990 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Mon Apr 22 2024 Fabio Valentini - 3.0.5-5.20240416.git4dd9990 +- Bump to commit 4dd9990 for compatibility with mutter 46. + +* Sat Jan 27 2024 Fedora Release Engineering - 3.0.5-4.20231206.git0fb4a14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Thu Dec 14 2023 Fabio Valentini - 3.0.5-3.20231206.git0fb4a14 +- Bump to commit 0fb4a14. + +* Sun Nov 12 2023 Fabio Valentini - 3.0.5-2.20230915.gitd6009d9 +- Bump to commit d6009d9. + +* Tue May 23 2023 Fabio Valentini - 3.0.3-1.20230423.git0cbf289 +- Packaging refresh for package unretirement. + +* Wed Jul 13 2022 Fabio Valentini 3.0.2-4 +- Include upstream PR to support latest mutter / gala changes + +* Sat Jan 22 2022 Fedora Release Engineering 3.0.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Tue Jan 18 2022 Fabio Valentini 3.0.2-2 +- Include upstream PR for mutter 42 / libmutter-10 support + +* Wed Dec 22 2021 Fabio Valentini 3.0.2-1 +- Update to version 3.0.2; Fixes RHBZ#2034028 + +* Tue Sep 28 2021 Fabio Valentini 3.0.1-1 +- Update to version 3.0.1; Fixes RHBZ#2008349 + +* Fri Jul 23 2021 Fedora Release Engineering - 3.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 +- Update to version 3.0.0. + +* Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 +- Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. +- Rebuilt for granite 6 soname bump. + +* Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 +- Add patch for initial mutter 3.38 support. + +* Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 +- Update to version 2.3.2. + +* Fri May 01 2020 Fabio Valentini - 2.3.1-3 +- Obsolete the retired wingpanel-indicator-ayatana package. + +* Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 +- Rebuild for gala 3.3.0 and mutter 3.36. + +* Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 +- Update to version 2.3.1. + +* Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 +- Bump to commit 88305e0. + +* Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 +- Update to version 2.3.0. + +* Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 +- Update to version 2.2.6. + +* Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 +- Update to version 2.2.5. + +* Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 +- Update to version 2.2.4. + +* Tue Apr 16 2019 Adam Williamson - 2.2.3-2 +- Rebuild with Meson fix for #1699099 + +* Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 +- Update to version 2.2.3. + +* Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jan 18 2019 Fabio Valentini - 2.2.2-1 +- Update to version 2.2.2. + +* Thu Dec 20 2018 Fabio Valentini - 2.2.1-1 +- Update to version 2.2.1. + +* Fri Oct 05 2018 Fabio Valentini - 2.2.0-1 +- Update to version 2.2.0. + +* Sun Sep 09 2018 Fabio Valentini - 2.1.1-4 +- Rebuild for gala mutter328 support. + +* Sat Jul 14 2018 Fedora Release Engineering - 2.1.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Jul 11 2018 Fabio Valentini - 2.1.1-2 +- Add missing BR: gcc, gcc-c++. + +* Fri Jul 06 2018 Fabio Valentini - 2.1.1-1 +- Update to version 2.1.1. + +* Wed Jun 13 2018 Fabio Valentini - 2.1.0-2 +- Rebuild for granite5 soname bump. + +* Thu Jun 07 2018 Fabio Valentini - 2.1.0-1 +- Update to version 2.1.0. + +* Tue Mar 13 2018 Fabio Valentini - 2.0.4-6 +- Add patch to support and bump release for mutter 3.28. + +* Fri Feb 09 2018 Fedora Release Engineering - 2.0.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Jan 23 2018 Fabio Valentini - 2.0.4-4 +- Include upstream patch to fix undefined symbols. + +* Sat Jan 06 2018 Fabio Valentini - 2.0.4-3 +- Remove icon cache scriptlets, replaced by file triggers. + +* Sat Nov 04 2017 Fabio Valentini - 2.0.4-2 +- Rebuild for granite soname bump. + +* Wed Sep 13 2017 Fabio Valentini - 2.0.4-1 +- Update to version 2.0.4. + +* Mon Sep 04 2017 Fabio Valentini - 2.0.3-5.20170902.git434f674 +- Bump to commit 434f674, which includes fixes for the latest mutter. + +* Sat Sep 02 2017 Fabio Valentini - 2.0.3-4.20170901.git7a1a583 +- Bump to commit 7a1a583, which includes support for the latest mutter. + +* Thu Aug 03 2017 Fedora Release Engineering - 2.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 2.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Tue May 30 2017 Fabio Valentini - 2.0.3-1 +- Update to version 2.0.3. + +* Sat Apr 08 2017 Fabio Valentini - 2.0.2-2 +- Create and own missing settings directory. + +* Fri Mar 17 2017 Fabio Valentini - 2.0.2-1 +- Update to version 2.0.2. +- Remove upstreamed patches. + +* Wed Feb 22 2017 Fabio Valentini - 2.0.1-12 +- Rebuild for new gala snapshot. + +* Sat Feb 11 2017 Fedora Release Engineering - 2.0.1-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Jan 11 2017 Fabio Valentini - 2.0.1-10 +- Add patch to fix pkgconfig file. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-9 +- Create and own plugin directory. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-8 +- Split off -libs subpackage. + +* Sat Jan 07 2017 Fabio Valentini - 2.0.1-7 +- Don't let COPYING be executable. + +* Fri Jan 06 2017 Fabio Valentini - 2.0.1-6 +- Clean up spec file. + +* Thu Nov 17 2016 Fabio Valentini - 2.0.1-5 +- Add rpath workaround for f25. + +* Thu Sep 29 2016 Fabio Valentini - 2.0.1-4 +- Mass rebuild. + +* Wed Sep 28 2016 Fabio Valentini - 2.0.1-3 +- Spec file cleanups. + +* Mon Sep 19 2016 Fabio Valentini - 2.0.1-2 +- Spec file cosmetics. + +* Sun Aug 21 2016 Fabio Valentini - 2.0.1-1 +- Update to version 2.0.1. + +* Fri Aug 19 2016 Fabio Valentini - 0.4-1 +- Update to version 0.4. diff --git a/wingpanel.spec b/wingpanel.spec index b05707c..42ea0e0 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -10,7 +10,7 @@ launcher.} Name: wingpanel Version: 3.0.5 -Release: 6.%{commitdate}.git%{shortcommit}%{?dist} +Release: %autorelease Summary: Stylish top panel License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later @@ -129,207 +129,4 @@ appstream-util validate-relax --nonet \ %changelog -* Sat Jul 20 2024 Fedora Release Engineering - 3.0.5-6.20240416.git4dd9990 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Mon Apr 22 2024 Fabio Valentini - 3.0.5-5.20240416.git4dd9990 -- Bump to commit 4dd9990 for compatibility with mutter 46. - -* Sat Jan 27 2024 Fedora Release Engineering - 3.0.5-4.20231206.git0fb4a14 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Thu Dec 14 2023 Fabio Valentini - 3.0.5-3.20231206.git0fb4a14 -- Bump to commit 0fb4a14. - -* Sun Nov 12 2023 Fabio Valentini - 3.0.5-2.20230915.gitd6009d9 -- Bump to commit d6009d9. - -* Tue May 23 2023 Fabio Valentini - 3.0.3-1.20230423.git0cbf289 -- Packaging refresh for package unretirement. - -* Wed Jul 13 2022 Fabio Valentini 3.0.2-4 -- Include upstream PR to support latest mutter / gala changes - -* Sat Jan 22 2022 Fedora Release Engineering 3.0.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Tue Jan 18 2022 Fabio Valentini 3.0.2-2 -- Include upstream PR for mutter 42 / libmutter-10 support - -* Wed Dec 22 2021 Fabio Valentini 3.0.2-1 -- Update to version 3.0.2; Fixes RHBZ#2034028 - -* Tue Sep 28 2021 Fabio Valentini 3.0.1-1 -- Update to version 3.0.1; Fixes RHBZ#2008349 - -* Fri Jul 23 2021 Fedora Release Engineering - 3.0.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 -- Update to version 3.0.0. - -* Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 -- Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. -- Rebuilt for granite 6 soname bump. - -* Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 -- Add patch for initial mutter 3.38 support. - -* Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 -- Update to version 2.3.2. - -* Fri May 01 2020 Fabio Valentini - 2.3.1-3 -- Obsolete the retired wingpanel-indicator-ayatana package. - -* Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 -- Rebuild for gala 3.3.0 and mutter 3.36. - -* Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 -- Update to version 2.3.1. - -* Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 -- Bump to commit 88305e0. - -* Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 -- Update to version 2.3.0. - -* Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 -- Update to version 2.2.6. - -* Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 -- Update to version 2.2.5. - -* Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 -- Update to version 2.2.4. - -* Tue Apr 16 2019 Adam Williamson - 2.2.3-2 -- Rebuild with Meson fix for #1699099 - -* Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 -- Update to version 2.2.3. - -* Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Jan 18 2019 Fabio Valentini - 2.2.2-1 -- Update to version 2.2.2. - -* Thu Dec 20 2018 Fabio Valentini - 2.2.1-1 -- Update to version 2.2.1. - -* Fri Oct 05 2018 Fabio Valentini - 2.2.0-1 -- Update to version 2.2.0. - -* Sun Sep 09 2018 Fabio Valentini - 2.1.1-4 -- Rebuild for gala mutter328 support. - -* Sat Jul 14 2018 Fedora Release Engineering - 2.1.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed Jul 11 2018 Fabio Valentini - 2.1.1-2 -- Add missing BR: gcc, gcc-c++. - -* Fri Jul 06 2018 Fabio Valentini - 2.1.1-1 -- Update to version 2.1.1. - -* Wed Jun 13 2018 Fabio Valentini - 2.1.0-2 -- Rebuild for granite5 soname bump. - -* Thu Jun 07 2018 Fabio Valentini - 2.1.0-1 -- Update to version 2.1.0. - -* Tue Mar 13 2018 Fabio Valentini - 2.0.4-6 -- Add patch to support and bump release for mutter 3.28. - -* Fri Feb 09 2018 Fedora Release Engineering - 2.0.4-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Tue Jan 23 2018 Fabio Valentini - 2.0.4-4 -- Include upstream patch to fix undefined symbols. - -* Sat Jan 06 2018 Fabio Valentini - 2.0.4-3 -- Remove icon cache scriptlets, replaced by file triggers. - -* Sat Nov 04 2017 Fabio Valentini - 2.0.4-2 -- Rebuild for granite soname bump. - -* Wed Sep 13 2017 Fabio Valentini - 2.0.4-1 -- Update to version 2.0.4. - -* Mon Sep 04 2017 Fabio Valentini - 2.0.3-5.20170902.git434f674 -- Bump to commit 434f674, which includes fixes for the latest mutter. - -* Sat Sep 02 2017 Fabio Valentini - 2.0.3-4.20170901.git7a1a583 -- Bump to commit 7a1a583, which includes support for the latest mutter. - -* Thu Aug 03 2017 Fedora Release Engineering - 2.0.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 2.0.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Tue May 30 2017 Fabio Valentini - 2.0.3-1 -- Update to version 2.0.3. - -* Sat Apr 08 2017 Fabio Valentini - 2.0.2-2 -- Create and own missing settings directory. - -* Fri Mar 17 2017 Fabio Valentini - 2.0.2-1 -- Update to version 2.0.2. -- Remove upstreamed patches. - -* Wed Feb 22 2017 Fabio Valentini - 2.0.1-12 -- Rebuild for new gala snapshot. - -* Sat Feb 11 2017 Fedora Release Engineering - 2.0.1-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Wed Jan 11 2017 Fabio Valentini - 2.0.1-10 -- Add patch to fix pkgconfig file. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-9 -- Create and own plugin directory. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-8 -- Split off -libs subpackage. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-7 -- Don't let COPYING be executable. - -* Fri Jan 06 2017 Fabio Valentini - 2.0.1-6 -- Clean up spec file. - -* Thu Nov 17 2016 Fabio Valentini - 2.0.1-5 -- Add rpath workaround for f25. - -* Thu Sep 29 2016 Fabio Valentini - 2.0.1-4 -- Mass rebuild. - -* Wed Sep 28 2016 Fabio Valentini - 2.0.1-3 -- Spec file cleanups. - -* Mon Sep 19 2016 Fabio Valentini - 2.0.1-2 -- Spec file cosmetics. - -* Sun Aug 21 2016 Fabio Valentini - 2.0.1-1 -- Update to version 2.0.1. - -* Fri Aug 19 2016 Fabio Valentini - 0.4-1 -- Update to version 0.4. - +%autochangelog From 78dafae890256ea397d279752528f36ef8c829e7 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Thu, 19 Dec 2024 18:56:44 +0100 Subject: [PATCH 36/44] Bump to commit 0baabae for compatibility with mutter 47 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 41 +++++++++++++++-------------------------- 3 files changed, 17 insertions(+), 27 deletions(-) diff --git a/.gitignore b/.gitignore index a961df1..99f0adb 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,4 @@ /wingpanel-3.0.2.tar.gz /wingpanel-0fb4a14.tar.gz /wingpanel-4dd9990.tar.gz +/wingpanel-0baabae.tar.gz diff --git a/sources b/sources index 62d6dad..05ba0d5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-4dd9990.tar.gz) = 7b632a375fcb9e419a18057875f7ed6a04f7effb48a2a1e9218dff4295c69c7127ea71a27b662d43af47048c507150b9e8bcdb2ba1ede8e15b898f54f0b97346 +SHA512 (wingpanel-0baabae.tar.gz) = 260beeb063b681906bdb1c8b682f72fb19007f3c463ace352a476cb91b556748b8ad356fe8f75baf0420a8f4d2eef5ff8d0c413267e6eb87d02e8addc7bdd094 diff --git a/wingpanel.spec b/wingpanel.spec index 42ea0e0..f8fd018 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,15 +1,15 @@ %global appname io.elementary.wingpanel -%global commit 4dd9990d3d17aef391767fb5240fde9a20ca8a57 +%global commit 0baabaed455102ac300ab67c12d44ee6647006fe %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20240416 +%global commitdate 20241219 %global _description %{expand: Stylish top panel that holds indicators and spawns an application launcher.} Name: wingpanel -Version: 3.0.5 +Version: 8.0.1^%{commitdate}.git%{shortcommit} Release: %autorelease Summary: Stylish top panel License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later @@ -23,25 +23,19 @@ BuildRequires: libappstream-glib BuildRequires: meson BuildRequires: vala -%if 0%{?fedora} >= 40 +%if 0%{?fedora} >= 41 +BuildRequires: pkgconfig(libmutter-15) +BuildRequires: pkgconfig(mutter-clutter-15) +BuildRequires: pkgconfig(mutter-cogl-15) +BuildRequires: pkgconfig(mutter-cogl-pango-15) +BuildRequires: pkgconfig(mutter-mtk-15) +%endif +%if 0%{?fedora} == 40 BuildRequires: pkgconfig(libmutter-14) BuildRequires: pkgconfig(mutter-clutter-14) BuildRequires: pkgconfig(mutter-cogl-14) BuildRequires: pkgconfig(mutter-cogl-pango-14) -%endif - -%if 0%{?fedora} == 39 -BuildRequires: pkgconfig(libmutter-13) -BuildRequires: pkgconfig(mutter-clutter-13) -BuildRequires: pkgconfig(mutter-cogl-13) -BuildRequires: pkgconfig(mutter-cogl-pango-13) -%endif - -%if 0%{?fedora} == 38 -BuildRequires: pkgconfig(libmutter-12) -BuildRequires: pkgconfig(mutter-clutter-12) -BuildRequires: pkgconfig(mutter-cogl-12) -BuildRequires: pkgconfig(mutter-cogl-pango-12) +BuildRequires: pkgconfig(mutter-mtk-14) %endif BuildRequires: pkgconfig(gala) @@ -92,31 +86,26 @@ mkdir -p %{buildroot}/%{_sysconfdir}/wingpanel.d desktop-file-validate \ %{buildroot}/%{_datadir}/applications/%{appname}.desktop -desktop-file-validate \ - %{buildroot}/%{_sysconfdir}/xdg/autostart/%{appname}.desktop - appstream-util validate-relax --nonet \ - %{buildroot}/%{_datadir}/metainfo/%{appname}.appdata.xml + %{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml %files -f %{appname}.lang %license COPYING %doc README.md -%config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}.desktop - %dir %{_sysconfdir}/wingpanel.d %dir %{_libdir}/wingpanel %{_bindir}/%{appname} -%{_libdir}/libwingpanel.so.3* +%{_libdir}/libwingpanel.so.8* %{_libdir}/gala/plugins/libwingpanel-interface.so %{_datadir}/applications/%{appname}.desktop %{_datadir}/glib-2.0/schemas/io.elementary.desktop.wingpanel.gschema.xml %{_datadir}/icons/hicolor/scalable/apps/%{appname}.svg -%{_datadir}/metainfo/%{appname}.appdata.xml +%{_datadir}/metainfo/%{appname}.metainfo.xml %files devel %{_includedir}/wingpanel/ From 451c6bc0109d42d4ab9214cfadc252a186e3cf79 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 19 Jan 2025 15:03:49 +0000 Subject: [PATCH 37/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 784f4fdb8a9070a8df67355c41f9ee4fdbf6a6f7 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Tue, 18 Feb 2025 21:08:16 +0100 Subject: [PATCH 38/44] Update to version 8.0.2; Fixes RHBZ#2344349 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 10 +++------- 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 99f0adb..b0999a0 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,4 @@ /wingpanel-0fb4a14.tar.gz /wingpanel-4dd9990.tar.gz /wingpanel-0baabae.tar.gz +/wingpanel-8.0.2.tar.gz diff --git a/sources b/sources index 05ba0d5..f6ff95f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-0baabae.tar.gz) = 260beeb063b681906bdb1c8b682f72fb19007f3c463ace352a476cb91b556748b8ad356fe8f75baf0420a8f4d2eef5ff8d0c413267e6eb87d02e8addc7bdd094 +SHA512 (wingpanel-8.0.2.tar.gz) = 654403e857c43a928b9a313ca349913a0ea5d8b90f2bf176e964f8f42bb1b3fda440f1b6b23678f2282c8fff2ba7777241e99320326b6f487ebe0f076906ce35 diff --git a/wingpanel.spec b/wingpanel.spec index f8fd018..d41563a 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,21 +1,17 @@ %global appname io.elementary.wingpanel -%global commit 0baabaed455102ac300ab67c12d44ee6647006fe -%global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20241219 - %global _description %{expand: Stylish top panel that holds indicators and spawns an application launcher.} Name: wingpanel -Version: 8.0.1^%{commitdate}.git%{shortcommit} +Version: 8.0.2 Release: %autorelease Summary: Stylish top panel License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later URL: https://github.com/elementary/wingpanel -Source0: %{url}/archive/%{commit}/wingpanel-%{shortcommit}.tar.gz +Source0: %{url}/archive/%{version}/wingpanel-%{version}.tar.gz BuildRequires: desktop-file-utils BuildRequires: gcc @@ -62,7 +58,7 @@ This package contains the files required for developing for wingpanel. %prep -%autosetup -n wingpanel-%{commit} -p1 +%autosetup -n wingpanel-%{version} -p1 %build From 8991fc8d96587352f1ffa37f67978802ab7b7c0b Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Mon, 19 May 2025 15:53:33 +0200 Subject: [PATCH 39/44] Update to version 8.0.3; Fixes RHBZ#2351224 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index b0999a0..aa1f5e2 100644 --- a/.gitignore +++ b/.gitignore @@ -28,3 +28,4 @@ /wingpanel-4dd9990.tar.gz /wingpanel-0baabae.tar.gz /wingpanel-8.0.2.tar.gz +/wingpanel-8.0.3.tar.gz diff --git a/sources b/sources index f6ff95f..9f4dc53 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-8.0.2.tar.gz) = 654403e857c43a928b9a313ca349913a0ea5d8b90f2bf176e964f8f42bb1b3fda440f1b6b23678f2282c8fff2ba7777241e99320326b6f487ebe0f076906ce35 +SHA512 (wingpanel-8.0.3.tar.gz) = 656c41adb1258469dae5e81bfee6a2388c0c69262efc7cf214175d5ff0d5bbf03668ffe2c6949d8cfd4b8b63be1a83ac4dae92404d9e0f3492343c9bfd6534cc diff --git a/wingpanel.spec b/wingpanel.spec index d41563a..920fc23 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -5,7 +5,7 @@ Stylish top panel that holds indicators and spawns an application launcher.} Name: wingpanel -Version: 8.0.2 +Version: 8.0.3 Release: %autorelease Summary: Stylish top panel License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later From 173cb8c5131663473b3e89f4bcf74f5f4c6b1225 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Mon, 16 Jun 2025 13:20:00 +0200 Subject: [PATCH 40/44] Bump to commit 7990904 for compatibility with mutter 48 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 25 ++++++++++++++----------- 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index aa1f5e2..2a0b1b5 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,4 @@ /wingpanel-0baabae.tar.gz /wingpanel-8.0.2.tar.gz /wingpanel-8.0.3.tar.gz +/wingpanel-7990904.tar.gz diff --git a/sources b/sources index 9f4dc53..5012d98 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-8.0.3.tar.gz) = 656c41adb1258469dae5e81bfee6a2388c0c69262efc7cf214175d5ff0d5bbf03668ffe2c6949d8cfd4b8b63be1a83ac4dae92404d9e0f3492343c9bfd6534cc +SHA512 (wingpanel-7990904.tar.gz) = ed6e0bfd6dd6cc21d2e433535222eebe14a24c2f5c5b9ddb080d6e9d03d62b6c3efce820a15496a2432ee9cf31dfacc8eaa79e0b3a5918837a1612c9555d6b39 diff --git a/wingpanel.spec b/wingpanel.spec index 920fc23..8d0b0b3 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,17 +1,21 @@ %global appname io.elementary.wingpanel +%global commit 799090429d747ac9baf4f4e021b48da743c00761 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global gitdate 20250611 + %global _description %{expand: Stylish top panel that holds indicators and spawns an application launcher.} Name: wingpanel -Version: 8.0.3 +Version: 8.0.3^%{gitdate}.git%{shortcommit} Release: %autorelease Summary: Stylish top panel License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later URL: https://github.com/elementary/wingpanel -Source0: %{url}/archive/%{version}/wingpanel-%{version}.tar.gz +Source0: %{url}/archive/%{commit}/wingpanel-%{shortcommit}.tar.gz BuildRequires: desktop-file-utils BuildRequires: gcc @@ -19,20 +23,19 @@ BuildRequires: libappstream-glib BuildRequires: meson BuildRequires: vala -%if 0%{?fedora} >= 41 +%if 0%{?fedora} >= 42 +BuildRequires: pkgconfig(libmutter-16) +BuildRequires: pkgconfig(mutter-clutter-16) +BuildRequires: pkgconfig(mutter-cogl-16) +BuildRequires: pkgconfig(mutter-mtk-16) +%endif +%if 0%{?fedora} == 41 BuildRequires: pkgconfig(libmutter-15) BuildRequires: pkgconfig(mutter-clutter-15) BuildRequires: pkgconfig(mutter-cogl-15) BuildRequires: pkgconfig(mutter-cogl-pango-15) BuildRequires: pkgconfig(mutter-mtk-15) %endif -%if 0%{?fedora} == 40 -BuildRequires: pkgconfig(libmutter-14) -BuildRequires: pkgconfig(mutter-clutter-14) -BuildRequires: pkgconfig(mutter-cogl-14) -BuildRequires: pkgconfig(mutter-cogl-pango-14) -BuildRequires: pkgconfig(mutter-mtk-14) -%endif BuildRequires: pkgconfig(gala) BuildRequires: pkgconfig(gee-0.8) @@ -58,7 +61,7 @@ This package contains the files required for developing for wingpanel. %prep -%autosetup -n wingpanel-%{version} -p1 +%autosetup -n wingpanel-%{commit} -p1 %build From a909990020fc183575d3eae67a7873f865b7ac10 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 20:26:39 +0000 Subject: [PATCH 41/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From b4b5293655fe819fc05437078fd8835b59780a2a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 17 Jan 2026 20:15:46 +0000 Subject: [PATCH 42/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild From 35849246557622d2a14727925ce0050f5ac07ac3 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Wed, 4 Feb 2026 18:24:37 +0100 Subject: [PATCH 43/44] Bump to commit cd4852e for compatibility with mutter 49 --- .gitignore | 1 + sources | 2 +- wingpanel.spec | 22 +++++++++++----------- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index 2a0b1b5..67d2633 100644 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,4 @@ /wingpanel-8.0.2.tar.gz /wingpanel-8.0.3.tar.gz /wingpanel-7990904.tar.gz +/wingpanel-cd4852e.tar.gz diff --git a/sources b/sources index 5012d98..1e61744 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wingpanel-7990904.tar.gz) = ed6e0bfd6dd6cc21d2e433535222eebe14a24c2f5c5b9ddb080d6e9d03d62b6c3efce820a15496a2432ee9cf31dfacc8eaa79e0b3a5918837a1612c9555d6b39 +SHA512 (wingpanel-cd4852e.tar.gz) = 5aad0cee70e26726cc2e0da62d883bc68d4167802ef5a453cb3de00fdb7b76d35751b2330a524f914bc5dac2cc97c47c50662f2a77c2665f508fa31b4cfe2f2c diff --git a/wingpanel.spec b/wingpanel.spec index 8d0b0b3..3531aa7 100644 --- a/wingpanel.spec +++ b/wingpanel.spec @@ -1,15 +1,15 @@ %global appname io.elementary.wingpanel -%global commit 799090429d747ac9baf4f4e021b48da743c00761 +%global commit cd4852e3a28fa5b14dc2ea88810a4754d7e1d226 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global gitdate 20250611 +%global gitdate 20260127 %global _description %{expand: Stylish top panel that holds indicators and spawns an application launcher.} Name: wingpanel -Version: 8.0.3^%{gitdate}.git%{shortcommit} +Version: 8.0.4^%{gitdate}.git%{shortcommit} Release: %autorelease Summary: Stylish top panel License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later @@ -23,19 +23,19 @@ BuildRequires: libappstream-glib BuildRequires: meson BuildRequires: vala -%if 0%{?fedora} >= 42 +%if 0%{?fedora} >= 43 +BuildRequires: pkgconfig(libmutter-17) +BuildRequires: pkgconfig(mutter-clutter-17) +BuildRequires: pkgconfig(mutter-cogl-17) +BuildRequires: pkgconfig(mutter-mtk-17) +%endif + +%if 0%{?fedora} == 42 BuildRequires: pkgconfig(libmutter-16) BuildRequires: pkgconfig(mutter-clutter-16) BuildRequires: pkgconfig(mutter-cogl-16) BuildRequires: pkgconfig(mutter-mtk-16) %endif -%if 0%{?fedora} == 41 -BuildRequires: pkgconfig(libmutter-15) -BuildRequires: pkgconfig(mutter-clutter-15) -BuildRequires: pkgconfig(mutter-cogl-15) -BuildRequires: pkgconfig(mutter-cogl-pango-15) -BuildRequires: pkgconfig(mutter-mtk-15) -%endif BuildRequires: pkgconfig(gala) BuildRequires: pkgconfig(gee-0.8) From 3028096faba5190b614d86ccb699e433db862609 Mon Sep 17 00:00:00 2001 From: Orphaned Packages Process Date: Fri, 19 Jun 2026 15:34:31 -0500 Subject: [PATCH 44/44] Orphaned for 6+ weeks --- .gitignore | 33 -------- changelog | 203 ------------------------------------------------- dead.package | 1 + sources | 1 - wingpanel.spec | 120 ----------------------------- 5 files changed, 1 insertion(+), 357 deletions(-) delete mode 100644 .gitignore delete mode 100644 changelog create mode 100644 dead.package delete mode 100644 sources delete mode 100644 wingpanel.spec diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 67d2633..0000000 --- a/.gitignore +++ /dev/null @@ -1,33 +0,0 @@ -/results_* -/*.src.rpm - -/wingpanel-2.0.1.tar.xz -/wingpanel-2.0.2.tar.xz -/wingpanel-2.0.3.tar.gz -/wingpanel-2.0.3-7a1a583.tar.gz -/wingpanel-2.0.3-434f674.tar.gz -/wingpanel-2.0.4.tar.gz -/wingpanel-2.1.0.tar.gz -/wingpanel-2.1.1.tar.gz -/wingpanel-2.2.0.tar.gz -/wingpanel-2.2.1.tar.gz -/wingpanel-2.2.2.tar.gz -/wingpanel-2.2.3.tar.gz -/wingpanel-2.2.4.tar.gz -/wingpanel-2.2.5.tar.gz -/wingpanel-2.2.6.tar.gz -/wingpanel-2.3.0.tar.gz -/wingpanel-88305e0.tar.gz -/wingpanel-2.3.1.tar.gz -/wingpanel-2.3.2.tar.gz -/wingpanel-db24c73.tar.gz -/wingpanel-3.0.0.tar.gz -/wingpanel-3.0.1.tar.gz -/wingpanel-3.0.2.tar.gz -/wingpanel-0fb4a14.tar.gz -/wingpanel-4dd9990.tar.gz -/wingpanel-0baabae.tar.gz -/wingpanel-8.0.2.tar.gz -/wingpanel-8.0.3.tar.gz -/wingpanel-7990904.tar.gz -/wingpanel-cd4852e.tar.gz diff --git a/changelog b/changelog deleted file mode 100644 index 7dfab7c..0000000 --- a/changelog +++ /dev/null @@ -1,203 +0,0 @@ -* Sat Jul 20 2024 Fedora Release Engineering - 3.0.5-6.20240416.git4dd9990 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Mon Apr 22 2024 Fabio Valentini - 3.0.5-5.20240416.git4dd9990 -- Bump to commit 4dd9990 for compatibility with mutter 46. - -* Sat Jan 27 2024 Fedora Release Engineering - 3.0.5-4.20231206.git0fb4a14 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Thu Dec 14 2023 Fabio Valentini - 3.0.5-3.20231206.git0fb4a14 -- Bump to commit 0fb4a14. - -* Sun Nov 12 2023 Fabio Valentini - 3.0.5-2.20230915.gitd6009d9 -- Bump to commit d6009d9. - -* Tue May 23 2023 Fabio Valentini - 3.0.3-1.20230423.git0cbf289 -- Packaging refresh for package unretirement. - -* Wed Jul 13 2022 Fabio Valentini 3.0.2-4 -- Include upstream PR to support latest mutter / gala changes - -* Sat Jan 22 2022 Fedora Release Engineering 3.0.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Tue Jan 18 2022 Fabio Valentini 3.0.2-2 -- Include upstream PR for mutter 42 / libmutter-10 support - -* Wed Dec 22 2021 Fabio Valentini 3.0.2-1 -- Update to version 3.0.2; Fixes RHBZ#2034028 - -* Tue Sep 28 2021 Fabio Valentini 3.0.1-1 -- Update to version 3.0.1; Fixes RHBZ#2008349 - -* Fri Jul 23 2021 Fedora Release Engineering - 3.0.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jul 14 2021 Fabio Valentini - 3.0.0-1 -- Update to version 3.0.0. - -* Fri Feb 12 2021 Fabio Valentini - 3.0.0-0.1.20210217.gitdb24c73 -- Update to a wingpanel 3.0.0 pre-release snapshot at commit db24c73. -- Rebuilt for granite 6 soname bump. - -* Wed Jan 27 2021 Fedora Release Engineering - 2.3.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Aug 29 2020 Fabio Valentini - 2.3.2-4 -- Add patch for initial mutter 3.38 support. - -* Sat Aug 01 2020 Fedora Release Engineering - 2.3.2-3 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 2.3.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sun Jun 21 2020 Fabio Valentini - 2.3.2-1 -- Update to version 2.3.2. - -* Fri May 01 2020 Fabio Valentini - 2.3.1-3 -- Obsolete the retired wingpanel-indicator-ayatana package. - -* Mon Apr 06 2020 Fabio Valentini - 2.3.1-2 -- Rebuild for gala 3.3.0 and mutter 3.36. - -* Mon Apr 06 2020 Fabio Valentini - 2.3.1-1 -- Update to version 2.3.1. - -* Fri Apr 03 2020 Fabio Valentini - 2.3.0-2.20200313.git88305e0 -- Bump to commit 88305e0. - -* Tue Mar 03 2020 Fabio Valentini - 2.3.0-1 -- Update to version 2.3.0. - -* Fri Jan 31 2020 Fedora Release Engineering - 2.2.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Nov 01 2019 Fabio Valentini - 2.2.6-1 -- Update to version 2.2.6. - -* Sat Jul 27 2019 Fedora Release Engineering - 2.2.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jun 06 2019 Fabio Valentini - 2.2.5-1 -- Update to version 2.2.5. - -* Wed Apr 24 2019 Fabio Valentini - 2.2.4-1 -- Update to version 2.2.4. - -* Tue Apr 16 2019 Adam Williamson - 2.2.3-2 -- Rebuild with Meson fix for #1699099 - -* Mon Mar 18 2019 Fabio Valentini - 2.2.3-1 -- Update to version 2.2.3. - -* Sun Feb 03 2019 Fedora Release Engineering - 2.2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Jan 18 2019 Fabio Valentini - 2.2.2-1 -- Update to version 2.2.2. - -* Thu Dec 20 2018 Fabio Valentini - 2.2.1-1 -- Update to version 2.2.1. - -* Fri Oct 05 2018 Fabio Valentini - 2.2.0-1 -- Update to version 2.2.0. - -* Sun Sep 09 2018 Fabio Valentini - 2.1.1-4 -- Rebuild for gala mutter328 support. - -* Sat Jul 14 2018 Fedora Release Engineering - 2.1.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed Jul 11 2018 Fabio Valentini - 2.1.1-2 -- Add missing BR: gcc, gcc-c++. - -* Fri Jul 06 2018 Fabio Valentini - 2.1.1-1 -- Update to version 2.1.1. - -* Wed Jun 13 2018 Fabio Valentini - 2.1.0-2 -- Rebuild for granite5 soname bump. - -* Thu Jun 07 2018 Fabio Valentini - 2.1.0-1 -- Update to version 2.1.0. - -* Tue Mar 13 2018 Fabio Valentini - 2.0.4-6 -- Add patch to support and bump release for mutter 3.28. - -* Fri Feb 09 2018 Fedora Release Engineering - 2.0.4-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Tue Jan 23 2018 Fabio Valentini - 2.0.4-4 -- Include upstream patch to fix undefined symbols. - -* Sat Jan 06 2018 Fabio Valentini - 2.0.4-3 -- Remove icon cache scriptlets, replaced by file triggers. - -* Sat Nov 04 2017 Fabio Valentini - 2.0.4-2 -- Rebuild for granite soname bump. - -* Wed Sep 13 2017 Fabio Valentini - 2.0.4-1 -- Update to version 2.0.4. - -* Mon Sep 04 2017 Fabio Valentini - 2.0.3-5.20170902.git434f674 -- Bump to commit 434f674, which includes fixes for the latest mutter. - -* Sat Sep 02 2017 Fabio Valentini - 2.0.3-4.20170901.git7a1a583 -- Bump to commit 7a1a583, which includes support for the latest mutter. - -* Thu Aug 03 2017 Fedora Release Engineering - 2.0.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 2.0.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Tue May 30 2017 Fabio Valentini - 2.0.3-1 -- Update to version 2.0.3. - -* Sat Apr 08 2017 Fabio Valentini - 2.0.2-2 -- Create and own missing settings directory. - -* Fri Mar 17 2017 Fabio Valentini - 2.0.2-1 -- Update to version 2.0.2. -- Remove upstreamed patches. - -* Wed Feb 22 2017 Fabio Valentini - 2.0.1-12 -- Rebuild for new gala snapshot. - -* Sat Feb 11 2017 Fedora Release Engineering - 2.0.1-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Wed Jan 11 2017 Fabio Valentini - 2.0.1-10 -- Add patch to fix pkgconfig file. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-9 -- Create and own plugin directory. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-8 -- Split off -libs subpackage. - -* Sat Jan 07 2017 Fabio Valentini - 2.0.1-7 -- Don't let COPYING be executable. - -* Fri Jan 06 2017 Fabio Valentini - 2.0.1-6 -- Clean up spec file. - -* Thu Nov 17 2016 Fabio Valentini - 2.0.1-5 -- Add rpath workaround for f25. - -* Thu Sep 29 2016 Fabio Valentini - 2.0.1-4 -- Mass rebuild. - -* Wed Sep 28 2016 Fabio Valentini - 2.0.1-3 -- Spec file cleanups. - -* Mon Sep 19 2016 Fabio Valentini - 2.0.1-2 -- Spec file cosmetics. - -* Sun Aug 21 2016 Fabio Valentini - 2.0.1-1 -- Update to version 2.0.1. - -* Fri Aug 19 2016 Fabio Valentini - 0.4-1 -- Update to version 0.4. diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..5204a84 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +Orphaned for 6+ weeks diff --git a/sources b/sources deleted file mode 100644 index 1e61744..0000000 --- a/sources +++ /dev/null @@ -1 +0,0 @@ -SHA512 (wingpanel-cd4852e.tar.gz) = 5aad0cee70e26726cc2e0da62d883bc68d4167802ef5a453cb3de00fdb7b76d35751b2330a524f914bc5dac2cc97c47c50662f2a77c2665f508fa31b4cfe2f2c diff --git a/wingpanel.spec b/wingpanel.spec deleted file mode 100644 index 3531aa7..0000000 --- a/wingpanel.spec +++ /dev/null @@ -1,120 +0,0 @@ -%global appname io.elementary.wingpanel - -%global commit cd4852e3a28fa5b14dc2ea88810a4754d7e1d226 -%global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global gitdate 20260127 - -%global _description %{expand: -Stylish top panel that holds indicators and spawns an application -launcher.} - -Name: wingpanel -Version: 8.0.4^%{gitdate}.git%{shortcommit} -Release: %autorelease -Summary: Stylish top panel -License: GPL-3.0-or-later AND GPL-2.0-or-later AND LGPL-2.1-or-later - -URL: https://github.com/elementary/wingpanel -Source0: %{url}/archive/%{commit}/wingpanel-%{shortcommit}.tar.gz - -BuildRequires: desktop-file-utils -BuildRequires: gcc -BuildRequires: libappstream-glib -BuildRequires: meson -BuildRequires: vala - -%if 0%{?fedora} >= 43 -BuildRequires: pkgconfig(libmutter-17) -BuildRequires: pkgconfig(mutter-clutter-17) -BuildRequires: pkgconfig(mutter-cogl-17) -BuildRequires: pkgconfig(mutter-mtk-17) -%endif - -%if 0%{?fedora} == 42 -BuildRequires: pkgconfig(libmutter-16) -BuildRequires: pkgconfig(mutter-clutter-16) -BuildRequires: pkgconfig(mutter-cogl-16) -BuildRequires: pkgconfig(mutter-mtk-16) -%endif - -BuildRequires: pkgconfig(gala) -BuildRequires: pkgconfig(gee-0.8) -BuildRequires: pkgconfig(gdk-x11-3.0) -BuildRequires: pkgconfig(gio-2.0) -BuildRequires: pkgconfig(gio-unix-2.0) -BuildRequires: pkgconfig(glib-2.0) >= 2.32 -BuildRequires: pkgconfig(gmodule-2.0) -BuildRequires: pkgconfig(granite) >= 5.4.0 -BuildRequires: pkgconfig(gtk+-3.0) >= 3.10 - -Requires: hicolor-icon-theme - -%description %{_description} - - -%package devel -Summary: Stylish top panel (development files) -Requires: %{name}%{?_isa} = %{version}-%{release} -%description devel %{_description} - -This package contains the files required for developing for wingpanel. - - -%prep -%autosetup -n wingpanel-%{commit} -p1 - - -%build -%meson -%meson_build - - -%install -%meson_install - -%find_lang %{appname} - -# create plugin directory -mkdir -p %{buildroot}/%{_libdir}/wingpanel - -# create settings directory -mkdir -p %{buildroot}/%{_sysconfdir}/wingpanel.d - - -%check -desktop-file-validate \ - %{buildroot}/%{_datadir}/applications/%{appname}.desktop - -appstream-util validate-relax --nonet \ - %{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml - - -%files -f %{appname}.lang -%license COPYING -%doc README.md - -%dir %{_sysconfdir}/wingpanel.d -%dir %{_libdir}/wingpanel - -%{_bindir}/%{appname} - -%{_libdir}/libwingpanel.so.8* -%{_libdir}/gala/plugins/libwingpanel-interface.so - -%{_datadir}/applications/%{appname}.desktop -%{_datadir}/glib-2.0/schemas/io.elementary.desktop.wingpanel.gschema.xml -%{_datadir}/icons/hicolor/scalable/apps/%{appname}.svg -%{_datadir}/metainfo/%{appname}.metainfo.xml - -%files devel -%{_includedir}/wingpanel/ - -%{_libdir}/libwingpanel.so -%{_libdir}/pkgconfig/wingpanel.pc - -%{_datadir}/vala/vapi/wingpanel.deps -%{_datadir}/vala/vapi/wingpanel.vapi - - -%changelog -%autochangelog