From 4f034ca8e17b784a544cdfca12cb40132f85389a Mon Sep 17 00:00:00 2001 From: Evan Paterakis Date: Tue, 22 Aug 2023 23:34:13 +0300 Subject: [PATCH] fix: Vala 0.56.11 vapi change & GTK 4.12 deprecation (#447) * fix: Vala 0.56.11 vapi change & GTK 4.12 deprication * fix(ci): remove vala sdk it has to be added back on 45 but for now it messes up the vala versions --- build-aux/dev.geopjr.Tuba.Devel.json | 5 ----- meson.build | 8 ++++++++ src/Widgets/VoteBox.vala | 12 +++++++++++- 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/build-aux/dev.geopjr.Tuba.Devel.json b/build-aux/dev.geopjr.Tuba.Devel.json index af3035b9c..84ec3dd8f 100644 --- a/build-aux/dev.geopjr.Tuba.Devel.json +++ b/build-aux/dev.geopjr.Tuba.Devel.json @@ -3,11 +3,6 @@ "runtime": "org.gnome.Platform", "runtime-version": "44", "sdk": "org.gnome.Sdk", - "sdk-extensions" : ["org.freedesktop.Sdk.Extension.vala"], - "build-options" : { - "prepend-path" : "/usr/lib/sdk/vala/bin/", - "prepend-ld-library-path" : "/usr/lib/sdk/vala/lib" - }, "command": "dev.geopjr.Tuba", "finish-args": [ "--device=dri", diff --git a/meson.build b/meson.build index b780d01d4..dc8512a9f 100644 --- a/meson.build +++ b/meson.build @@ -79,6 +79,14 @@ if libgtk_dep.version().version_compare('>=4.10.0') add_project_arguments(['--define=GTK_4_10'], language: 'vala') endif +if libgtk_dep.version().version_compare('>=4.12.0') + add_project_arguments(['--define=GTK_4_12'], language: 'vala') +endif + +if meson.get_compiler('vala').version().version_compare('>=0.56.11') + add_project_arguments(['--define=VALAC_05611'], language: 'vala') +endif + if libspelling.found () add_project_arguments(['--define=LIBSPELLING'], language: 'vala') endif diff --git a/src/Widgets/VoteBox.vala b/src/Widgets/VoteBox.vala index 33cd697f5..5120cf983 100644 --- a/src/Widgets/VoteBox.vala +++ b/src/Widgets/VoteBox.vala @@ -72,7 +72,17 @@ public class Tuba.Widgets.VoteBox: Box { var percentage = poll.votes_count > 0 ? ((double)p.votes_count / poll.votes_count) * 100 : 0.0; var provider = new Gtk.CssProvider (); - provider.load_from_data (generate_css_style ((int) percentage).data); + + #if GTK_4_12 + provider.load_from_string (generate_css_style ((int) percentage)); + #else + #if VALAC_05611 + provider.load_from_data (generate_css_style ((int) percentage), -1); + #else + provider.load_from_data (generate_css_style ((int) percentage).data); + #endif + #endif + row.get_style_context ().add_provider (provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); row.add_css_class (@"ttl-poll-$((int) percentage)");