rust: Fix old compiler compat
This commit is contained in:
@ -371,19 +371,21 @@ pub mod c {
|
|||||||
ui_keyboard: EekGtkKeyboard,
|
ui_keyboard: EekGtkKeyboard,
|
||||||
) {
|
) {
|
||||||
let layout = unsafe { &mut *layout };
|
let layout = unsafe { &mut *layout };
|
||||||
let view = layout.get_current_view();
|
|
||||||
let point = widget_to_layout.forward(
|
let point = widget_to_layout.forward(
|
||||||
Point { x: x_widget, y: y_widget }
|
Point { x: x_widget, y: y_widget }
|
||||||
);
|
);
|
||||||
|
|
||||||
let place = view.find_button_by_position(point);
|
|
||||||
// the immutable reference to `layout` through `view`
|
// the immutable reference to `layout` through `view`
|
||||||
// must be dropped
|
// must be dropped
|
||||||
// before `layout.press_key` borrows it mutably again
|
// before `layout.press_key` borrows it mutably again
|
||||||
let state_place = place.map(|place| {(
|
let state_place = {
|
||||||
place.button.state.clone(),
|
let view = layout.get_current_view();
|
||||||
place.into(),
|
let place = view.find_button_by_position(point);
|
||||||
)});
|
place.map(|place| {(
|
||||||
|
place.button.state.clone(),
|
||||||
|
place.into(),
|
||||||
|
)})
|
||||||
|
};
|
||||||
|
|
||||||
if let Some((mut state, c_place)) = state_place {
|
if let Some((mut state, c_place)) = state_place {
|
||||||
layout.press_key(
|
layout.press_key(
|
||||||
@ -412,19 +414,19 @@ pub mod c {
|
|||||||
let layout = unsafe { &mut *layout };
|
let layout = unsafe { &mut *layout };
|
||||||
let virtual_keyboard = VirtualKeyboard(virtual_keyboard);
|
let virtual_keyboard = VirtualKeyboard(virtual_keyboard);
|
||||||
|
|
||||||
let view = layout.get_current_view();
|
|
||||||
|
|
||||||
let point = widget_to_layout.forward(
|
let point = widget_to_layout.forward(
|
||||||
Point { x: x_widget, y: y_widget }
|
Point { x: x_widget, y: y_widget }
|
||||||
);
|
);
|
||||||
|
|
||||||
let pressed = layout.pressed_keys.clone();
|
let pressed = layout.pressed_keys.clone();
|
||||||
let place = view.find_button_by_position(point);
|
let state_place = {
|
||||||
|
let view = layout.get_current_view();
|
||||||
let state_place = place.map(|place| {(
|
let place = view.find_button_by_position(point);
|
||||||
place.button.state.clone(),
|
place.map(|place| {(
|
||||||
place.into(),
|
place.button.state.clone(),
|
||||||
)});
|
place.into(),
|
||||||
|
)})
|
||||||
|
};
|
||||||
|
|
||||||
if let Some((mut state, c_place)) = state_place {
|
if let Some((mut state, c_place)) = state_place {
|
||||||
let mut found = false;
|
let mut found = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user