commit 5f20d05b1b6335f731c1fc3fb9a87f70b698acbf
Author: Juergen Spitzmueller <sp...@lyx.org>
Date:   Tue May 12 15:47:38 2015 +0200

    Fix left margin with some nested layouts (#9538)

diff --git a/src/TextMetrics.cpp b/src/TextMetrics.cpp
index a347b99..da9e404 100644
--- a/src/TextMetrics.cpp
+++ b/src/TextMetrics.cpp
@@ -1610,12 +1610,16 @@ int TextMetrics::leftMargin(int max_width,
        l_margin += theFontMetrics(buffer.params().getFont()).signedWidth(
                tclass.leftmargin());
 
-       if (par.getDepth() != 0) {
+       int depth = par.getDepth();
+       if (depth != 0) {
                // find the next level paragraph
                pit_type newpar = text_->outerHook(pit);
                if (newpar != pit_type(pars.size())) {
                        if (pars[newpar].layout().isEnvironment()) {
-                               l_margin = leftMargin(max_width, newpar);
+                               int nestmargin = depth * nestMargin();
+                               if (text_->isMainText())
+                                       nestmargin += changebarMargin();
+                               l_margin = max(leftMargin(max_width, newpar), 
nestmargin);
                                // Remove the parindent that has been added
                                // if the paragraph was empty.
                                if (pars[newpar].empty() &&

Reply via email to