Updating Row Heights
|About this template|
After loading a spreadsheet file, automatic row heights are updated. This can take a significant part of the total loading time. To save some of this time, we want to update the heights only for those sheets for which the height information is needed. The implementation in CWS DEV300 dr70 currently does the following:
- The stored row heights from the file are loaded even if they are automatic. Previously they were ignored because they would be recalculated anyway. Loading them doesn't add significant overhead.
- If a sheet doesn't have any shapes or notes, and isn't the visible sheet as defined in the view settings, the row heights for that sheet aren't updated after loading. Instead the sheet gets a "pending" flag for later updating. The updates for the visible sheet and the sheets with shapes together use the existing "Adapt row height" progress bar.
- When switching to a different sheet that needs updating, the heights are updated with a progress bar, before switching, so there is some feedback why this takes longer. Similar for printing or page preview. The text for the progress bar is the same "Adapt row height" as after loading.
When shapes are involved, updating the row heights can take much longer, so there we keep the old sequence of updating row heights before positioning the shapes. To remove this limitation at a later time, we can either try to accelerate row height updates with shapes, or keep the shape positions from the file in memory (cell and relative position), and apply them only after updating the row heights.
Currently open: If simple notes can be loaded without using shapes, they will no longer require immediate row height updates.