From 638bd8c84270800a094e9b947c9713bf1dddc51d Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sat, 20 Mar 2021 19:25:35 +0000 Subject: [PATCH] clock: auto-swap active player Signed-off-by: Ian Jackson --- src/clock.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/clock.rs b/src/clock.rs index ce9a065f..6c6539ea 100644 --- a/src/clock.rs +++ b/src/clock.rs @@ -673,7 +673,14 @@ impl PieceTrait for Clock { let state: &mut State = gpc.xdata_mut_exp()?; let was_running = state.implies_running(was_held); - // xxx auto-change active player + if_chain! { + if was_held == None; + if let Some(Current { user }) = state.current; + if now_held == Some(state.users[user].player); + then { + state.current = Some(Current { user: ! user }); + } + } state.do_start_or_stop(piece, was_running, now_held, ig)?; unprepared_update(piece) -- 2.30.2