Better fix for bug #6270. The outer braces are swallowed only for user

defined macros, so better use a brace inset only when strictly needed.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31789 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Enrico Forestieri 2009-10-29 13:24:02 +00:00
parent 9e7fda9130
commit 424e3da04c

View File

@ -1423,8 +1423,7 @@ bool Cursor::macroModeClose()
InsetMathUnknown * p = activeMacro();
p->finalize();
MathData selection;
// enclose selection in braces (bug #6270)
asArray('{' + p->selection() + '}', selection);
asArray(p->selection(), selection);
docstring const s = p->name();
--pos();
cell().erase(pos());
@ -1467,7 +1466,7 @@ bool Cursor::macroModeClose()
// finally put the macro argument behind, if needed
if (macroArg) {
if (selection.size() > 1)
if (selection.size() > 1 || selection[0]->asScriptInset())
plainInsert(MathAtom(new InsetMathBrace(selection)));
else
insert(selection);