fbpr: fix scroll

This commit is contained in:
🪞👃🪞 2024-12-06 01:39:47 +01:00
parent b70d7a08a6
commit d06ae94655
2 changed files with 11 additions and 11 deletions

View file

@ -111,11 +111,11 @@ impl Command<PhraseEditorModel> for PhraseCommand {
None None
}, },
SetNoteCursor(note) => { SetNoteCursor(note) => {
let note = 127.min(note); let note = 127.min(note);
let start = state.note_lo.load(Ordering::Relaxed); let start = state.note_lo.load(Ordering::Relaxed);
state.note_point.store(note, Ordering::Relaxed); state.note_point.store(note, Ordering::Relaxed);
if note < start { if note < start {
state.note_lo.store((note / 2) * 2, Ordering::Relaxed); state.note_lo.store(note, Ordering::Relaxed);
} }
None None
}, },

View file

@ -27,11 +27,11 @@ impl<'a, T: HasEditor> From<&'a T> for PhraseView<'a> {
//editor.note_lo.store(note_lo, Ordering::Relaxed); //editor.note_lo.store(note_lo, Ordering::Relaxed);
//} //}
let mut note_hi = 127.min((note_lo + height).saturating_sub(2)); let mut note_hi = 127.min((note_lo + height).saturating_sub(2));
//if note_point > note_hi { if note_point > note_hi {
//note_lo += note_point - note_hi; note_lo += note_point - note_hi;
//note_hi = note_point; note_hi = note_point;
//editor.note_lo.store(note_lo, Ordering::Relaxed); editor.note_lo.store(note_lo, Ordering::Relaxed);
//} }
Self { Self {
focused: state.editor_focused(), focused: state.editor_focused(),
entered: state.editor_entered(), entered: state.editor_entered(),
@ -73,12 +73,12 @@ impl<'a> Content for PhraseView<'a> {
} = self; } = self;
let upper_left = format!( let upper_left = format!(
"{note_hi} {note_hi_name} {}", "{note_hi} {note_hi_name} {}",
phrase.as_ref().map(|p|p.read().unwrap().name.clone()).unwrap_or(String::new()) phrase.as_ref().map(|p|p.read().unwrap().name.clone()).unwrap_or(String::new())
); );
let lower_left = format!( let lower_left = format!(
"{note_lo} {note_lo_name}" "{note_lo} {note_lo_name}"
); );
let mut lower_right = format!( let mut lower_right = format!(
@ -144,8 +144,8 @@ impl<'a> Content for PhraseView<'a> {
//} //}
Ok(()) Ok(())
}).push_x(6).align_sw(), }).push_x(6).align_sw(),
TuiStyle::fg(upper_left.to_string(), title_color).push_x(1).align_nw(), TuiStyle::fg(upper_left.to_string(), title_color).align_nw(),
TuiStyle::fg(lower_left.to_string(), title_color).push_x(1).align_sw(), TuiStyle::fg(lower_left.to_string(), title_color).align_sw(),
TuiStyle::fg(upper_right.to_string(), title_color).pull_x(1).align_ne().fill_xy(), TuiStyle::fg(upper_right.to_string(), title_color).pull_x(1).align_ne().fill_xy(),
TuiStyle::fg(lower_right.to_string(), title_color).pull_x(1).align_se().fill_xy(), TuiStyle::fg(lower_right.to_string(), title_color).pull_x(1).align_se().fill_xy(),
) )