From: Jean-Marc Lasgouttes Date: Fri, 6 Dec 2019 09:20:18 +0000 (+0100) Subject: Fixup e1be71da: do not enforce plain layout when dissolving X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=5d63725870ea69c8320e8cd5549d4027b378b889;p=features.git Fixup e1be71da: do not enforce plain layout when dissolving Instead of checking whether the dissolved inset enforces plain layout, it is better to check whether is uses plain layout. Fixes #10369. --- diff --git a/src/Text.cpp b/src/Text.cpp index 1fdef6e2df..e060a6c9dd 100644 --- a/src/Text.cpp +++ b/src/Text.cpp @@ -1820,14 +1820,16 @@ bool Text::dissolveInset(Cursor & cur) for (; it != it_end; ++it) it->changeLanguage(b.params(), latex_language, b.language()); - /* the inset is the only thing in paragraph, then the layout - * of the first paragraph of inset should be remembered. + /* If the inset is the only thing in paragraph and the layout + * is not plain, then the layout of the first paragraph of + * inset should be remembered. * FIXME: this does not work as expected when change tracking * is on However, we do not really know what to do in this * case. */ + DocumentClass const & tclass = cur.buffer()->params().documentClass(); if (inset_it.lastpos() == 1 - && inset_it.nextInset() && !inset_it.nextInset()->forcePlainLayout()) + && plist[0].layout().name() != tclass.plainLayoutName()) cur.paragraph().makeSameLayout(plist[0]); pasteParagraphList(cur, plist, b.params().documentClassPtr(),