diff --git a/src/mathed/ChangeLog b/src/mathed/ChangeLog index 3da70dd673..306f2f372d 100644 --- a/src/mathed/ChangeLog +++ b/src/mathed/ChangeLog @@ -3,6 +3,9 @@ * formula.C (descent): add an arbitrary 12 pixels to the descent when previewing a display mode equation, analogous to André's code elsewhere. + * math_nestinset.C (notifyCursorLeaves): generate the preview only + when leaving an inset with depth() == 1. + 2002-07-22 Jean-Marc Lasgouttes * math_support.C (mathed_draw_deco): fix rounding bug for rotated diff --git a/src/mathed/math_nestinset.C b/src/mathed/math_nestinset.C index 520474d197..7cc4da7c80 100644 --- a/src/mathed/math_nestinset.C +++ b/src/mathed/math_nestinset.C @@ -277,12 +277,16 @@ MathArray MathNestInset::glue() const void MathNestInset::notifyCursorLeaves() { - //lyxerr << "leaving " << *this << "\n"; - if (!mathcursor || !grfx::Previews::activated()) + // Generate a preview only if previews are active and we are leaving + // the InsetFormula itself + if (!grfx::Previews::activated() || + !mathcursor || mathcursor->depth() != 1) return; InsetFormulaBase * inset = mathcursor->formula(); BufferView * bufferview = inset->view(); + + // Paranoia check if (!bufferview || !bufferview->buffer()) return;