File tree Expand file tree Collapse file tree 1 file changed +4
-3
lines changed Expand file tree Collapse file tree 1 file changed +4
-3
lines changed Original file line number Diff line number Diff line change 1
1
use super :: keyboard:: Keyboard ;
2
2
use cascade:: cascade;
3
+ use glib:: clone;
3
4
use glib:: subclass;
4
5
use glib:: subclass:: prelude:: * ;
5
6
use gtk:: prelude:: * ;
@@ -157,12 +158,12 @@ impl Picker {
157
158
}
158
159
159
160
fn connect_signals ( & self ) {
161
+ let picker = self ;
160
162
for group in self . inner ( ) . groups . iter ( ) {
161
163
for key in group. iter_keys ( ) {
162
164
let button = & key. gtk ;
163
- let picker = self . clone ( ) ;
164
165
let name = key. name . to_string ( ) ;
165
- button. connect_clicked ( move |_| {
166
+ button. connect_clicked ( clone ! ( @weak picker => @ default -panic , move |_| {
166
167
let kb = match picker. inner( ) . keyboard. borrow( ) . clone( ) {
167
168
Some ( kb) => kb,
168
169
None => {
@@ -203,7 +204,7 @@ impl Picker {
203
204
}
204
205
}
205
206
}
206
- } ) ;
207
+ } ) ) ;
207
208
}
208
209
}
209
210
}
You can’t perform that action at this time.
0 commit comments