layout: Increase separation between mutable and logic

This commit is contained in:
Dorota Czaplejewicz
2022-10-01 18:29:24 +00:00
parent 14282387f2
commit 973bbaca4b

View File

@ -1070,15 +1070,13 @@ pub struct UIBackend {
mod seat { mod seat {
use super::*; use super::*;
pub fn handle_press_key( fn handle_press_key_cleaner(
layout: &mut Layout, shape: &LayoutData,
submission: &mut Submission, submission: &mut Submission,
time: Timestamp, time: Timestamp,
button_pos: &ButtonPosition, button_pos: &ButtonPosition,
) { ) {
let find = layout.state.active_buttons.get(button_pos); let button = shape.get_button(button_pos).unwrap();
let button = layout.shape.get_button(button_pos).unwrap();
let action = button.action.clone(); let action = button.action.clone();
match action { match action {
Action::Submit { Action::Submit {
@ -1107,7 +1105,19 @@ mod seat {
), ),
_ => {}, _ => {},
}; };
}
pub fn handle_press_key(
layout: &mut Layout,
submission: &mut Submission,
time: Timestamp,
button_pos: &ButtonPosition,
) {
// Send messages
handle_press_key_cleaner(&layout.shape, submission, time, button_pos);
// Update state
let find = layout.state.active_buttons.get(button_pos);
if let KeyState { pressed: PressType::Pressed } = find { if let KeyState { pressed: PressType::Pressed } = find {
log_print!( log_print!(
logging::Level::Bug, logging::Level::Bug,