delay, collect and compress LOK invalidations for Writer views

Desktop / LibreOffice - Luboš Luňák [collabora.com] - 15 October 2021 11:40 UTC

Due the to way views are updated on any document change, invalidations are at least O(n^2), and since LOK may use a number of views and for each view the entire document is considered to be the view area, this can lead to a huge number of invalidations that are mostly the same repeated rectangles.

Change-Id: I63682958d2fc388344641dcd19fa1d2b39054b51 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123617

cb60edbc2c07 delay, collect and compress LOK invalidations for Writer views
desktop/inc/lib/init.hxx | 3 ++
desktop/source/lib/init.cxx | 12 ++++++-
include/sfx2/viewsh.hxx | 2 ++
sfx2/source/view/viewsh.cxx | 5 +++
sw/inc/view.hxx | 1 +
sw/inc/viewsh.hxx | 1 +
sw/qa/core/txtnode/txtnode.cxx | 1 +
sw/qa/extras/tiledrendering/tiledrendering.cxx | 9 +++++
sw/source/core/inc/viewimp.hxx | 5 +++
sw/source/core/view/viewimp.cxx | 15 ++++++++
sw/source/core/view/viewsh.cxx | 49 ++++++++++++++++++++++++++
sw/source/uibase/uiview/view.cxx | 7 ++++
12 files changed, 109 insertions(+), 1 deletion(-)

Upstream: cgit.freedesktop.org


  • Share