if (edit)
inset->edit(cur, true);
// Now put this into inset
- cur.text()->insertStringAsLines(cur, ds, Font(inherit_font));
+ Font const f(inherit_font, cur.current_font.language());
+ cur.text()->insertStringAsLines(cur, ds, f);
cur.leaveInset(*inset);
return true;
}
cur.noScreenUpdate();
LASSERT(cur.text() == this, /**/);
- CursorSlice oldTopSlice = cur.top();
- bool oldBoundary = cur.boundary();
- bool sel = cur.selection();
+ CursorSlice const oldTopSlice = cur.top();
+ bool const oldBoundary = cur.boundary();
+ bool const oldSelection = cur.selection();
// Signals that, even if needsUpdate == false, an update of the
// cursor paragraph is required
bool singleParUpdate = lyxaction.funcHasFlag(cmd.action(),
// Signals that a full-screen update is required
bool needsUpdate = !(lyxaction.funcHasFlag(cmd.action(),
LyXAction::NoUpdate) || singleParUpdate);
- int const last_pid = cur.paragraph().id();
- pos_type const last_pos = cur.pos();
- bool const last_misspelled = lyxrc.spellcheck_continuously && cur.paragraph().isMisspelled(cur.pos());
+ bool const last_misspelled = lyxrc.spellcheck_continuously
+ && cur.paragraph().isMisspelled(cur.pos(), true);
FuncCode const act = cmd.action();
switch (act) {
Language const * lang = languages.getLanguage(to_utf8(cmd.argument()));
if (!lang)
break;
+ selectWordWhenUnderCursor(cur, WHOLE_WORD_STRICT);
Font font(ignore_font, lang);
toggleAndShow(cur, this, font);
break;
if (!cur.inTexted()) {
// move from regular text to math
needsUpdate = last_misspelled;
- } else if (cur.paragraph().id() != last_pid || cur.pos() != last_pos) {
+ } else if (oldTopSlice != cur.top() || oldBoundary != cur.boundary()) {
// move inside regular text
- needsUpdate = last_misspelled || cur.paragraph().isMisspelled(cur.pos());
+ needsUpdate = last_misspelled
+ || cur.paragraph().isMisspelled(cur.pos(), true);
}
}
if (!needsUpdate
&& &oldTopSlice.inset() == &cur.inset()
&& oldTopSlice.idx() == cur.idx()
- && !sel // sel is a backup of cur.selection() at the beginning of the function.
+ && !oldSelection // oldSelection is a backup of cur.selection() at the beginning of the function.
&& !cur.selection())
// FIXME: it would be better if we could just do this
//
// make sure we know about such floats
if (cit == floats.end() ||
// and that we know how to generate a list of them
- (!cit->second.needsFloatPkg() && cit->second.listCommand().empty())) {
+ (!cit->second.usesFloatPkg() && cit->second.listCommand().empty())) {
flag.setUnknown(true);
// probably not necessary, but...
enable = false;