Bump gtk4-rs and replace more deprecated APIs

This commit is contained in:
Bilal Elmoussaoui 2023-01-03 11:01:32 +01:00
parent 898222a7a5
commit cb2b5826e5
12 changed files with 71 additions and 67 deletions

50
Cargo.lock generated
View file

@ -1110,9 +1110,9 @@ dependencies = [
[[package]]
name = "gdk4"
version = "0.5.4"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "272db1bbb9b152ea1fea946f9d464085c86cfe14cafba450d7defa433caff8ec"
checksum = "bb2181330ebf9d091f8ea7fed6877f7adc92114128592e1fdaeb1da28e0d01e9"
dependencies = [
"bitflags",
"cairo-rs",
@ -1126,9 +1126,9 @@ dependencies = [
[[package]]
name = "gdk4-sys"
version = "0.5.4"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "45b571f36b889ab529b2e173248dafe83d75c703f5685b9845e490c7994ae309"
checksum = "de55cb49432901fe2b3534177fa06844665b9b0911d85d8601a8d8b88b7791db"
dependencies = [
"cairo-sys-rs",
"gdk-pixbuf-sys",
@ -1143,9 +1143,9 @@ dependencies = [
[[package]]
name = "gdk4-wayland"
version = "0.5.4"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dee24d5a659ecca2170642c0db211446e7fdbc7ebcf1e63be99405df6f541c15"
checksum = "b9998dedfee371c33356809f24790a1593c4751367ace7f66256dd759173701a"
dependencies = [
"gdk4",
"gdk4-wayland-sys",
@ -1156,9 +1156,9 @@ dependencies = [
[[package]]
name = "gdk4-wayland-sys"
version = "0.5.4"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dbb03e044a5f6ae9270823a8ef89739808845120d47b2be83de785e044c83386"
checksum = "7017f59dc8c3a0c25756d617be038540642be64b9f229a531507b8f8e3e645ea"
dependencies = [
"glib-sys",
"libc",
@ -1375,9 +1375,9 @@ dependencies = [
[[package]]
name = "gsk4"
version = "0.5.4"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4053293b79099bdfecd9ab0d811d118a0eafce613dfe0b26075419d955f1f652"
checksum = "591239f5c52ca803b222124ac9c47f230cd180cee9b114c4d672e4a94b74f491"
dependencies = [
"bitflags",
"cairo-rs",
@ -1391,9 +1391,9 @@ dependencies = [
[[package]]
name = "gsk4-sys"
version = "0.5.4"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "08e0642edffdb35028d7d67b830678da98844216b6442e11eee52c91ad2a6dc2"
checksum = "195a63f0be42529f98c3eb3bae0decfd0428ba2cc683b3e20ced88f340904ec5"
dependencies = [
"cairo-sys-rs",
"gdk4-sys",
@ -1643,9 +1643,9 @@ checksum = "da5bf7748fd4cd0b2490df8debcc911809dbcbee4ece9531b96c29a9c729de5a"
[[package]]
name = "gtk4"
version = "0.5.4"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8954da3659ff1cb35aa95110021b33fadcd8e306e8fe41f32146ffa009665a79"
checksum = "fd89dba65def483a233dc4fdd3f3dab01576e3d83f80f6c9303ebe421661855e"
dependencies = [
"bitflags",
"cairo-rs",
@ -1666,9 +1666,9 @@ dependencies = [
[[package]]
name = "gtk4-macros"
version = "0.5.4"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "58138cd3c595e04f82df050390aa7d2bd093795ce569e5f1d49eb496ef67fe7b"
checksum = "832687a415d9d8bc11fe9c17dda1bf13ee262c41b995dd4df1d1cce33cead405"
dependencies = [
"anyhow",
"proc-macro-crate",
@ -1680,9 +1680,9 @@ dependencies = [
[[package]]
name = "gtk4-sys"
version = "0.5.4"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ef29e09e055b2f2550eb1882caa6961a1ae3c971a70bcb25cb9d5ab6cbd63821"
checksum = "e370564e3fdacff7cffc99f7366b6a4689feb44e819d3ccee598a9a215b71605"
dependencies = [
"cairo-sys-rs",
"gdk-pixbuf-sys",
@ -2265,9 +2265,9 @@ dependencies = [
[[package]]
name = "nom"
version = "7.1.1"
version = "7.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36"
checksum = "e5507769c4919c998e69e49c839d9dc6e693ede4cc4290d6ad8b41d4f09c548c"
dependencies = [
"memchr",
"minimal-lexical",
@ -2411,9 +2411,9 @@ dependencies = [
[[package]]
name = "once_cell"
version = "1.16.0"
version = "1.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860"
checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66"
[[package]]
name = "oo7"
@ -2514,9 +2514,9 @@ dependencies = [
[[package]]
name = "ordered-stream"
version = "0.1.2"
version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "01ca8c99d73c6e92ac1358f9f692c22c0bfd9c4701fa086f5d365c0d4ea818ea"
checksum = "d4eb9ba3f3e42dbdd3b7b122de5ca169c81e93d561eb900da3a8c99bcfcf381a"
dependencies = [
"futures-core",
"pin-project-lite",
@ -4042,7 +4042,7 @@ dependencies = [
"hex",
"nix 0.25.1",
"once_cell",
"ordered-stream 0.1.2",
"ordered-stream 0.1.3",
"rand",
"serde",
"serde_repr",

View file

@ -106,7 +106,7 @@ mod imp {
app.set_can_be_locked(state);
}));
preferences.set_transient_for(Some(&window));
preferences.show();
preferences.present();
}).build();
// About
@ -147,7 +147,7 @@ mod imp {
window.providers().refilter();
}));
providers.set_transient_for(Some(&window));
providers.show();
providers.present();
})
.build();

View file

@ -290,7 +290,7 @@ impl AccountAddDialog {
fn set_provider(&self, provider: Option<Provider>) {
let imp = self.imp();
if let Some(provider) = provider {
imp.more_list.show();
imp.more_list.set_visible(true);
imp.provider_entry.set_text(&provider.name());
imp.period_label.set_text(&provider.period().to_string());
@ -306,12 +306,12 @@ impl AccountAddDialog {
match provider.method() {
OTPMethod::TOTP | OTPMethod::Steam => {
imp.counter_row.hide();
imp.period_row.show();
imp.counter_row.set_visible(false);
imp.period_row.set_visible(true);
}
OTPMethod::HOTP => {
imp.counter_row.show();
imp.period_row.hide();
imp.counter_row.set_visible(true);
imp.period_row.set_visible(false);
}
};

View file

@ -180,7 +180,7 @@ impl AccountDetailsPage {
}),
);
dialog.show();
dialog.present();
}
pub fn set_account(&self, account: &Account) {
@ -211,25 +211,25 @@ impl AccountDetailsPage {
imp.method_label
.set_text(&provider.method().to_locale_string());
if provider.method() == OTPMethod::HOTP {
imp.counter_row.show();
imp.period_row.hide();
imp.counter_row.set_visible(true);
imp.period_row.set_visible(false);
} else {
imp.counter_row.hide();
imp.period_row.show();
imp.counter_row.set_visible(false);
imp.period_row.set_visible(true);
imp.period_label.set_text(&provider.period().to_string());
}
imp.digits_label.set_text(&provider.digits().to_string());
if let Some(ref help) = provider.help_url() {
imp.help_row.set_uri(help);
imp.help_row.show();
imp.help_row.set_visible(true);
} else {
imp.help_row.hide();
imp.help_row.set_visible(false);
}
if let Some(ref website) = provider.website() {
imp.website_row.set_uri(website);
imp.website_row.show();
imp.website_row.set_visible(true);
} else {
imp.website_row.hide();
imp.website_row.set_visible(false);
}
imp.selected_provider.replace(Some(provider));
}

View file

@ -156,8 +156,7 @@ impl CameraPaintable {
{
gst::ElementFactory::make("glsinkbin")
.property("sink", &sink)
.build()
.unwrap()
.build()?
} else {
let bin = gst::Bin::default();
let convert = gst::ElementFactory::make_with_name("videoconvert", None)?;

View file

@ -30,7 +30,7 @@ mod imp {
obj.set_spacing(6);
self.checkmark.set_icon_name(Some("object-select-symbolic"));
self.checkmark.hide();
self.checkmark.set_visible(false);
obj.append(&self.label);
obj.append(&self.checkmark);

View file

@ -50,13 +50,13 @@ impl ErrorRevealer {
pub fn popup(&self, text: &str) {
let imp = self.imp();
imp.label.set_text(text);
self.show();
self.set_visible(true);
imp.revealer.set_reveal_child(true);
glib::timeout_add_seconds_local(
2,
glib::clone!(@weak self as error_revealer => @default-return glib::Continue(false), move || {
error_revealer.imp().revealer.set_reveal_child(false);
error_revealer.hide();
error_revealer.set_visible(false);
glib::Continue(false)
}),
);

View file

@ -291,7 +291,7 @@ impl PreferencesWindow {
clone!(@weak self as win, @weak model => move |_, _| {
let ctx = glib::MainContext::default();
ctx.spawn_local(clone!(@weak win, @weak model => async move {
if let Ok(Some(file)) = win.select_file(filters, Operation::Backup).await {
if let Ok(file) = win.select_file(filters, Operation::Backup).await {
let key = T::ENCRYPTABLE.then(|| {
win.encyption_key(Operation::Backup, &T::identifier())
}).flatten();
@ -455,7 +455,7 @@ impl PreferencesWindow {
clone!(@weak self as win => move |_, _| {
let ctx = glib::MainContext::default();
ctx.spawn_local(clone!(@weak win => async move {
if let Ok(Some(file)) = win.select_file(filters, Operation::Restore).await {
if let Ok(file) = win.select_file(filters, Operation::Restore).await {
let key = T::ENCRYPTABLE.then(|| {
win.encyption_key(Operation::Restore, &T::identifier())
}).flatten();
@ -505,7 +505,7 @@ impl PreferencesWindow {
&self,
filters: &'static [&str],
operation: Operation,
) -> Result<Option<gio::File>, glib::Error> {
) -> Result<gio::File, glib::Error> {
let filters_model = gio::ListStore::new(gtk::FileFilter::static_type());
filters.iter().for_each(|f| {
let filter = gtk::FileFilter::new();
@ -521,7 +521,7 @@ impl PreferencesWindow {
.filters(&filters_model)
.title(&gettext("Backup"))
.build();
dialog.save_future(Some(self), gio::File::NONE, None).await
dialog.save_future(Some(self)).await
}
Operation::Restore => {
let dialog = gtk::FileDialog::builder()
@ -529,7 +529,7 @@ impl PreferencesWindow {
.filters(&filters_model)
.title(&gettext("Restore"))
.build();
dialog.open_future(Some(self), gio::File::NONE).await
dialog.open_future(Some(self)).await
}
}
}

View file

@ -167,7 +167,7 @@ impl ProviderPage {
pub fn set_provider(&self, provider: Option<Provider>) {
let imp = self.imp();
if let Some(provider) = provider {
imp.delete_button.show();
imp.delete_button.set_visible(true);
imp.name_entry.set_text(&provider.name());
imp.period_spinbutton.set_value(provider.period() as f64);
@ -202,7 +202,7 @@ impl ProviderPage {
imp.selected_provider.replace(Some(provider));
} else {
imp.name_entry.set_text("");
imp.delete_button.hide();
imp.delete_button.set_visible(false);
imp.period_spinbutton
.set_value(otp::TOTP_DEFAULT_PERIOD as f64);
imp.provider_website_entry.set_text("");
@ -315,10 +315,7 @@ impl ProviderPage {
.filters(&model)
.build();
if let Ok(Some(file)) = file_chooser
.open_future(Some(&parent), gio::File::NONE)
.await
{
if let Ok(file) = file_chooser.open_future(Some(&parent)).await {
self.set_image(file);
};
}
@ -377,22 +374,22 @@ impl ProviderPage {
let selected = OTPMethod::from(combo_row.selected());
match selected {
OTPMethod::TOTP => {
imp.default_counter_row.hide();
imp.period_row.show();
imp.default_counter_row.set_visible(false);
imp.period_row.set_visible(true);
imp.digits_spinbutton.set_value(otp::DEFAULT_DIGITS as f64);
imp.period_spinbutton
.set_value(otp::TOTP_DEFAULT_PERIOD as f64);
}
OTPMethod::HOTP => {
imp.default_counter_row.show();
imp.period_row.hide();
imp.default_counter_row.set_visible(true);
imp.period_row.set_visible(false);
imp.default_counter_spinbutton
.set_value(otp::HOTP_DEFAULT_COUNTER as f64);
imp.digits_spinbutton.set_value(otp::DEFAULT_DIGITS as f64);
}
OTPMethod::Steam => {
imp.default_counter_row.hide();
imp.period_row.show();
imp.default_counter_row.set_visible(false);
imp.period_row.set_visible(true);
imp.digits_spinbutton
.set_value(otp::STEAM_DEFAULT_DIGITS as f64);
imp.period_spinbutton

View file

@ -162,7 +162,7 @@ impl ProviderRow {
imp.image.set_provider(Some(&provider));
if provider.method() == OTPMethod::HOTP {
imp.progress_icon.hide();
imp.progress_icon.set_visible(false);
} else {
// Update the progress bar whnever the remaining-time is updated
self.tick_progressbar();

View file

@ -1,5 +1,6 @@
use adw::prelude::*;
use gtk::{
gio,
glib::{self, clone},
subclass::prelude::*,
};
@ -54,8 +55,15 @@ mod imp {
let obj = self.obj();
let gesture = gtk::GestureClick::new();
gesture.connect_pressed(clone!(@weak obj as row => move |_,_,_,_| {
if let Some(ref uri) = *row.imp().uri.borrow() {
gtk::show_uri(gtk::Window::NONE, uri, 0);
if let Some(uri) = row.imp().uri.borrow().clone() {
let ctx = glib::MainContext::default();
ctx.spawn_local(async move {
let file = gio::File::for_uri(&uri);
let launcher = gtk::FileLauncher::new(Some(&file));
if let Err(err) = launcher.launch_future(gtk::Window::NONE).await {
tracing::error!("Failed to open URI {err}");
}
});
};
}));

View file

@ -218,7 +218,7 @@ impl Window {
dialog.connect_added(clone!(@weak self as win => move |_| {
win.providers().refilter();
}));
dialog.show();
dialog.present();
}
pub fn providers(&self) -> ProvidersList {