Respect InsetLayout's PassThru setting in XHTML export.

(cherry picked from commit 2e764c2c66)
This commit is contained in:
Richard Heck 2012-12-24 12:03:44 -05:00
parent 4b064e3caa
commit 80adc824f6
3 changed files with 14 additions and 4 deletions

View File

@ -2794,7 +2794,7 @@ docstring Paragraph::simpleLyXHTMLOnePar(Buffer const & buf,
} else {
char_type c = getUChar(buf.params(), i);
if (style.pass_thru)
if (style.pass_thru || runparams.pass_thru)
xs << c;
else if (c == '-') {
docstring str;

View File

@ -526,6 +526,7 @@ docstring InsetText::insetAsXHTML(XHTMLStream & xs, OutputParams const & rp,
InsetLayout const & il = getLayout();
if (opts & WriteOuterTag)
xs << html::StartTag(il.htmltag(), il.htmlattr());
if ((opts & WriteLabel) && !il.counter().empty()) {
BufferParams const & bp = buffer().masterBuffer()->params();
Counters & cntrs = bp.documentClass().counters();
@ -545,14 +546,21 @@ docstring InsetText::insetAsXHTML(XHTMLStream & xs, OutputParams const & rp,
if (opts & WriteInnerTag)
xs << html::StartTag(il.htmlinnertag(), il.htmlinnerattr());
OutputParams ours = runparams;
// we will eventaully lose information about the containing inset
if (!il.isMultiPar() || opts == JustText)
ours.html_make_pars = false;
xhtmlParagraphs(text_, buffer(), xs, ours);
runparams.html_make_pars = false;
if (il.isPassThru())
runparams.pass_thru = true;
xhtmlParagraphs(text_, buffer(), xs, runparams);
if (opts & WriteInnerTag)
xs << html::EndTag(il.htmlinnertag());
if (opts & WriteOuterTag)
xs << html::EndTag(il.htmltag());
return docstring();
}

View File

@ -78,6 +78,8 @@ What's new
- Fix problem using lyxpak.py when outside the LyX tree: Variable was
undefined.
- Resepct InsetLayout's PassThru setting for XHTML export.
- Fix layout conversion bug involving quoted Flex inset names that do not
contain spaces.