Fix bug #7068 (Crash when pressing down arrow in an equation when there is a suggestion)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/branches/BRANCH_1_6_X@36706 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Enrico Forestieri 2010-12-03 21:47:23 +00:00
parent 64af9accff
commit ca69246a27
4 changed files with 14 additions and 1 deletions

View File

@ -2535,6 +2535,12 @@ DocIterator const & BufferView::inlineCompletionPos() const
}
bool BufferView::fixInlineCompletionPos()
{
return d->inlineCompletionPos_.fixIfBroken();
}
bool samePar(DocIterator const & a, DocIterator const & b)
{
if (a.empty() && b.empty())

View File

@ -188,6 +188,8 @@ public:
size_t const & inlineCompletionUniqueChars() const;
/// return the position in the buffer of the inline completion postfix.
DocIterator const & inlineCompletionPos() const;
/// make sure inline completion position is OK
bool fixInlineCompletionPos();
/// set the inline completion postfix and its position in the buffer.
/// Updates the updateFlags in \c cur.
void setInlineCompletion(Cursor & cur, DocIterator const & pos,

View File

@ -1782,8 +1782,10 @@ void LyXFunc::dispatch(FuncRequest const & cmd)
if (view()->cursor() != old) {
old.fixIfBroken();
bool badcursor = notifyCursorLeaves(old, view()->cursor());
if (badcursor)
if (badcursor) {
view()->cursor().fixIfBroken();
view()->fixInlineCompletionPos();
}
}
if (theBufferList().isLoaded(buffer))

View File

@ -63,6 +63,9 @@ What's new
- Fix crash when using a computer algebra system from within AMS math
environments (bug 7058).
- Fix crash when pressing up or down arrow while editing a macro name and
an inline completion is suggested (bug 7068).
- Fix insertion of a user math macro through the math-insert lfun when a
selection is present (bug 6939).