From 64b276b6fc4eed3394a48976177a8842d1bd6c4a Mon Sep 17 00:00:00 2001 From: Dov Feldstern Date: Sat, 3 Nov 2007 18:12:52 +0000 Subject: [PATCH] Force latin-only InsetCollapsables into LTR environment if surroundings are RTL. This fixes, for example, the URL inset, which used to be included here explicitly when it was a standalone inset. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21407 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/Paragraph.cpp | 6 +++++- src/insets/InsetCollapsable.h | 2 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Paragraph.cpp b/src/Paragraph.cpp index 05151cd086..675a85edb5 100644 --- a/src/Paragraph.cpp +++ b/src/Paragraph.cpp @@ -725,7 +725,11 @@ void Paragraph::Private::latexInset(Buffer const & buf, if ((inset->lyxCode() == GRAPHICS_CODE || inset->lyxCode() == MATH_CODE - || inset->lyxCode() == HYPERLINK_CODE) + || inset->lyxCode() == HYPERLINK_CODE + || (inset->asInsetCollapsable() + && inset->asInsetCollapsable()->forceLTR() + // ERT is an exception, since it doesn't go to output + && inset->lyxCode() != ERT_CODE)) && running_font.isRightToLeft()) { if (running_font.language()->lang() == "farsi") os << "\\beginL{}"; diff --git a/src/insets/InsetCollapsable.h b/src/insets/InsetCollapsable.h index dbc88341d6..c8733ff48f 100644 --- a/src/insets/InsetCollapsable.h +++ b/src/insets/InsetCollapsable.h @@ -147,6 +147,8 @@ public: virtual bool isFreeSpacing() const { return layout_->freespacing; } /// Don't eliminate empty paragraphs virtual bool allowEmpty() const { return layout_->keepempty; } + /// Force inset into LTR environment if surroundings are RTL + virtual bool forceLTR() const { return layout_->forceltr; } protected: /// -- 2.39.2