commit bf9b4a0836f23082b68a6a42d048a54333721e8e
Merge: ae56fb6 2f8ea7b
Author: Jean-Marc Lasgouttes <lasgout...@lyx.org>
Date:   Tue Dec 7 17:06:21 2021 +0100

    Merge branch 'breakrows'
    
    With this merge, the way paragraphs are typeset changes. Paragraphs
    are first tolenized as row elements, and these elements are then
    broken into separate rows as needed to fit the margins. This allows to
    reduce the amount of metrics computation and make LyX much faster in
    the case of large insets.
    
    Moreover, the code relies more on RofFlags enum, which desribes how an
    inset or a row element should be typset. This aspect will be extended
    in the future.
    
    Some user for whom performance is very bad (which I cannot reproduce
    unfortunately) have reported a 4-fold speedup. In general cases, the
    speedup will be less impressive but still noticeable.
    
    Related to bugs #12297 and #5861.

 development/PAINTING_ANALYSIS       |    7 +-
 src/Makefile.am                     |    1 +
 src/ParagraphMetrics.h              |    9 -
 src/Row.cpp                         |  256 ++++++++++++++++-----------
 src/Row.h                           |  109 +++++++-----
 src/RowFlags.h                      |   61 +++++++
 src/TextMetrics.cpp                 |  338 +++++++++++++++++++++++-----------
 src/TextMetrics.h                   |    9 +-
 src/frontends/FontMetrics.h         |   23 ++-
 src/frontends/qt/GuiFontMetrics.cpp |  177 +++++++++++++------
 src/frontends/qt/GuiFontMetrics.h   |   20 ++-
 src/insets/Inset.h                  |   37 +----
 src/insets/InsetBibtex.h            |    2 +-
 src/insets/InsetCaption.h           |    2 +-
 src/insets/InsetFloatList.h         |    2 +-
 src/insets/InsetInclude.cpp         |    2 +-
 src/insets/InsetInclude.h           |    2 +-
 src/insets/InsetIndex.h             |    2 +-
 src/insets/InsetListings.cpp        |    2 +-
 src/insets/InsetListings.h          |    2 +-
 src/insets/InsetNewline.cpp         |    9 +
 src/insets/InsetNewline.h           |    2 +-
 src/insets/InsetNewpage.h           |    2 +-
 src/insets/InsetNomencl.h           |    2 +-
 src/insets/InsetSeparator.h         |    2 +-
 src/insets/InsetSpace.cpp           |    2 +-
 src/insets/InsetSpace.h             |    2 +-
 src/insets/InsetSpecialChar.cpp     |    2 +-
 src/insets/InsetSpecialChar.h       |    2 +-
 src/insets/InsetTOC.h               |    2 +-
 src/insets/InsetTabular.cpp         |   30 ++--
 src/insets/InsetTabular.h           |    2 +-
 src/insets/InsetVSpace.h            |    2 +-
 src/mathed/InsetMathHull.cpp        |    2 +-
 src/mathed/InsetMathHull.h          |    2 +-
 35 files changed, 713 insertions(+), 415 deletions(-)
-- 
lyx-cvs mailing list
lyx-cvs@lists.lyx.org
http://lists.lyx.org/mailman/listinfo/lyx-cvs

Reply via email to