Improve caching order and priority cache on fullscreen

This commit is contained in:
Julian Mutter 2024-02-01 18:29:49 +01:00
parent d9d3438997
commit c6c07e788b

View File

@ -56,6 +56,10 @@ impl DocumentCanvas {
}
pub fn cache_initial_pages(&self, area_height: i32) {
self.priority_cache_current_pages(area_height);
}
pub fn priority_cache_current_pages(&self, area_height: i32){
self.page_cache_sender.send_priority_cache_commands(
&[self.current_page_number, self.current_page_number + 1],
area_height,
@ -65,11 +69,11 @@ impl DocumentCanvas {
pub fn cache_surrounding_pages(&self, area_height: i32) {
self.page_cache_sender.send_cache_commands(
&[
self.current_page_number.saturating_sub(2),
self.current_page_number.saturating_sub(1),
self.current_page_number,
self.current_page_number + 1,
self.current_page_number.saturating_sub(1),
self.current_page_number + 2,
self.current_page_number.saturating_sub(2),
self.current_page_number + 3,
],
area_height,
@ -106,10 +110,13 @@ pub fn toggle_fullscreen(ui: &Ui) {
ui.header_bar.hide();
ui.bottom_bar.hide();
ui.window.fullscreen();
let new_area_height = ui.image_container.height() + ui.header_bar.height();
ui.document_canvas.as_ref().unwrap().priority_cache_current_pages(new_area_height);
ui.document_canvas
.as_ref()
.unwrap()
.cache_surrounding_pages(ui.image_container.height() + ui.header_bar.height());
.cache_surrounding_pages(new_area_height);
}
false => {
ui.header_bar.show();