allow to set record description
[?]
Aug 14, 2025, 11:52 AM
AZ5D2LQUSYVWVEP7ISFDSZTMZ65UEHZATILMDQ4TYLCKJH4Q3TIACDependencies
- [2]
UB2ITZJSrefresh changed files on FS changes - [3]
W7IUT3ZVstart recording impl - [4]
YBJRDOTCmake all repo actions async - [5]
A5YBC77Vrecord! - [6]
BJXUYQ2Yshow untracked file contents in read-only text editor - [7]
V55EAIWQadd src file LRU cache - [8]
ZVI4AWERwoot contents_diff - [9]
ONRCENKTrm unnecessary state from repo's internal state - [10]
BFN2VHZSrefactor file stuff into sub-mod - [11]
23SFYK4Qbig view refactor into a new crate - [12]
OPXFZKEBview tests setup - [13]
MYGIBRRHwip custom theme - [14]
3BK22XE5add a test for hover btn and more refactors - [15]
VCNKFNUFapp init test - [16]
ACDXXAX2refactor main's updates into smaller fns - [17]
FVA36HBVrestart repo manager task if it crashes - [18]
I56UGW7Umake record test, fix log update - [19]
X6AK4QPXfinish recording test - [20]
ESMM3FELtest selection reindexing - [21]
SWDPAGF6test channel name - [22]
KQ3P3QRLupdate comments - [23]
FL2ULDJNtest record - [24]
2LWMGRUMtest diff - [25]
I2AG42PAnew cols layout - [26]
SASAN2XCuse nav-scrollable - [27]
3TLPJ57Balt scroll via context and couple fixes - [28]
WXQBBQ2Aupdate nightly - [29]
UR4J677Rnav for log changes and refactors - [30]
A6Z4O6RCactions menu - [31]
JZXYSIYDchannel selection! - [32]
OJPGHVC3entire log! - [33]
3XRG4BB6rewritten nav-scrollable! - [34]
WAOGSCOJvery nice refactor, wip adding channels logs - [35]
WH57EHNMupdate tests - [36]
EJPSD5XOshared allowed actions conditions between update and view - [37]
YK3MOJJLchonky refactor, wip other channels logs & diffs - [38]
PSKE5G36view description of change - [39]
7WCB5YQJrefactor msgs and modules - [40]
KM5PSZ4Awatch repo once loaded - [41]
KEPKF3WOunify diffs handling, simplify view - [42]
YYKXNBFLtest: add untracked file - [43]
KWTBNTO3diffs selection and scrolling - [44]
XIASAP3Gclippy - [45]
4WO3ZJM2show untracked files' contents - [46]
7SSBM4UQview: refactor repo view - [47]
5ZRDYL6Kfork channel, fix recording esc key - [48]
ZIUHKVJKupdate tests - [49]
PTWZYQFRuse nav-scrollable for repo status - [50]
JE44NYHMdisplay log files diffs - [51]
UF5NJKAStest load repo - [52]
6YZAVBWUInitial commit - [53]
DXAYDIMQupdate to latest pijul - [54]
AMPZ2BXKshow changed files diffs (only Edit atm) - [55]
7BLZN73Oadd a key to refresh repo - [56]
NWJD6VM6mv libflowers libflorescence - [57]
WT3GA27Padd cursor with selection - [58]
HC7ROIBCmove main diffs state out of cursor - [59]
TSFQFCB2test got repo change - [60]
D7A7MSIHallow to defer or abandon record, add buttons - [61]
YKHE3XMWrefactor diffs handling - [62]
S2NVIFXRallow to enter record msg - [63]
OC6DLIZ3test record when nothing to record - [*]
SWWE2R6Mdisplay basic repo stuff - [*]
WGID4LS4absolutely slayed testing with iced task
Change contents
- replacement in libflorescence/src/testing.rs at line 85
repo::record(&internal, "Initialized".to_string(), skey);repo::record(&internal, "Initialized".to_string(), None, skey); - edit in libflorescence/src/repo.rs at line 61
desc: Option<String>, - replacement in libflorescence/src/repo.rs at line 282
MsgIn::Record { msg, sk } => {MsgIn::Record { msg, desc, sk } => { - replacement in libflorescence/src/repo.rs at line 285
record(&internal_state, msg, sk);record(&internal_state, msg, desc, sk); - replacement in libflorescence/src/repo.rs at line 500
pub(crate) fn record(state: &InternalState, message: String, sk: Arc<SKey>) {pub(crate) fn record(state: &InternalState,msg: String,desc: Option<String>,sk: Arc<SKey>,) { - replacement in libflorescence/src/repo.rs at line 533
message,message: msg, - replacement in libflorescence/src/repo.rs at line 535
// TODO: allow to set descriptiondescription: None,description: desc, - replacement in libflorescence/src/repo/test.rs at line 103
std::fs::write(repo_path.join(DEFAULT_IGNORE_FILE), "some content").unwrap();let file_path = DEFAULT_IGNORE_FILE;let full_file_path = repo_path.join(DEFAULT_IGNORE_FILE);std::fs::write(&full_file_path, "some content").unwrap(); - replacement in libflorescence/src/repo/test.rs at line 109
repo::record(&internal, "some message".to_string(), skey);let msg = "some message";repo::record(&internal, msg.to_string(), None, skey); - edit in libflorescence/src/repo/test.rs at line 114
let repo::LogEntry {hash: _,message,description,file_paths,} = log.first().unwrap();assert_eq!(message, msg);assert_eq!(description, &None);assert_eq!(file_paths.len(), 1);assert_eq!(file_paths.first().unwrap(), file_path); - replacement in inflorescence_view/src/view.rs at line 8
use inflorescence_model::model::{Log, ReadyState, RecordMsg, SubState};use inflorescence_model::model::{Log, ReadyState, RecordChanges, SubState}; - edit in inflorescence_view/src/view.rs at line 31
EditRecordDesc(text_editor::Action), - replacement in inflorescence_view/src/view.rs at line 36
pub fn view<'a, F>(pub fn main<'a, F>( - replacement in inflorescence_view/src/view.rs at line 98
record_msg,record_changes: record_msg, - replacement in inflorescence_view/src/view.rs at line 172
if let Some(RecordMsg::Typing(msg_content)) = record_msg.as_ref() {if let Some(RecordChanges::Typing { msg, desc }) = record_msg.as_ref() { - replacement in inflorescence_view/src/view.rs at line 174
el(text_editor(msg_content).placeholder("Type something here...").on_action(Msg::EditRecordMsg)),el(row([el(column([view_header("Short message:"),el(text_editor(msg).placeholder("Type short message here...").on_action(Msg::EditRecordMsg)),])),view_header("Longer description (optional):"),el(column([el(text_editor(desc).placeholder("Type longer description here...").on_action(Msg::EditRecordDesc))])),el(column([el(row([ - replacement in inflorescence_view/src/view.rs at line 194[30.1151]→[29.4027:4064](∅→∅),[39.1160]→[29.4027:4064](∅→∅),[36.1432]→[29.4027:4064](∅→∅),[29.4027]→[29.4027:4064](∅→∅)
])),]))]))])),]).spacing(SPACING)) - replacement in inflorescence_view/src/view.rs at line 223
view_diff_header(format!("Untracked file {path} contents:")),view_header(format!("Untracked file {path} contents:")), - replacement in inflorescence_view/src/view.rs at line 246
view_diff_header(format!("Changed file {path} diff:")),view_header(format!("Changed file {path} diff:")), - replacement in inflorescence_view/src/view.rs at line 302
let depth = if let Some(RecordMsg::Typing(_)) = record_msg.as_ref() {let depth = if let Some(RecordChanges::Typing { .. }) = record_msg.as_ref(){ - replacement in inflorescence_view/src/view.rs at line 439
view_diff_header(format!(view_header(format!( - replacement in inflorescence_view/src/view.rs at line 677
view_diff_header(format!(view_header(format!( - replacement in inflorescence_view/src/view.rs at line 840
view_diff_header(format!(view_header(format!( - replacement in inflorescence_view/src/view.rs at line 944
fn view_diff_header<'a>(fn view_header<'a>( - replacement in inflorescence_view/src/view.rs at line 1052
view_diff_header(format!("{short_hash} message:")),view_header(format!("{short_hash} message:")), - replacement in inflorescence_view/src/view.rs at line 1057
view_diff_header("Description:"),view_header("Description:"), - replacement in inflorescence_view/src/view.rs at line 1063
view_diff_header("Changed files:".to_string()),view_header("Changed files:".to_string()), - replacement in inflorescence_view/src/view/test.rs at line 1
use super::view;use super::main; - replacement in inflorescence_view/src/view/test.rs at line 30
let view = |state| view(state, |_id| None, window_id);let view = |state| main(state, |_id| None, window_id); - replacement in inflorescence_view/src/view/test.rs at line 66
record_msg: default(),record_changes: default(), - replacement in inflorescence_view/src/view/test.rs at line 110
record_msg: default(),record_changes: default(), - replacement in inflorescence_view/src/view/test.rs at line 149
record_msg: default(),record_changes: default(), - replacement in inflorescence_view/src/theme.rs at line 346
placeholder: background.strong.color,placeholder: background.strongest.color, - replacement in inflorescence_model/src/model.rs at line 60
pub record_msg: Option<RecordMsg>,pub record_changes: Option<RecordChanges>, - replacement in inflorescence_model/src/model.rs at line 67
pub enum RecordMsg {Typing(text_editor::Content),Canceled { old_msg: String },pub enum RecordChanges {Typing {msg: text_editor::Content,desc: text_editor::Content,},Canceled {old_msg: String,old_desc: String,}, - replacement in inflorescence_model/src/action.rs at line 1
use crate::model::{ReadyState, RecordMsg};use crate::model::{ReadyState, RecordChanges}; - edit in inflorescence_model/src/action.rs at line 31
FocusNext,FocusPrev, - edit in inflorescence_model/src/action.rs at line 68
(FocusNext, FocusNext) => true,(FocusPrev, FocusPrev) => true, - edit in inflorescence_model/src/action.rs at line 83
(FocusNext, _) => false,(FocusPrev, _) => false, - replacement in inflorescence_model/src/action.rs at line 166
key: "C-d",key: "C-p", - edit in inflorescence_model/src/action.rs at line 175
let focus_next = || Binding {key: "TAB",label: "focus next",msg: Some(FilteredMsg::FocusNext),};let focus_prev = || Binding {key: "TAB",label: "focus previous",msg: Some(FilteredMsg::FocusPrev),}; - edit in inflorescence_model/src/action.rs at line 234
let forking_channel = matches!(sub, SubState::ForkingChannel { .. }); - edit in inflorescence_model/src/action.rs at line 262
ma.push(fork_channel());ma.push(refresh_repo()); - edit in inflorescence_model/src/action.rs at line 276
ma.push(fork_channel());ma.push(refresh_repo()); - edit in inflorescence_model/src/action.rs at line 288
ma.push(fork_channel());ma.push(refresh_repo()); - edit in inflorescence_model/src/action.rs at line 292
ma.push(focus_next());ma.push(focus_prev()); - edit in inflorescence_model/src/action.rs at line 327
ma.push(fork_channel());ma.push(refresh_repo()); - edit in inflorescence_model/src/action.rs at line 337
ma.push(fork_channel());ma.push(refresh_repo()); - edit in inflorescence_model/src/action.rs at line 347
ma.push(fork_channel());ma.push(refresh_repo()); - edit in inflorescence_model/src/action.rs at line 357
ma.push(fork_channel());ma.push(refresh_repo()); - edit in inflorescence_model/src/action.rs at line 371
ma.push(fork_channel());ma.push(refresh_repo()); - edit in inflorescence_model/src/action.rs at line 381
ma.push(fork_channel());ma.push(refresh_repo()); - edit in inflorescence_model/src/action.rs at line 391
ma.push(fork_channel());ma.push(refresh_repo()); - edit in inflorescence_model/src/action.rs at line 396
push_if(!forking_channel, fork_channel, ma);ma.push(refresh_repo()); - replacement in inflorescence_model/src/action.rs at line 503
record_msg,record_changes, - replacement in inflorescence_model/src/action.rs at line 515
match record_msg {Some(RecordMsg::Typing(_)) => return SubState::Recording,Some(RecordMsg::Canceled { .. }) | None => {match record_changes {Some(RecordChanges::Typing { .. }) => return SubState::Recording,Some(RecordChanges::Canceled { .. }) | None => { - replacement in inflorescence/src/test.rs at line 6
use inflorescence_model::model::{ReadyState, RecordMsg, SubState};use inflorescence_model::model::{ReadyState, RecordChanges, SubState}; - replacement in inflorescence/src/test.rs at line 34
assert_eq!(state.sub.repo_path, repo_path);assert_eq!(state.model.repo_path, repo_path); - replacement in inflorescence/src/test.rs at line 149
assert!(ready_state.record_msg.is_some());assert!(ready_state.record_changes.is_some()); - replacement in inflorescence/src/test.rs at line 162
assert!(ready_state.record_msg.is_some());assert!(ready_state.record_changes.is_some()); - replacement in inflorescence/src/test.rs at line 164
ready_state.record_msg.as_ref().unwrap(),RecordMsg::Typing(_)ready_state.record_changes.as_ref().unwrap(),RecordChanges::Typing { .. } - replacement in inflorescence/src/test.rs at line 167
if let RecordMsg::Typing(content) =ready_state.record_msg.as_ref().unwrap()if let RecordChanges::Typing { msg, desc } =ready_state.record_changes.as_ref().unwrap() - replacement in inflorescence/src/test.rs at line 170
assert_eq!(&content.text(), record_msg);assert_eq!(&msg.text(), record_msg);assert_eq!(&desc.text(), ""); - replacement in inflorescence/src/test.rs at line 262
assert!(ready_state.record_msg.is_some());assert!(ready_state.record_changes.is_some()); - replacement in inflorescence/src/test.rs at line 275
assert!(ready_state.record_msg.is_some());assert!(ready_state.record_changes.is_some()); - replacement in inflorescence/src/test.rs at line 277
ready_state.record_msg.as_ref().unwrap(),RecordMsg::Typing(_)ready_state.record_changes.as_ref().unwrap(),RecordChanges::Typing { .. } - replacement in inflorescence/src/test.rs at line 280
if let RecordMsg::Typing(content) =ready_state.record_msg.as_ref().unwrap()if let RecordChanges::Typing { msg, desc } =ready_state.record_changes.as_ref().unwrap() - replacement in inflorescence/src/test.rs at line 283
assert_eq!(&content.text(), record_msg);assert_eq!(&msg.text(), record_msg);assert_eq!(&desc.text(), ""); - replacement in inflorescence/src/test.rs at line 295
assert!(ready_state.record_msg.is_none());assert!(ready_state.record_changes.is_none()); - replacement in inflorescence/src/test.rs at line 299
// Case: start -> edit -> defer -> start// Case: start -> edit msg -> defer -> start -> abandon - replacement in inflorescence/src/test.rs at line 308
assert!(ready_state.record_msg.is_some());assert!(ready_state.record_changes.is_some()); - edit in inflorescence/src/test.rs at line 318
);{let ready_state = get_ready_state(&state);assert!(ready_state.record_changes.is_some());assert_matches!(ready_state.record_changes.as_ref().unwrap(),RecordChanges::Typing { .. });if let RecordChanges::Typing { msg, desc } =ready_state.record_changes.as_ref().unwrap(){assert_eq!(&msg.text(), record_msg);assert_eq!(&desc.text(), "");}}// Defer the recordlet _task = update(&mut state,Msg::View(view::Msg::Action(action::FilteredMsg::PostponeRecord)),);{let ready_state = get_ready_state(&state);assert!(ready_state.record_changes.is_some());assert_matches!(ready_state.record_changes.as_ref().unwrap(),RecordChanges::Canceled { old_msg, old_desc: _ } if old_msg == record_msg);}// Start again// Start a record - there's an an added file from previous caselet _task = update(&mut state,Msg::View(view::Msg::Action(action::FilteredMsg::StartRecord)), - replacement in inflorescence/src/test.rs at line 356
assert!(ready_state.record_msg.is_some());assert!(ready_state.record_changes.is_some());assert!(ready_state.record_changes.is_some());assert_matches!(ready_state.record_changes.as_ref().unwrap(),RecordChanges::Typing{ msg, desc: _ } if msg.text() == record_msg);}// Abandon itlet _task = update(&mut state,Msg::View(view::Msg::Action(action::FilteredMsg::DiscardRecord)),);{let ready_state = get_ready_state(&state);assert!(ready_state.record_changes.is_none());}// _________________________________________________________________________// Case: start -> edit desc -> defer -> start// Start a record - there's an an added file from previous caselet _task = update(&mut state,Msg::View(view::Msg::Action(action::FilteredMsg::StartRecord)),);{let ready_state = get_ready_state(&state);assert!(ready_state.record_changes.is_some());}// Edit the record desclet record_desc = "Added honky tonk music";let _task = update(&mut state,Msg::View(view::Msg::EditRecordDesc(text_editor::Action::Edit(text_editor::Edit::Paste(Arc::new(record_msg.to_string())),))),);{let ready_state = get_ready_state(&state);assert!(ready_state.record_changes.is_some()); - replacement in inflorescence/src/test.rs at line 399
ready_state.record_msg.as_ref().unwrap(),RecordMsg::Typing(_)ready_state.record_changes.as_ref().unwrap(),RecordChanges::Typing { .. } - replacement in inflorescence/src/test.rs at line 402
if let RecordMsg::Typing(content) =ready_state.record_msg.as_ref().unwrap()if let RecordChanges::Typing { msg, desc } =ready_state.record_changes.as_ref().unwrap() - replacement in inflorescence/src/test.rs at line 405
assert_eq!(&content.text(), record_msg);assert_eq!(&msg.text(), "");assert_eq!(&desc.text(), record_desc); - replacement in inflorescence/src/test.rs at line 417
assert!(ready_state.record_msg.is_some());assert!(ready_state.record_changes.is_some()); - replacement in inflorescence/src/test.rs at line 419
ready_state.record_msg.as_ref().unwrap(),RecordMsg::Canceled { old_msg } if old_msg == record_msgready_state.record_changes.as_ref().unwrap(),RecordChanges::Canceled { old_msg, old_desc: _ } if old_msg == record_desc - replacement in inflorescence/src/test.rs at line 432
assert!(ready_state.record_msg.is_some());assert!(ready_state.record_msg.is_some());assert!(ready_state.record_changes.is_some());assert!(ready_state.record_changes.is_some()); - replacement in inflorescence/src/test.rs at line 435
ready_state.record_msg.as_ref().unwrap(),RecordMsg::Typing(msg) if msg.text() == record_msgready_state.record_changes.as_ref().unwrap(),RecordChanges::Typing{ msg: _, desc } if desc.text() == record_desc - edit in inflorescence/src/test.rs at line 439
// Abandon itlet _task = update(&mut state,Msg::View(view::Msg::Action(action::FilteredMsg::DiscardRecord)),);{let ready_state = get_ready_state(&state);assert!(ready_state.record_changes.is_none());} - replacement in inflorescence/src/test.rs at line 469
assert!(ready_state.record_msg.is_none());assert!(ready_state.record_changes.is_none()); - replacement in inflorescence/src/test.rs at line 642
let SubState::Ready(ready_state) = &mut state.sub.sub else {panic!("Unexpected state: {:?}", state.sub)let SubState::Ready(ready_state) = &mut state.model.sub else {panic!("Unexpected state: {:?}", state.model) - replacement in inflorescence/src/test.rs at line 1014
let SubState::Ready(ready_state) = &state.sub.sub else {panic!("Unexpected state: {:?}", state.sub.sub)let SubState::Ready(ready_state) = &state.model.sub else {panic!("Unexpected state: {:?}", state.model.sub) - replacement in inflorescence/src/test.rs at line 1022
let state_dbg = format!("{:?}", state.sub.sub);let SubState::Ready(ready_state) = &mut state.sub.sub else {let state_dbg = format!("{:?}", state.model.sub);let SubState::Ready(ready_state) = &mut state.model.sub else { - replacement in inflorescence/src/main.rs at line 9
use inflorescence_model::model::{Log, Logs, ReadyState, RecordMsg};use inflorescence_model::model::{Log, Logs, ReadyState, RecordChanges}; - replacement in inflorescence/src/main.rs at line 90
let sub = model::State {let model = model::State { - replacement in inflorescence/src/main.rs at line 104
sub,model, - replacement in inflorescence/src/main.rs at line 116
sub: model::State,model: model::State, - replacement in inflorescence/src/main.rs at line 137
match &mut state.sub.sub {match &mut state.model.sub { - replacement in inflorescence/src/main.rs at line 141
state.sub.sub = model::SubState::Ready(ReadyState {state.model.sub = model::SubState::Ready(ReadyState { - replacement in inflorescence/src/main.rs at line 146
record_msg: default(),record_changes: default(), - replacement in inflorescence/src/main.rs at line 166
start_task_to_manage_repo(state.sub.repo_path.clone());start_task_to_manage_repo(state.model.repo_path.clone()); - replacement in inflorescence/src/main.rs at line 183
state.sub.allowed_actions = action::get_allowed(&state.sub.sub);state.model.allowed_actions = action::get_allowed(&state.model.sub); - replacement in inflorescence/src/main.rs at line 194
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 245
state.sub.window_size = size;state.model.window_size = size; - replacement in inflorescence/src/main.rs at line 278
&& !action::is_allowed(&state.sub.allowed_actions, msg)&& !action::is_allowed(&state.model.allowed_actions, msg) - edit in inflorescence/src/main.rs at line 288
view::Msg::EditRecordDesc(action) => edit_record_desc(state, action), - replacement in inflorescence/src/main.rs at line 293
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 306
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 335
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 377
record_msg,record_changes: record_msg, - replacement in inflorescence/src/main.rs at line 380
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 382
if let Some(RecordMsg::Typing(content)) = record_msg.as_ref() {*record_msg = Some(RecordMsg::Canceled {old_msg: content.text(),if let Some(RecordChanges::Typing { msg, desc }) =record_msg.as_ref(){*record_msg = Some(RecordChanges::Canceled {old_msg: msg.text(),old_desc: desc.text(), - replacement in inflorescence/src/main.rs at line 411
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - edit in inflorescence/src/main.rs at line 428
action::FilteredMsg::FocusNext => focus_next(state),action::FilteredMsg::FocusPrev => focus_prev(state), - replacement in inflorescence/src/main.rs at line 436
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 447
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 465
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 490
}) = model::is_ready(&state.sub)}) = model::is_ready(&state.model) - replacement in inflorescence/src/main.rs at line 618
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 671
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 729
repo, record_msg, ..}) = model::is_ready_mut(&mut state.sub)repo,record_changes,..}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 736
} else if let Some(RecordMsg::Typing(_)) = record_msg.as_ref() {} else if let Some(RecordChanges::Typing { .. }) =record_changes.as_ref(){ - replacement in inflorescence/src/main.rs at line 742
let content = match record_msg.take() {Some(RecordMsg::Canceled { old_msg }) => {text_editor::Content::with_text(&old_msg)}None | Some(RecordMsg::Typing(_)) => {text_editor::Content::new()let (msg, desc) = match record_changes.take() {Some(RecordChanges::Canceled { old_msg, old_desc }) => (text_editor::Content::with_text(&old_msg),text_editor::Content::with_text(&old_desc),),None | Some(RecordChanges::Typing { .. }) => {(text_editor::Content::new(), text_editor::Content::new()) - replacement in inflorescence/src/main.rs at line 751
*record_msg = Some(RecordMsg::Typing(content));*record_changes = Some(RecordChanges::Typing { msg, desc }); - replacement in inflorescence/src/main.rs at line 764
record_msg: Some(RecordMsg::Typing(record_msg)),record_changes: Some(RecordChanges::Typing { msg, desc: _ }), - replacement in inflorescence/src/main.rs at line 766
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model){msg.perform(action);}Task::none()}fn edit_record_desc(state: &mut State,action: text_editor::Action,) -> Task<Msg> {if let Some(ReadyState {record_changes: Some(RecordChanges::Typing { msg: _, desc }),..}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 782
record_msg.perform(action);desc.perform(action); - replacement in inflorescence/src/main.rs at line 789
record_msg,record_changes, - replacement in inflorescence/src/main.rs at line 794
}) = model::is_ready_mut(&mut state.sub)&& let Some(RecordMsg::Typing(msg)) = record_msg.as_ref()}) = model::is_ready_mut(&mut state.model)&& let Some(RecordChanges::Typing { msg, desc }) =record_changes.as_ref() - replacement in inflorescence/src/main.rs at line 798
let msg = msg.text();if msg.trim().is_empty() {let msg = msg.text().trim().to_string();let desc = desc.text();let desc = desc.trim();let desc = if desc.is_empty() {None} else {Some(desc.to_string())};if msg.is_empty() { - replacement in inflorescence/src/main.rs at line 814
.send(repo::MsgIn::Record { msg, sk }).send(repo::MsgIn::Record { msg, desc, sk }) - replacement in inflorescence/src/main.rs at line 819
*record_msg = None;*record_changes = None; - replacement in inflorescence/src/main.rs at line 828[16.5886]→[34.90121:90170](∅→∅),[34.90170]→[37.64948:64992](∅→∅),[37.64992]→[35.11636:11702](∅→∅),[34.90211]→[35.11636:11702](∅→∅)
if let Some(ReadyState { record_msg, .. }) =model::is_ready_mut(&mut state.sub)&& let Some(RecordMsg::Typing(msg)) = record_msg.as_ref()if let Some(ReadyState { record_changes, .. }) =model::is_ready_mut(&mut state.model)&& let Some(RecordChanges::Typing { msg, desc }) =record_changes.as_ref() - replacement in inflorescence/src/main.rs at line 834
*record_msg = if !old_msg.trim().is_empty() {Some(RecordMsg::Canceled { old_msg })let old_msg = old_msg.trim();let old_desc = desc.text();let old_desc = old_desc.trim();*record_changes = if !old_msg.is_empty() || !old_desc.is_empty() {let old_msg = old_msg.to_string();let old_desc = old_desc.to_string();Some(RecordChanges::Canceled { old_msg, old_desc }) - replacement in inflorescence/src/main.rs at line 849[16.6236]→[34.90503:90552](∅→∅),[34.90552]→[37.64993:65037](∅→∅),[37.65037]→[35.11887:11954](∅→∅),[34.90593]→[35.11887:11954](∅→∅)
if let Some(ReadyState { record_msg, .. }) =model::is_ready_mut(&mut state.sub)&& let Some(RecordMsg::Typing(_msg)) = record_msg.as_ref()if let Some(ReadyState {record_changes: record_msg,..}) = model::is_ready_mut(&mut state.model)&& let Some(RecordChanges::Typing { .. }) = record_msg.as_ref() - edit in inflorescence/src/main.rs at line 860
fn focus_next(state: &mut State) -> Task<Msg> {if let Some(ReadyState {record_changes: record_msg,..}) = model::is_ready_mut(&mut state.model)&& let Some(RecordChanges::Typing { .. }) = record_msg.as_ref(){task::widget_focus_next()} else {Task::none()}}fn focus_prev(state: &mut State) -> Task<Msg> {if let Some(ReadyState {record_changes: record_msg,..}) = model::is_ready_mut(&mut state.model)&& let Some(RecordChanges::Typing { .. }) = record_msg.as_ref(){task::widget_focus_previous()} else {Task::none()}} - replacement in inflorescence/src/main.rs at line 887
match &mut state.sub.sub {match &mut state.model.sub { - replacement in inflorescence/src/main.rs at line 889
state.sub.sub = if user_ids.len() == 1 {state.model.sub = if user_ids.len() == 1 { - replacement in inflorescence/src/main.rs at line 896
record_msg: default(),record_changes: default(), - replacement in inflorescence/src/main.rs at line 938
.watch(&state.sub.repo_path, RecursiveMode::Recursive).watch(&state.model.repo_path, RecursiveMode::Recursive) - replacement in inflorescence/src/main.rs at line 955
match &mut state.sub.sub {match &mut state.model.sub { - replacement in inflorescence/src/main.rs at line 965
record_msg: _,record_changes: _, - replacement in inflorescence/src/main.rs at line 1215
}) = model::is_ready_mut(&mut state.sub)}) = model::is_ready_mut(&mut state.model) - replacement in inflorescence/src/main.rs at line 1288
if let Some(ReadyState { logs, .. }) = model::is_ready_mut(&mut state.sub) {if let Some(ReadyState { logs, .. }) = model::is_ready_mut(&mut state.model){ - replacement in inflorescence/src/main.rs at line 1300
if let Some(ReadyState { logs, .. }) = model::is_ready_mut(&mut state.sub) {if let Some(ReadyState { logs, .. }) = model::is_ready_mut(&mut state.model){ - edit in inflorescence/src/main.rs at line 1360
}Key::Named(key::Named::Tab) => {action(action::FilteredMsg::FocusNext) - edit in inflorescence/src/main.rs at line 1414
}Key::Named(key::Named::Tab) if mods == Modifiers::SHIFT => {action(action::FilteredMsg::FocusPrev) - replacement in inflorescence/src/main.rs at line 1490[28.3737]→[39.16182:16198](∅→∅),[39.16198]→[34.101199:101219](∅→∅),[34.101199]→[34.101199:101219](∅→∅)
view::view(&state.sub,view::main(&state.model, - edit in inflorescence/src/file.rs at line 67
dbg!("LOAD", &id); - edit in iced_utils/src/task/wrappers.rs at line 73
/// Focuses the previous focusable widget.pub fn widget_focus_previous<T>() -> Task<T> {#[cfg(not(any(test, feature = "testing")))]let task = iced::widget::focus_previous(); - edit in iced_utils/src/task/wrappers.rs at line 79
#[cfg(any(test, feature = "testing"))]let task = Task::none();task}