cur.screenUpdateFlags(Update::Force | Update::FitCursor);
cur.dispatched();
doDispatch(cur, cmd);
+ if (cmd.origin() == FuncRequest::TOC)
+ cur.bv().processUpdateFlags(cur.result().screenUpdate());
}
bool Inset::editing(BufferView const * bv) const
{
- return bv->cursor().isInside(this);
+ if (bv->mouseSelecting())
+ // Avoid flicker when selecting with the mouse: when so, do not make
+ // decisions about metrics based on the mouse location.
+ return bv->cursor().realAnchor().isInside(this);
+ else
+ return bv->cursor().isInside(this);
}