Merge branch 'glib-2-58' into 'main'

Forward to glib-2-58

See merge request World/Phosh/squeekboard!621
This commit is contained in:
Marge Bot
2024-03-11 15:33:05 +00:00
8 changed files with 5 additions and 36 deletions

View File

@ -82,7 +82,7 @@ build_reference:
script:
- apt-get -y install cargo
- cd _build
- ../cargo.sh doc --no-deps --document-private-items --features 'glib_v0_14,zbus_v1_5,clap_v4'
- ../cargo.sh doc --no-deps --document-private-items --features 'zbus_v1_5,clap_v4'
except:
variables:
- $PKG_ONLY == "1"

View File

@ -22,7 +22,6 @@ name = "find_orphan_layouts"
path = "@path@/examples/find_orphan_layouts.rs"
[features]
glib_v0_14 = []
zbus_v1_5 = []
clap_v4 = []

View File

@ -98,7 +98,7 @@ cargo_toml_base = configure_file(
cargo_patch = []
cargo_build_flags += ['--features', 'glib_v0_14,zbus_v1_5,clap_v4']
cargo_build_flags += ['--features', 'zbus_v1_5,clap_v4']
cargo_deps = files('Cargo.deps')
cargo_lock = files('Cargo.lock')

View File

@ -1,4 +1,3 @@
#[macro_use]
extern crate clap;
extern crate rs;

View File

@ -177,7 +177,7 @@ fn render_button_at_position(
pressed: keyboard::PressType,
locked: LockedStyle,
) {
cr.save();
cr.save().unwrap();
cr.translate(position.x, position.y);
cr.rectangle(
0.0, 0.0,
@ -220,7 +220,7 @@ fn render_button_at_position(
}
);
cr.restore();
cr.restore().unwrap();
}
fn with_button_context<R, F: FnOnce(&c::GtkStyleContext) -> R>(

View File

@ -166,8 +166,6 @@ mod c {
ControlFlow::Continue
},
);
#[cfg(not(feature = "glib_v0_14"))]
ctx.release();
}
/// A single iteration of the UI loop.

View File

@ -108,10 +108,7 @@ mod variants {
fn get_settings(schema_name: &str) -> Option<gio::Settings> {
let mut error_handler = logging::Print{};
#[cfg(feature = "glib_v0_14")]
let ss = gio::SettingsSchemaSource::default();
#[cfg(not(feature = "glib_v0_14"))]
let ss = gio::SettingsSchemaSource::get_default();
ss.or_warn(
&mut error_handler,
@ -134,17 +131,14 @@ fn set_layout(kind: &str, name: &str) {
if let Some(settings) = settings {
let kind = String::from(kind);
let name = String::from(name);
#[cfg(feature = "glib_v0_14")]
let inputs = settings.value("sources");
#[cfg(not(feature = "glib_v0_14"))]
let inputs = settings.get_value("sources").unwrap();
let current = (kind.clone(), name.clone());
let inputs = variants::get_tuples(inputs).into_iter()
.filter(|t| t != &current);
let inputs = vec![(kind, name)].into_iter()
.chain(inputs).collect();
settings.set_value(
let _ = settings.set_value(
"sources",
&variants::ArrayPairString(inputs).to_variant(),
);
@ -246,10 +240,7 @@ pub fn show(
let settings = get_settings("org.gnome.desktop.input-sources");
let inputs = settings
.map(|settings| {
#[cfg(feature = "glib_v0_14")]
let inputs = settings.value("sources");
#[cfg(not(feature = "glib_v0_14"))]
let inputs = settings.get_value("sources").unwrap();
variants::get_tuples(inputs)
})
@ -282,16 +273,10 @@ pub fn show(
});
let model: gio::Menu = {
#[cfg(feature = "glib_v0_14")]
{
let builder = gtk::Builder::from_resource("/sm/puri/squeekboard/popover.ui");
builder.object("app-menu").unwrap()
}
#[cfg(not(feature = "glib_v0_14"))]
{
let builder = gtk::Builder::new_from_resource("/sm/puri/squeekboard/popover.ui");
builder.get_object("app-menu").unwrap()
}
};
for (tr, l) in human_names.iter().rev() {
@ -300,10 +285,7 @@ pub fn show(
model.prepend_item (&item);
}
#[cfg(feature = "glib_v0_14")]
let menu = gtk::Popover::from_model(Some(&window), &model);
#[cfg(not(feature = "glib_v0_14"))]
let menu = gtk::Popover::new_from_model(Some(&window), &model);
menu.set_pointing_to(&gtk::Rectangle::new (
position.x.ceil() as i32,

View File

@ -41,10 +41,7 @@ pub mod c {
fn squeek_load_style() -> *const gtk_sys::GtkCssProvider {
unsafe { gtk::set_initialized() };
#[cfg(feature = "glib_v0_14")]
let theme = gtk::Settings::default();
#[cfg(not(feature = "glib_v0_14"))]
let theme = gtk::Settings::get_default();
let theme = theme.map(|settings| get_theme_name(&settings));
@ -98,22 +95,16 @@ fn get_theme_name(settings: &gtk::Settings) -> GtkTheme {
e
}).ok();
#[cfg(feature = "glib_v0_14")]
let prop = |s: &gtk::Settings, name| {
if s.has_property(name, None) {
return Ok(s.property_value(name));
}
return Err("Key not found in settings");
};
#[cfg(not(feature = "glib_v0_14"))]
let prop = |s: &gtk::Settings, name| s.get_property(name);
#[cfg(feature = "glib_v0_14")]
fn check<T, E: std::fmt::Display>(v: Result<T, E>) -> Option<T> {
v.or_print(logging::Problem::Surprise, "Key not of expected type")
}
#[cfg(not(feature = "glib_v0_14"))]
fn check<T>(v: Option<T>) -> Option<T> { v }
match env_theme {
Some(theme) => theme,