Skip to content

Commit ae0ce28

Browse files
authored
bump glib/gtk versions (#16)
1 parent 7fd64b6 commit ae0ce28

40 files changed

+175
-116
lines changed

examples/Cargo.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
edition = "2021"
55

66
[dependencies]
7-
glib-macros = "0.19"
7+
glib-macros = "0.20"
88
once_cell = "1.17.1"
99

1010
[dependencies.granite]
@@ -13,11 +13,11 @@ path = "../granite"
1313
features = ["v7_1"]
1414

1515
[dependencies.glib]
16-
version = "0.19"
16+
version = "0.20"
1717

1818
[dependencies.gio]
19-
version = "0.19"
19+
version = "0.20"
2020

2121
[dependencies.gtk]
2222
package = "gtk4"
23-
version = "0.8"
23+
version = "0.9"

examples/src/css_view.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -221,17 +221,19 @@ mod imp {
221221

222222
obj.append(&scrolled);
223223

224-
primary_color_button.connect_color_set(
225-
glib::clone!(@weak obj => move |primary_color_button| {
224+
primary_color_button.connect_color_set(glib::clone!(
225+
#[weak]
226+
obj,
227+
move |primary_color_button| {
226228
granite::widgets_utils_set_color_primary(
227229
&obj.window(),
228230
&mut primary_color_button.rgba(),
229231
gtk::STYLE_PROVIDER_PRIORITY_APPLICATION
230232
.try_into()
231233
.expect("Unable to convert style provider priority"),
232234
);
233-
}),
234-
);
235+
}
236+
));
235237
}
236238
}
237239
impl WidgetImpl for CssView {}

examples/src/date_time_picker_view.rs

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -110,12 +110,20 @@ mod imp {
110110
self.relative_datetime.set(Some(&relative_datetime));
111111

112112
obj.set_selected_datetime();
113-
date_picker.connect_changed(glib::clone!(@weak obj => move |_| {
114-
obj.set_selected_datetime();
115-
}));
116-
time_picker.connect_changed(glib::clone!(@weak obj => move |_| {
117-
obj.set_selected_datetime();
118-
}));
113+
date_picker.connect_changed(glib::clone!(
114+
#[weak]
115+
obj,
116+
move |_| {
117+
obj.set_selected_datetime();
118+
}
119+
));
120+
time_picker.connect_changed(glib::clone!(
121+
#[weak]
122+
obj,
123+
move |_| {
124+
obj.set_selected_datetime();
125+
}
126+
));
119127

120128
obj.attach(&pickers_label, 0, 0, 1, 1);
121129
obj.attach(&date_label, 0, 1, 1, 1);

examples/src/dialogs_view.rs

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,11 @@ mod imp {
6868

6969
obj.imp().toast.set(toast).expect("Unable to set toast");
7070

71-
dialog_button.connect_clicked(clone!(@weak obj => move |_| obj.show_dialog()));
71+
dialog_button.connect_clicked(clone!(
72+
#[weak]
73+
obj,
74+
move |_| obj.show_dialog()
75+
));
7276
}
7377
}
7478
impl WidgetImpl for DialogsView {}
@@ -92,15 +96,19 @@ impl DialogsView {
9296
fn show_dialog(&self) {
9397
let dialog = SampleDialog::new();
9498
dialog.set_transient_for(Some(&self.window()));
95-
dialog.connect_response(
96-
clone!(@strong dialog, @weak self as view => move |_, resp| {
99+
dialog.connect_response(clone!(
100+
#[strong]
101+
dialog,
102+
#[weak(rename_to = view)]
103+
self,
104+
move |_, resp| {
97105
if resp == gtk::ResponseType::Accept {
98106
view.toast().send_notification();
99107
}
100108

101109
dialog.close();
102-
}),
103-
);
110+
}
111+
));
104112

105113
dialog.show();
106114
}

examples/src/main.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -84,11 +84,13 @@ fn build_ui(app: &Application) {
8484

8585
window.present();
8686

87-
granite_settings.connect_prefers_color_scheme_notify(
88-
clone!(@weak gtk_settings => move |granite_settings| {
87+
granite_settings.connect_prefers_color_scheme_notify(clone!(
88+
#[weak]
89+
gtk_settings,
90+
move |granite_settings| {
8991
gtk_settings.set_gtk_application_prefer_dark_theme(
9092
granite_settings.prefers_color_scheme() == granite::SettingsColorScheme::Dark,
9193
);
92-
}),
93-
);
94+
}
95+
));
9496
}

examples/src/settings_view/settings_page.rs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,13 @@ mod imp {
4343

4444
obj.set_child(&content_area);
4545

46-
title_entry.connect_changed(clone!(@weak obj as settings_page => move |title_entry| {
47-
settings_page.set_title(&title_entry.text());
48-
}));
46+
title_entry.connect_changed(clone!(
47+
#[weak(rename_to = settings_page)]
48+
obj,
49+
move |title_entry| {
50+
settings_page.set_title(&title_entry.text());
51+
}
52+
));
4953
}
5054
}
5155
impl WidgetImpl for SettingsPage {}

examples/src/settings_view/simple_settings_page.rs

Lines changed: 29 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -64,27 +64,41 @@ mod imp {
6464

6565
obj.update_status();
6666

67-
description_entry.connect_changed(
68-
clone!(@weak obj as settings_page => move |desc_entry| {
67+
description_entry.connect_changed(clone!(
68+
#[weak(rename_to = settings_page)]
69+
obj,
70+
move |desc_entry| {
6971
settings_page.set_description(&desc_entry.text());
70-
}),
71-
);
72-
73-
icon_entry.connect_changed(clone!(@weak obj as settings_page => move |icon_entry| {
74-
settings_page.set_icon_name(Some(&icon_entry.text()));
75-
}));
76-
77-
title_entry.connect_changed(clone!(@weak obj as settings_page => move |title_entry| {
78-
settings_page.set_title(&title_entry.text());
79-
}));
72+
}
73+
));
74+
75+
icon_entry.connect_changed(clone!(
76+
#[weak(rename_to = settings_page)]
77+
obj,
78+
move |icon_entry| {
79+
settings_page.set_icon_name(Some(&icon_entry.text()));
80+
}
81+
));
82+
83+
title_entry.connect_changed(clone!(
84+
#[weak(rename_to = settings_page)]
85+
obj,
86+
move |title_entry| {
87+
settings_page.set_title(&title_entry.text());
88+
}
89+
));
8090

8191
obj.status_switch()
8292
.expect("Couldn't get status switch")
8393
.connect_notify_local(
8494
Some("active"),
85-
clone!(@weak obj as settings_page => move |_, _| {
86-
settings_page.update_status();
87-
}),
95+
clone!(
96+
#[weak(rename_to = settings_page)]
97+
obj,
98+
move |_, _| {
99+
settings_page.update_status();
100+
}
101+
),
88102
);
89103
}
90104
}

examples/src/welcome_view.rs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -153,10 +153,14 @@ mod test {
153153
let main_loop = glib::MainLoop::new(None, false);
154154
glib::timeout_add(
155155
std::time::Duration::from_millis(ms as u64),
156-
glib::clone!(@strong main_loop => move || {
157-
main_loop.quit();
158-
glib::ControlFlow::Break
159-
}),
156+
glib::clone!(
157+
#[strong]
158+
main_loop,
159+
move || {
160+
main_loop.quit();
161+
glib::ControlFlow::Break
162+
}
163+
),
160164
);
161165

162166
main_loop.run();

0 commit comments

Comments
 (0)