Skip to content

Commit

Permalink
Merge pull request #1183 from GuillaumeGomez/backport
Browse files Browse the repository at this point in the history
Backport changes to 0.18
  • Loading branch information
GuillaumeGomez authored Sep 14, 2023
2 parents 854c9b0 + 85857f4 commit 1ce51ac
Show file tree
Hide file tree
Showing 43 changed files with 1,294 additions and 119 deletions.
16 changes: 16 additions & 0 deletions .typos.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
[files]
extend-exclude = ["auto", "sys", "gobject-sys", "*.svg", "glib/Gir.toml"]

[default.extend-words]
# Ignore false-positives
gir = "gir"
mak = "mak"
anid = "anid"
lamda = "lamda"
inout = "inout"
relm = "relm"
ba = "ba"
ue = "ue"
ot = "ot"
siz = "siz"
vai = "vai"
2 changes: 1 addition & 1 deletion cairo/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ authors = ["The gtk-rs Project Developers"]
keywords = ["cairo", "gtk-rs", "gnome", "GUI"]
readme = "README.md"
documentation = "https://gtk-rs.org/gtk-rs-core/stable/latest/docs/cairo/"
version = "0.18.1"
version = "0.18.2"
description = "Rust bindings for the Cairo library"
repository = "https://github.com/gtk-rs/gtk-rs-core"
edition = "2021"
Expand Down
15 changes: 10 additions & 5 deletions cairo/src/pdf.rs
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,8 @@ impl PdfSurface {
self.status()
}

#[cfg(any(all(feature = "pdf", feature = "v1_16"), docsrs))]
#[cfg(all(feature = "pdf", feature = "v1_16"))]
#[cfg_attr(docsrs, doc(cfg(all(feature = "pdf", feature = "v1_16"))))]
#[doc(alias = "cairo_pdf_surface_set_metadata")]
pub fn set_metadata(&self, metadata: PdfMetadata, value: &str) -> Result<(), Error> {
let value = CString::new(value).unwrap();
Expand All @@ -87,7 +88,8 @@ impl PdfSurface {
self.status()
}

#[cfg(any(all(feature = "pdf", feature = "v1_18"), docsrs))]
#[cfg(all(feature = "pdf", feature = "v1_18"))]
#[cfg_attr(docsrs, doc(cfg(all(feature = "pdf", feature = "v1_18"))))]
#[doc(alias = "cairo_pdf_surface_set_custom_metadata")]
pub fn set_custom_metadata(&self, name: &str, value: &str) -> Result<(), Error> {
let name = CString::new(name).unwrap();
Expand All @@ -102,7 +104,8 @@ impl PdfSurface {
self.status()
}

#[cfg(any(all(feature = "pdf", feature = "v1_16"), docsrs))]
#[cfg(all(feature = "pdf", feature = "v1_16"))]
#[cfg_attr(docsrs, doc(cfg(all(feature = "pdf", feature = "v1_16"))))]
#[doc(alias = "cairo_pdf_surface_set_page_label")]
pub fn set_page_label(&self, label: &str) -> Result<(), Error> {
let label = CString::new(label).unwrap();
Expand All @@ -112,7 +115,8 @@ impl PdfSurface {
self.status()
}

#[cfg(any(all(feature = "pdf", feature = "v1_16"), docsrs))]
#[cfg(all(feature = "pdf", feature = "v1_16"))]
#[cfg_attr(docsrs, doc(cfg(all(feature = "pdf", feature = "v1_16"))))]
#[doc(alias = "cairo_pdf_surface_set_thumbnail_size")]
pub fn set_thumbnail_size(&self, width: i32, height: i32) -> Result<(), Error> {
unsafe {
Expand All @@ -125,7 +129,8 @@ impl PdfSurface {
self.status()
}

#[cfg(any(all(feature = "pdf", feature = "v1_16"), docsrs))]
#[cfg(all(feature = "pdf", feature = "v1_16"))]
#[cfg_attr(docsrs, doc(cfg(all(feature = "pdf", feature = "v1_16"))))]
#[doc(alias = "cairo_pdf_surface_add_outline")]
pub fn add_outline(
&self,
Expand Down
6 changes: 4 additions & 2 deletions cairo/src/svg.rs
Original file line number Diff line number Diff line change
Expand Up @@ -95,15 +95,17 @@ impl SvgSurface {
}
}

#[cfg(any(all(feature = "svg", feature = "v1_16"), docsrs))]
#[cfg(all(feature = "svg", feature = "v1_16"))]
#[cfg_attr(docsrs, doc(cfg(all(feature = "svg", feature = "v1_16"))))]
#[doc(alias = "cairo_svg_surface_set_document_unit")]
pub fn set_document_unit(&mut self, unit: SvgUnit) {
unsafe {
ffi::cairo_svg_surface_set_document_unit(self.0.to_raw_none(), unit.into());
}
}

#[cfg(any(all(feature = "svg", feature = "v1_16"), docsrs))]
#[cfg(all(feature = "svg", feature = "v1_16"))]
#[cfg_attr(docsrs, doc(cfg(all(feature = "svg", feature = "v1_16"))))]
#[doc(alias = "cairo_svg_surface_get_document_unit")]
#[doc(alias = "get_document_unit")]
pub fn document_unit(&self) -> SvgUnit {
Expand Down
8 changes: 7 additions & 1 deletion cairo/sys/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ license = "MIT"
authors = ["The gtk-rs Project Developers"]
homepage = "https://gtk-rs.org/"
description = "FFI bindings to libcairo"
version = "0.18.1"
version = "0.18.2"
keywords = ["cairo", "ffi", "gtk-rs", "gnome"]
repository = "https://github.com/gtk-rs/gtk-rs-core"
build = "build.rs"
Expand Down Expand Up @@ -68,3 +68,9 @@ winapi = { version = "0.3.2", features = ["windef"], optional = true }

[build-dependencies]
system-deps = "6"

[package.metadata.docs.rs]
all-features = true
rustc-args = ["--cfg", "docsrs"]
rustdoc-args = ["--cfg", "docsrs"]
features = []
2 changes: 1 addition & 1 deletion gdk-pixbuf/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ authors = ["The gtk-rs Project Developers"]
keywords = ["gdk-pixbuf", "gtk-rs", "gnome"]
readme = "README.md"
documentation = "https://gtk-rs.org/gtk-rs-core/stable/latest/docs/gdk_pixbuf/"
version = "0.18.1"
version = "0.18.2"
description = "Rust bindings for the GdkPixbuf library"
repository = "https://github.com/gtk-rs/gtk-rs-core"
exclude = [
Expand Down
2 changes: 1 addition & 1 deletion gdk-pixbuf/sys/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ keywords = ["gdk-pixbuf", "ffi", "gtk-rs", "gnome"]
license = "MIT"
name = "gdk-pixbuf-sys"
repository = "https://github.com/gtk-rs/gtk-rs-core"
version = "0.18.1"
version = "0.18.2"
edition = "2021"
rust-version = "1.70"

Expand Down
2 changes: 1 addition & 1 deletion gio/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ authors = ["The gtk-rs Project Developers"]
keywords = ["glib", "gio", "gtk-rs", "gnome"]
readme = "README.md"
documentation = "https://gtk-rs.org/gtk-rs-core/stable/latest/docs/gio/"
version = "0.18.1"
version = "0.18.2"
description = "Rust bindings for the Gio library"
repository = "https://github.com/gtk-rs/gtk-rs-core"
exclude = [
Expand Down
2 changes: 2 additions & 0 deletions gio/Gir.toml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ generate = [
"Gio.DBusMethodInfo",
"Gio.DBusNodeInfo",
"Gio.DBusObject",
"Gio.DBusObjectManager",
"Gio.DBusObjectManagerClientFlags",
"Gio.DBusPropertyInfo",
"Gio.DBusSendMessageFlags",
"Gio.DBusServer",
Expand Down
208 changes: 208 additions & 0 deletions gio/src/auto/dbus_object_manager.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,208 @@
// This file was generated by gir (https://github.com/gtk-rs/gir)
// from gir-files (https://github.com/gtk-rs/gir-files)
// DO NOT EDIT

use crate::{DBusInterface, DBusObject};
use glib::{
prelude::*,
signal::{connect_raw, SignalHandlerId},
translate::*,
};
use std::{boxed::Box as Box_, fmt, mem::transmute};

glib::wrapper! {
#[doc(alias = "GDBusObjectManager")]
pub struct DBusObjectManager(Interface<ffi::GDBusObjectManager, ffi::GDBusObjectManagerIface>);

match fn {
type_ => || ffi::g_dbus_object_manager_get_type(),
}
}

impl DBusObjectManager {
pub const NONE: Option<&'static DBusObjectManager> = None;
}

mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::DBusObjectManager>> Sealed for T {}
}

pub trait DBusObjectManagerExt: IsA<DBusObjectManager> + sealed::Sealed + 'static {
#[doc(alias = "g_dbus_object_manager_get_interface")]
#[doc(alias = "get_interface")]
fn interface(&self, object_path: &str, interface_name: &str) -> Option<DBusInterface> {
unsafe {
from_glib_full(ffi::g_dbus_object_manager_get_interface(
self.as_ref().to_glib_none().0,
object_path.to_glib_none().0,
interface_name.to_glib_none().0,
))
}
}

#[doc(alias = "g_dbus_object_manager_get_object")]
#[doc(alias = "get_object")]
fn object(&self, object_path: &str) -> Option<DBusObject> {
unsafe {
from_glib_full(ffi::g_dbus_object_manager_get_object(
self.as_ref().to_glib_none().0,
object_path.to_glib_none().0,
))
}
}

#[doc(alias = "g_dbus_object_manager_get_object_path")]
#[doc(alias = "get_object_path")]
fn object_path(&self) -> glib::GString {
unsafe {
from_glib_none(ffi::g_dbus_object_manager_get_object_path(
self.as_ref().to_glib_none().0,
))
}
}

#[doc(alias = "g_dbus_object_manager_get_objects")]
#[doc(alias = "get_objects")]
fn objects(&self) -> Vec<DBusObject> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::g_dbus_object_manager_get_objects(
self.as_ref().to_glib_none().0,
))
}
}

#[doc(alias = "interface-added")]
fn connect_interface_added<F: Fn(&Self, &DBusObject, &DBusInterface) + 'static>(
&self,
f: F,
) -> SignalHandlerId {
unsafe extern "C" fn interface_added_trampoline<
P: IsA<DBusObjectManager>,
F: Fn(&P, &DBusObject, &DBusInterface) + 'static,
>(
this: *mut ffi::GDBusObjectManager,
object: *mut ffi::GDBusObject,
interface: *mut ffi::GDBusInterface,
f: glib::ffi::gpointer,
) {
let f: &F = &*(f as *const F);
f(
DBusObjectManager::from_glib_borrow(this).unsafe_cast_ref(),
&from_glib_borrow(object),
&from_glib_borrow(interface),
)
}
unsafe {
let f: Box_<F> = Box_::new(f);
connect_raw(
self.as_ptr() as *mut _,
b"interface-added\0".as_ptr() as *const _,
Some(transmute::<_, unsafe extern "C" fn()>(
interface_added_trampoline::<Self, F> as *const (),
)),
Box_::into_raw(f),
)
}
}

#[doc(alias = "interface-removed")]
fn connect_interface_removed<F: Fn(&Self, &DBusObject, &DBusInterface) + 'static>(
&self,
f: F,
) -> SignalHandlerId {
unsafe extern "C" fn interface_removed_trampoline<
P: IsA<DBusObjectManager>,
F: Fn(&P, &DBusObject, &DBusInterface) + 'static,
>(
this: *mut ffi::GDBusObjectManager,
object: *mut ffi::GDBusObject,
interface: *mut ffi::GDBusInterface,
f: glib::ffi::gpointer,
) {
let f: &F = &*(f as *const F);
f(
DBusObjectManager::from_glib_borrow(this).unsafe_cast_ref(),
&from_glib_borrow(object),
&from_glib_borrow(interface),
)
}
unsafe {
let f: Box_<F> = Box_::new(f);
connect_raw(
self.as_ptr() as *mut _,
b"interface-removed\0".as_ptr() as *const _,
Some(transmute::<_, unsafe extern "C" fn()>(
interface_removed_trampoline::<Self, F> as *const (),
)),
Box_::into_raw(f),
)
}
}

#[doc(alias = "object-added")]
fn connect_object_added<F: Fn(&Self, &DBusObject) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn object_added_trampoline<
P: IsA<DBusObjectManager>,
F: Fn(&P, &DBusObject) + 'static,
>(
this: *mut ffi::GDBusObjectManager,
object: *mut ffi::GDBusObject,
f: glib::ffi::gpointer,
) {
let f: &F = &*(f as *const F);
f(
DBusObjectManager::from_glib_borrow(this).unsafe_cast_ref(),
&from_glib_borrow(object),
)
}
unsafe {
let f: Box_<F> = Box_::new(f);
connect_raw(
self.as_ptr() as *mut _,
b"object-added\0".as_ptr() as *const _,
Some(transmute::<_, unsafe extern "C" fn()>(
object_added_trampoline::<Self, F> as *const (),
)),
Box_::into_raw(f),
)
}
}

#[doc(alias = "object-removed")]
fn connect_object_removed<F: Fn(&Self, &DBusObject) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn object_removed_trampoline<
P: IsA<DBusObjectManager>,
F: Fn(&P, &DBusObject) + 'static,
>(
this: *mut ffi::GDBusObjectManager,
object: *mut ffi::GDBusObject,
f: glib::ffi::gpointer,
) {
let f: &F = &*(f as *const F);
f(
DBusObjectManager::from_glib_borrow(this).unsafe_cast_ref(),
&from_glib_borrow(object),
)
}
unsafe {
let f: Box_<F> = Box_::new(f);
connect_raw(
self.as_ptr() as *mut _,
b"object-removed\0".as_ptr() as *const _,
Some(transmute::<_, unsafe extern "C" fn()>(
object_removed_trampoline::<Self, F> as *const (),
)),
Box_::into_raw(f),
)
}
}
}

impl<O: IsA<DBusObjectManager>> DBusObjectManagerExt for O {}

impl fmt::Display for DBusObjectManager {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
f.write_str("DBusObjectManager")
}
}
Loading

0 comments on commit 1ce51ac

Please sign in to comment.