diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 528dde431ea6..66596eca2572 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -52,7 +52,7 @@ jobs: features: "v4_20,xml_validation,blueprint", test_sys: false, } - - { name: "gsk4", features: "v4_18,broadway,vulkan", test_sys: true } + - { name: "gsk4", features: "v4_20,broadway,vulkan", test_sys: true } - { name: "gdk4", features: "v4_20,gl", test_sys: true } - { name: "gdk4-wayland", diff --git a/gdk4-macos/src/auto/versions.txt b/gdk4-macos/src/auto/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gdk4-macos/src/auto/versions.txt +++ b/gdk4-macos/src/auto/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gdk4-macos/sys/versions.txt b/gdk4-macos/sys/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gdk4-macos/sys/versions.txt +++ b/gdk4-macos/sys/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gdk4-wayland/src/auto/versions.txt b/gdk4-wayland/src/auto/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gdk4-wayland/src/auto/versions.txt +++ b/gdk4-wayland/src/auto/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gdk4-wayland/sys/versions.txt b/gdk4-wayland/sys/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gdk4-wayland/sys/versions.txt +++ b/gdk4-wayland/sys/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gdk4-win32/src/auto/versions.txt b/gdk4-win32/src/auto/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gdk4-win32/src/auto/versions.txt +++ b/gdk4-win32/src/auto/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gdk4-win32/sys/versions.txt b/gdk4-win32/sys/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gdk4-win32/sys/versions.txt +++ b/gdk4-win32/sys/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gdk4-x11/src/auto/versions.txt b/gdk4-x11/src/auto/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gdk4-x11/src/auto/versions.txt +++ b/gdk4-x11/src/auto/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gdk4-x11/sys/versions.txt b/gdk4-x11/sys/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gdk4-x11/sys/versions.txt +++ b/gdk4-x11/sys/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gdk4/src/auto/versions.txt b/gdk4/src/auto/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gdk4/src/auto/versions.txt +++ b/gdk4/src/auto/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gdk4/sys/versions.txt b/gdk4/sys/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gdk4/sys/versions.txt +++ b/gdk4/sys/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gir-files b/gir-files index 4453f2993956..5c1e490fe50a 160000 --- a/gir-files +++ b/gir-files @@ -1 +1 @@ -Subproject commit 4453f299395633bc6921bfd0d4947905a5e063c7 +Subproject commit 5c1e490fe50a56dae5ee72e39c410aa9d9a0a1ae diff --git a/gsk4/Cargo.toml b/gsk4/Cargo.toml index 6fae91e71f3a..fd8ec1b3fdf7 100644 --- a/gsk4/Cargo.toml +++ b/gsk4/Cargo.toml @@ -26,6 +26,7 @@ v4_10 = ["gsk4-sys/v4_10", "gdk/v4_10", "v4_6"] v4_14 = ["gsk4-sys/v4_14", "gdk/v4_14", "v4_10"] v4_16 = ["gsk4-sys/v4_16", "gdk/v4_16", "v4_14"] v4_18 = ["gsk4-sys/v4_18", "gdk/v4_18", "v4_16"] +v4_20 = ["gsk4-sys/v4_20", "gdk/v4_20", "v4_18"] [dependencies] gsk4-sys.workspace = true diff --git a/gsk4/Gir.toml b/gsk4/Gir.toml index f8928cef8922..e362deedad54 100644 --- a/gsk4/Gir.toml +++ b/gsk4/Gir.toml @@ -38,6 +38,7 @@ generate = [ "Gsk.OutsetShadowNode", "Gsk.PathDirection", "Gsk.PathForeachFlags", + "Gsk.PathIntersection", "Gsk.PathMeasure", "Gsk.PathOperation", "Gsk.RadialGradientNode", @@ -172,6 +173,9 @@ status = "generate" [[object.function]] name = "foreach" manual = true # tries to call from_glib_borrow on an enum + [[object.function]] + name = "foreach_intersection" + manual = true # tries to call from_glib_borrow on an enum [[object]] name = "Gsk.PathBuilder" diff --git a/gsk4/README.md b/gsk4/README.md index eed47001acb0..b99e0259aa76 100644 --- a/gsk4/README.md +++ b/gsk4/README.md @@ -45,6 +45,7 @@ gsk = { git = "https://github.com/gtk-rs/gtk4-rs.git", package = "gsk4" } | --- | ----------- | | `vulkan` | Enable `vulkan` Renderer. Only if GTK is compiled with Vulkan support | | `broadway` | Enable `broadway` Renderer. Only if GTK is compiled with Broadway support | +| `v4_20` | Enable the new APIs part of GTK 4.20 | | `v4_18` | Enable the new APIs part of GTK 4.18 | | `v4_16` | Enable the new APIs part of GTK 4.16 | | `v4_14` | Enable the new APIs part of GTK 4.14 | diff --git a/gsk4/src/auto/enums.rs b/gsk4/src/auto/enums.rs index b6db3d85615b..ecb1bd50b0c9 100644 --- a/gsk4/src/auto/enums.rs +++ b/gsk4/src/auto/enums.rs @@ -982,6 +982,128 @@ impl From for glib::Value { } } +#[cfg(feature = "v4_20")] +#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] +#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] +#[non_exhaustive] +#[doc(alias = "GskPathIntersection")] +pub enum PathIntersection { + #[doc(alias = "GSK_PATH_INTERSECTION_NONE")] + None, + #[doc(alias = "GSK_PATH_INTERSECTION_NORMAL")] + Normal, + #[doc(alias = "GSK_PATH_INTERSECTION_START")] + Start, + #[doc(alias = "GSK_PATH_INTERSECTION_END")] + End, + #[doc(hidden)] + __Unknown(i32), +} + +#[cfg(feature = "v4_20")] +#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] +#[doc(hidden)] +impl IntoGlib for PathIntersection { + type GlibType = ffi::GskPathIntersection; + + #[inline] + fn into_glib(self) -> ffi::GskPathIntersection { + match self { + Self::None => ffi::GSK_PATH_INTERSECTION_NONE, + Self::Normal => ffi::GSK_PATH_INTERSECTION_NORMAL, + Self::Start => ffi::GSK_PATH_INTERSECTION_START, + Self::End => ffi::GSK_PATH_INTERSECTION_END, + Self::__Unknown(value) => value, + } + } +} + +#[cfg(feature = "v4_20")] +#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] +#[doc(hidden)] +impl FromGlib for PathIntersection { + #[inline] + unsafe fn from_glib(value: ffi::GskPathIntersection) -> Self { + skip_assert_initialized!(); + + match value { + ffi::GSK_PATH_INTERSECTION_NONE => Self::None, + ffi::GSK_PATH_INTERSECTION_NORMAL => Self::Normal, + ffi::GSK_PATH_INTERSECTION_START => Self::Start, + ffi::GSK_PATH_INTERSECTION_END => Self::End, + value => Self::__Unknown(value), + } + } +} + +#[cfg(feature = "v4_20")] +#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] +impl StaticType for PathIntersection { + #[inline] + #[doc(alias = "gsk_path_intersection_get_type")] + fn static_type() -> glib::Type { + unsafe { from_glib(ffi::gsk_path_intersection_get_type()) } + } +} + +#[cfg(feature = "v4_20")] +#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] +impl glib::HasParamSpec for PathIntersection { + type ParamSpec = glib::ParamSpecEnum; + type SetValue = Self; + type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder; + + fn param_spec_builder() -> Self::BuilderFn { + Self::ParamSpec::builder_with_default + } +} + +#[cfg(feature = "v4_20")] +#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] +impl glib::value::ValueType for PathIntersection { + type Type = Self; +} + +#[cfg(feature = "v4_20")] +#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] +unsafe impl<'a> glib::value::FromValue<'a> for PathIntersection { + type Checker = glib::value::GenericValueTypeChecker; + + #[inline] + unsafe fn from_value(value: &'a glib::Value) -> Self { + skip_assert_initialized!(); + from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) + } +} + +#[cfg(feature = "v4_20")] +#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] +impl ToValue for PathIntersection { + #[inline] + fn to_value(&self) -> glib::Value { + let mut value = glib::Value::for_value_type::(); + unsafe { + glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); + } + value + } + + #[inline] + fn value_type(&self) -> glib::Type { + Self::static_type() + } +} + +#[cfg(feature = "v4_20")] +#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] +impl From for glib::Value { + #[inline] + fn from(v: PathIntersection) -> Self { + skip_assert_initialized!(); + ToValue::to_value(&v) + } +} + #[cfg(feature = "v4_14")] #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))] #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] diff --git a/gsk4/src/auto/mod.rs b/gsk4/src/auto/mod.rs index 97e096b06976..b288da02812d 100644 --- a/gsk4/src/auto/mod.rs +++ b/gsk4/src/auto/mod.rs @@ -201,6 +201,9 @@ pub use self::enums::MaskMode; #[cfg(feature = "v4_14")] #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))] pub use self::enums::PathDirection; +#[cfg(feature = "v4_20")] +#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] +pub use self::enums::PathIntersection; #[cfg(feature = "v4_14")] #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))] pub use self::enums::PathOperation; diff --git a/gsk4/src/auto/versions.txt b/gsk4/src/auto/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gsk4/src/auto/versions.txt +++ b/gsk4/src/auto/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gsk4/src/path.rs b/gsk4/src/path.rs index 3ef77228797b..4685ed52d89f 100644 --- a/gsk4/src/path.rs +++ b/gsk4/src/path.rs @@ -3,6 +3,8 @@ use glib::translate::*; use crate::{ffi, Path, PathForeachFlags, PathOperation}; +#[cfg(feature = "v4_20")] +use crate::{PathIntersection, PathPoint}; impl Path { #[doc(alias = "gsk_path_foreach")] @@ -37,6 +39,47 @@ impl Path { )) } } + + #[cfg(feature = "v4_20")] + #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] + #[doc(alias = "gsk_path_foreach_intersection")] + pub fn foreach_intersection< + P: FnMut(&Path, &PathPoint, &Path, &PathPoint, PathIntersection) -> bool, + >( + &self, + path2: Option<&Path>, + func: P, + ) -> bool { + let mut func_data: P = func; + unsafe extern "C" fn func_func< + P: FnMut(&Path, &PathPoint, &Path, &PathPoint, PathIntersection) -> bool, + >( + path1: *mut ffi::GskPath, + point1: *const ffi::GskPathPoint, + path2: *mut ffi::GskPath, + point2: *const ffi::GskPathPoint, + kind: ffi::GskPathIntersection, + user_data: glib::ffi::gpointer, + ) -> glib::ffi::gboolean { + let path1 = from_glib_borrow(path1); + let point1 = from_glib_borrow(point1); + let path2 = from_glib_borrow(path2); + let point2 = from_glib_borrow(point2); + let kind = from_glib(kind); + let callback = user_data as *mut P; + (*callback)(&path1, &point1, &path2, &point2, kind).into_glib() + } + let func = Some(func_func::

as _); + let super_callback0: &mut P = &mut func_data; + unsafe { + from_glib(ffi::gsk_path_foreach_intersection( + self.to_glib_none().0, + path2.to_glib_none().0, + func, + super_callback0 as *mut _ as *mut _, + )) + } + } } impl std::str::FromStr for Path { diff --git a/gsk4/sys/Cargo.toml b/gsk4/sys/Cargo.toml index 724762c699fa..c7d980a7ed0d 100644 --- a/gsk4/sys/Cargo.toml +++ b/gsk4/sys/Cargo.toml @@ -54,6 +54,9 @@ version = "4.16" [package.metadata.system-deps.gtk4.v4_18] version = "4.18" +[package.metadata.system-deps.gtk4.v4_20] +version = "4.19" + [package.metadata.docs.rs] rustc-args = ["--cfg", "docsrs"] rustdoc-args = ["--cfg", "docsrs", "--generate-link-to-definition"] @@ -72,6 +75,7 @@ broadway = [] v4_14 = ["v4_10"] v4_16 = ["v4_14"] v4_18 = ["v4_16"] +v4_20 = ["v4_18"] [dependencies] libc = "0.2" diff --git a/gsk4/sys/src/lib.rs b/gsk4/sys/src/lib.rs index abc9efc0118e..7120561667c3 100644 --- a/gsk4/sys/src/lib.rs +++ b/gsk4/sys/src/lib.rs @@ -92,6 +92,12 @@ pub const GSK_PATH_TO_START: GskPathDirection = 1; pub const GSK_PATH_TO_END: GskPathDirection = 2; pub const GSK_PATH_FROM_END: GskPathDirection = 3; +pub type GskPathIntersection = c_int; +pub const GSK_PATH_INTERSECTION_NONE: GskPathIntersection = 0; +pub const GSK_PATH_INTERSECTION_NORMAL: GskPathIntersection = 1; +pub const GSK_PATH_INTERSECTION_START: GskPathIntersection = 2; +pub const GSK_PATH_INTERSECTION_END: GskPathIntersection = 3; + pub type GskPathOperation = c_int; pub const GSK_PATH_MOVE: GskPathOperation = 0; pub const GSK_PATH_CLOSE: GskPathOperation = 1; @@ -206,6 +212,16 @@ pub type GskPathForeachFunc = Option< gpointer, ) -> gboolean, >; +pub type GskPathIntersectionFunc = Option< + unsafe extern "C" fn( + *mut GskPath, + *const GskPathPoint, + *mut GskPath, + *const GskPathPoint, + GskPathIntersection, + gpointer, + ) -> gboolean, +>; // Records #[cfg(feature = "broadway")] @@ -1044,6 +1060,13 @@ extern "C" { #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))] pub fn gsk_path_direction_get_type() -> GType; + //========================================================================= + // GskPathIntersection + //========================================================================= + #[cfg(feature = "v4_20")] + #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] + pub fn gsk_path_intersection_get_type() -> GType; + //========================================================================= // GskPathOperation //========================================================================= @@ -1093,6 +1116,14 @@ extern "C" { func: GskPathForeachFunc, user_data: gpointer, ) -> gboolean; + #[cfg(feature = "v4_20")] + #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))] + pub fn gsk_path_foreach_intersection( + path1: *mut GskPath, + path2: *mut GskPath, + func: GskPathIntersectionFunc, + user_data: gpointer, + ) -> gboolean; #[cfg(feature = "v4_14")] #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))] pub fn gsk_path_get_bounds( diff --git a/gsk4/sys/tests/abi.rs b/gsk4/sys/tests/abi.rs index c39826eb2a9c..1f3b7f12e526 100644 --- a/gsk4/sys/tests/abi.rs +++ b/gsk4/sys/tests/abi.rs @@ -285,6 +285,13 @@ const RUST_LAYOUTS: &[(&str, Layout)] = &[ alignment: align_of::(), }, ), + ( + "GskPathIntersection", + Layout { + size: size_of::(), + alignment: align_of::(), + }, + ), ( "GskPathOperation", Layout { @@ -412,6 +419,10 @@ const RUST_CONSTANTS: &[(&str, &str)] = &[ ("(guint) GSK_PATH_FOREACH_ALLOW_QUAD", "1"), ("(gint) GSK_PATH_FROM_END", "3"), ("(gint) GSK_PATH_FROM_START", "0"), + ("(gint) GSK_PATH_INTERSECTION_END", "3"), + ("(gint) GSK_PATH_INTERSECTION_NONE", "0"), + ("(gint) GSK_PATH_INTERSECTION_NORMAL", "1"), + ("(gint) GSK_PATH_INTERSECTION_START", "2"), ("(gint) GSK_PATH_LINE", "2"), ("(gint) GSK_PATH_MOVE", "0"), ("(gint) GSK_PATH_QUAD", "3"), diff --git a/gsk4/sys/tests/constant.c b/gsk4/sys/tests/constant.c index 798910dddd5e..c0520332e1a2 100644 --- a/gsk4/sys/tests/constant.c +++ b/gsk4/sys/tests/constant.c @@ -96,6 +96,10 @@ int main() { PRINT_CONSTANT((guint) GSK_PATH_FOREACH_ALLOW_QUAD); PRINT_CONSTANT((gint) GSK_PATH_FROM_END); PRINT_CONSTANT((gint) GSK_PATH_FROM_START); + PRINT_CONSTANT((gint) GSK_PATH_INTERSECTION_END); + PRINT_CONSTANT((gint) GSK_PATH_INTERSECTION_NONE); + PRINT_CONSTANT((gint) GSK_PATH_INTERSECTION_NORMAL); + PRINT_CONSTANT((gint) GSK_PATH_INTERSECTION_START); PRINT_CONSTANT((gint) GSK_PATH_LINE); PRINT_CONSTANT((gint) GSK_PATH_MOVE); PRINT_CONSTANT((gint) GSK_PATH_QUAD); diff --git a/gsk4/sys/tests/layout.c b/gsk4/sys/tests/layout.c index d20c12a6e78c..a77d6ab1b8df 100644 --- a/gsk4/sys/tests/layout.c +++ b/gsk4/sys/tests/layout.c @@ -19,6 +19,7 @@ int main() { printf("%s;%zu;%zu\n", "GskParseLocation", sizeof(GskParseLocation), alignof(GskParseLocation)); printf("%s;%zu;%zu\n", "GskPathDirection", sizeof(GskPathDirection), alignof(GskPathDirection)); printf("%s;%zu;%zu\n", "GskPathForeachFlags", sizeof(GskPathForeachFlags), alignof(GskPathForeachFlags)); + printf("%s;%zu;%zu\n", "GskPathIntersection", sizeof(GskPathIntersection), alignof(GskPathIntersection)); printf("%s;%zu;%zu\n", "GskPathOperation", sizeof(GskPathOperation), alignof(GskPathOperation)); printf("%s;%zu;%zu\n", "GskPathPoint", sizeof(GskPathPoint), alignof(GskPathPoint)); printf("%s;%zu;%zu\n", "GskRenderNodeType", sizeof(GskRenderNodeType), alignof(GskRenderNodeType)); diff --git a/gsk4/sys/versions.txt b/gsk4/sys/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gsk4/sys/versions.txt +++ b/gsk4/sys/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gtk4-macros/src/composite_template_derive.rs b/gtk4-macros/src/composite_template_derive.rs index 8a5d69083e9b..2b3fe476caf9 100644 --- a/gtk4-macros/src/composite_template_derive.rs +++ b/gtk4-macros/src/composite_template_derive.rs @@ -188,8 +188,7 @@ pub fn impl_composite_template(input: &syn::DeriveInput) -> Result Err(e) => { return Err(Error::new( Span::call_site(), - format!("{}: derive(CompositeTemplate) requires #[template(...)] to specify 'file', 'resource', or 'string'", - e) + format!("{e}: derive(CompositeTemplate) requires #[template(...)] to specify 'file', 'resource', or 'string'") )); } }; diff --git a/gtk4/src/auto/versions.txt b/gtk4/src/auto/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gtk4/src/auto/versions.txt +++ b/gtk4/src/auto/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a) diff --git a/gtk4/src/bitset_iter.rs b/gtk4/src/bitset_iter.rs index 344e7dd57b8c..2134d71c58f5 100644 --- a/gtk4/src/bitset_iter.rs +++ b/gtk4/src/bitset_iter.rs @@ -161,7 +161,5 @@ mod tests { assert_eq!(iter.previous(), Some(0)); assert_eq!(iter.previous(), None); assert!(!iter.is_valid()); - assert_eq!(iter.next(), Some(1)); - assert!(iter.is_valid()); } } diff --git a/gtk4/sys/versions.txt b/gtk4/sys/versions.txt index 69223872507d..a451446a36bf 100644 --- a/gtk4/sys/versions.txt +++ b/gtk4/sys/versions.txt @@ -1,2 +1,2 @@ Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf) -from gir-files (https://github.com/gtk-rs/gir-files @ 4453f2993956) +from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a)