NZD56PVBVHARAQD7JNXE2F3DRT4S2NNRDHVVJTKTQK474LDMVIXQC L6KSEFQIWICZJ6HJUFKLZQDEH6X2QMFM4Z7ZZUGMLDMFF7EHRXWAC KWTBNTO3QUUE2YADF6SYW6G6ZOKYEWRJQKIWDGZXR33S3YNDVIZQC KQABQCCZCM23QWW43LZD5QBNFOXWLGFNCPPIMNMNFMZSNPSTFVEAC RDRBP7AL74NBFNZSQFTU7VQCMWTGJO5RZWGPCWVVS5WRTXJ77DFAC UR4J677RWA3OFG6HQTD46BUUE5YFPSBEFCJAEM5OMT4V5A7SBNNQC JZXYSIYDPBWQZCAMGDZ5BFMN6SU73EVVDIYEGTDJN6DVOSBNHN4QC WT3GA27PQ2AOAIGK65O3Q4DMX4AZDVNULBLRL6GF4QW6QCASUEAAC (Some(Status::UntrackedFile {ix,path,diff_selected: false,}),task,)
let (selection, selection_task) = untracked_file_selection(repo_state,status_nav,ix,files,files_diffs,VertDir::Down,);(Some(selection), Task::batch([scroll_task, selection_task]))
(Some(Status::ChangedFile {ix,path,diff_selected: false,}),task,)
let (selection, selection_task) = changed_file_selection(repo_state,status_nav,ix,files,files_diffs,VertDir::Down,);(Some(selection), Task::batch([scroll_task, selection_task]))}Select::LogChange {ix,hash: _,message: _,} => {let (selection, task) =log_selection(status_nav, logs, repo_state, ix, VertDir::Down);(Some(selection), task)
let file = LogChangeFileSelection {ix: file_ix,path,diff_selected: false,};(Some(Status::LogChange {ix: change_ix,hash,message,file: Some(file),}),task,)
let (file, selection_task) =log_file_selection(logs, log_entry, hash, file_ix);let selection = Some(Status::LogChange {ix: log_ix,hash,message,file: Some(file),});(selection, Task::batch([selection_task, scroll_task]))
let nav_task = match (logs.diffs.get(&id_hash), logs.diffs_nav.as_ref()) {(Some(diff), Some((nav_id_hash, _nav))) if *nav_id_hash != id_hash => {let contents_count = diff::contents_count(&diff.file);// Init log change diff navlet (nav, tasks) =iced_nav_scrollable::init(contents_count, HashSet::new());logs.diffs_nav = Some((id_hash, nav));tasks.map(move |msg| {crate::Msg::View(app::Msg::LogChangeFileDiff {id_hash,msg: diff::Msg::DiffNav(msg),
let nav_task = match logs.diffs.get(&id_hash) {Some(diff) => {let needs_new_nav = logs.diffs_nav.is_none()|| logs.diffs_nav.as_ref().map(|(nav_id_hash, _nav)| *nav_id_hash != id_hash).unwrap_or_default();if needs_new_nav {let contents_count = diff::contents_count(&diff.file);// Init log change diff navlet (nav, tasks) =iced_nav_scrollable::init(contents_count, HashSet::new());logs.diffs_nav = Some((id_hash, nav));tasks.map(move |msg| {crate::Msg::View(app::Msg::LogChangeFileDiff {id_hash,msg: diff::Msg::DiffNav(msg),})