Force re-paging when files updated

This commit is contained in:
sxyazi 2023-11-08 01:33:47 +08:00
parent 3a8d2c8e90
commit 7e334e5c66
No known key found for this signature in database

View file

@ -43,16 +43,7 @@ impl Folder {
self.prev(Default::default()); self.prev(Default::default());
if self.page == old { if self.page == old {
emit!(Pages(self.page)); // Force update self.set_page(true); // Force update
match MANAGER.layout.folder_height() {
limit if limit > 0 => {
let max_page = (self.files.len() + limit - 1) / limit;
if self.page + 1 < max_page {
emit!(Pages(self.page + 1));
}
}
_ => {}
}
} }
true true
@ -69,17 +60,21 @@ impl Folder {
return; return;
} }
if new > 1 && new - 1 != self.page { // Current page
emit!(Pages(new - 1)); emit!(Pages(new));
}
// Next page
let max_page = (self.files.len() + limit - 1) / limit; let max_page = (self.files.len() + limit - 1) / limit;
if new < max_page && new + 1 != self.page { if new < max_page && new + 1 != self.page {
emit!(Pages(new + 1)); emit!(Pages(new + 1));
} }
// Previous page
if new > 1 && new - 1 != self.page {
emit!(Pages(new - 1));
}
self.page = new; self.page = new;
emit!(Pages(new));
} }
pub fn next(&mut self, step: Step) -> bool { pub fn next(&mut self, step: Step) -> bool {