mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-26 19:25:39 +00:00
Reset font formatting of inset entries on creation (#11961)
This commit is contained in:
parent
6adb083384
commit
92aa12317e
@ -243,7 +243,8 @@ static void ipaChar(Cursor & cur, InsetIPAChar::Kind kind)
|
|||||||
|
|
||||||
|
|
||||||
static bool doInsertInset(Cursor & cur, Text * text,
|
static bool doInsertInset(Cursor & cur, Text * text,
|
||||||
FuncRequest const & cmd, bool edit, bool pastesel)
|
FuncRequest const & cmd, bool edit,
|
||||||
|
bool pastesel, bool resetfont = false)
|
||||||
{
|
{
|
||||||
Buffer & buffer = cur.bv().buffer();
|
Buffer & buffer = cur.bv().buffer();
|
||||||
BufferParams const & bparams = buffer.params();
|
BufferParams const & bparams = buffer.params();
|
||||||
@ -346,6 +347,13 @@ static bool doInsertInset(Cursor & cur, Text * text,
|
|||||||
cur.clearSelection(); // bug 393
|
cur.clearSelection(); // bug 393
|
||||||
cur.finishUndo();
|
cur.finishUndo();
|
||||||
if (inset_text) {
|
if (inset_text) {
|
||||||
|
if (resetfont) {
|
||||||
|
// Reset of font (not language) is requested.
|
||||||
|
// Used by InsetIndex (#11961).
|
||||||
|
Language const * lang = cur.getFont().language();
|
||||||
|
Font font(bparams.getFont().fontInfo(), lang);
|
||||||
|
cur.paragraph().resetFonts(font);
|
||||||
|
}
|
||||||
inset_text->fixParagraphsFont();
|
inset_text->fixParagraphsFont();
|
||||||
cur.pos() = 0;
|
cur.pos() = 0;
|
||||||
cur.pit() = 0;
|
cur.pit() = 0;
|
||||||
@ -2105,16 +2113,19 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
|
|||||||
case LFUN_INDEX_INSERT:
|
case LFUN_INDEX_INSERT:
|
||||||
case LFUN_PREVIEW_INSERT:
|
case LFUN_PREVIEW_INSERT:
|
||||||
case LFUN_SCRIPT_INSERT:
|
case LFUN_SCRIPT_INSERT:
|
||||||
case LFUN_IPA_INSERT:
|
case LFUN_IPA_INSERT: {
|
||||||
|
// Indexes reset font formatting (#11961)
|
||||||
|
bool const resetfont = cmd.action() == LFUN_INDEX_INSERT;
|
||||||
// Open the inset, and move the current selection
|
// Open the inset, and move the current selection
|
||||||
// inside it.
|
// inside it.
|
||||||
doInsertInset(cur, this, cmd, true, true);
|
doInsertInset(cur, this, cmd, true, true, resetfont);
|
||||||
cur.posForward();
|
cur.posForward();
|
||||||
cur.setCurrentFont();
|
cur.setCurrentFont();
|
||||||
// Some insets are numbered, others are shown in the outline pane so
|
// Some insets are numbered, others are shown in the outline pane so
|
||||||
// let's update the labels and the toc backend.
|
// let's update the labels and the toc backend.
|
||||||
cur.forceBufferUpdate();
|
cur.forceBufferUpdate();
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case LFUN_FLEX_INSERT: {
|
case LFUN_FLEX_INSERT: {
|
||||||
// Open the inset, and move the current selection
|
// Open the inset, and move the current selection
|
||||||
|
Loading…
Reference in New Issue
Block a user