bugfixing

This commit is contained in:
Jana Dönszelmann 2026-02-24 22:04:35 +01:00
parent c73be7166f
commit ae5ce58eec
No known key found for this signature in database
6 changed files with 103 additions and 44 deletions

View file

@ -13,7 +13,7 @@ pub struct LogView {
}
impl LogView {
pub fn selected(&self) -> Option<Rc<LogEntry>> {
pub fn selected(&self) -> Option<(Rc<LogEntry>, usize)> {
let mut temp_iter = self.iter.clone();
for _ in 0..self.selection_offset {
let _ = temp_iter.next()?;
@ -89,7 +89,7 @@ impl LogViewer {
) -> Option<Box<dyn LogStream>> {
let mut temp_stream = stream.clone();
let mut max = 100usize;
while let Some(curr) = temp_stream.next() {
while let Some((curr, _)) = temp_stream.next() {
if Rc::ptr_eq(&curr, elem) {
return Some(temp_stream);
}
@ -107,7 +107,7 @@ impl LogViewer {
let mut new_stack = Vec::<LogView>::new();
'outer: for (elem, old_offset) in offsets_list {
let Some(elem) = elem else {
let Some((elem, _)) = elem else {
break;
};
@ -181,14 +181,14 @@ impl LogViewer {
}
pub fn footer_fields(&self) -> Vec<(String, serde_json::Value)> {
if let Some(selected) = self.selected() {
if let Some((selected, _)) = self.selected() {
selected.all_fields().fields.into_iter().collect::<Vec<_>>()
} else {
Vec::new()
}
}
pub fn items(&self, max: usize) -> Option<(Vec<Rc<LogEntry>>, usize)> {
pub fn items(&self, max: usize) -> Option<(Vec<(Rc<LogEntry>, usize)>, usize)> {
let mut temp_iter = self.curr.iter.clone();
let mut res = Vec::new();
for _ in 0..max {
@ -201,7 +201,7 @@ impl LogViewer {
Some((res, self.curr.selection_offset))
}
pub fn selected(&self) -> Option<Rc<LogEntry>> {
pub fn selected(&self) -> Option<(Rc<LogEntry>, usize)> {
self.curr.selected()
}
@ -278,10 +278,10 @@ impl LogViewer {
pub fn enter(&mut self) {
if !self.footer_selected {
let Some(s) = self.selected() else {
let Some((s, _)) = self.selected() else {
return;
};
let Some(i) = s.from_start() else {
let Some(i) = s.from_start(0) else {
return;
};