]> git.lyx.org Git - lyx.git/blobdiff - src/Text2.cpp
Make sure we do not crash here in release mode.
[lyx.git] / src / Text2.cpp
index 606b6cfbac534abd0d7a89c8f8f757f0937e715e..ae82050fce1c5ca7b00cc83a1bf6b98ee3090ce0 100644 (file)
@@ -33,7 +33,6 @@
 #include "CutAndPaste.h"
 #include "DispatchResult.h"
 #include "ErrorList.h"
-//#include "FuncRequest.h"
 #include "Language.h"
 #include "Layout.h"
 #include "Lexer.h"
@@ -168,7 +167,7 @@ void Text::setInsetFont(BufferView const & bv, pit_type pit,
                pos_type pos, Font const & font, bool toggleall)
 {
        Inset * const inset = pars_[pit].getInset(pos);
-       LASSERT(inset && inset->noFontChange(), /**/);
+       LASSERT(inset && inset->resetFontEdit(), /**/);
 
        CursorSlice::idx_type endidx = inset->nargs();
        for (CursorSlice cs(*inset); cs.idx() != endidx; ++cs.idx()) {
@@ -346,17 +345,18 @@ void Text::setFont(BufferView const & bv, CursorSlice const & begin,
                pit_type const pit = dit.pit();
                pos_type const pos = dit.pos();
                Inset * inset = pars_[pit].getInset(pos);
-               if (inset && inset->noFontChange()) {
+               if (inset && inset->resetFontEdit()) {
                        // We need to propagate the font change to all
-                       // text cells of the inset (bug 1973).
-                       // FIXME: This should change, see documentation
-                       // of noFontChange in Inset.h
+                       // text cells of the inset (bugs 1973, 6919).
                        setInsetFont(bv, pit, pos, font, toggleall);
                }
                TextMetrics const & tm = bv.textMetrics(this);
                Font f = tm.displayFont(pit, pos);
                f.update(font, language, toggleall);
                setCharFont(pit, pos, f, tm.font_);
+               // font change may change language... 
+               // spell checker has to know that
+               pars_[pit].requestSpellCheck(pos);
        }
 }
 
@@ -917,8 +917,9 @@ void Text::deleteEmptyParagraphMechanism(pit_type first, pit_type last, bool tra
                        }
                }
 
-               // don't delete anything if this is the only remaining paragraph within the given range
-               // note: Text::acceptOrRejectChanges() sets the cursor to 'first' after calling DEPM
+               // don't delete anything if this is the only remaining paragraph
+               // within the given range. Note: Text::acceptOrRejectChanges()
+               // sets the cursor to 'first' after calling DEPM
                if (first == last)
                        continue;