GuiCompleter::GuiCompleter(GuiWorkArea * gui, QObject * parent)
- : QCompleter(parent), gui_(gui), updateLock_(0),
+ : QCompleter(parent), gui_(gui), old_cursor_(0), updateLock_(0),
inlineVisible_(false), popupVisible_(false),
modelActive_(false)
{
model_ = new GuiCompletionModel(this, 0);
setModel(model_);
setCompletionMode(QCompleter::PopupCompletion);
+ setCaseSensitivity(Qt::CaseInsensitive);
setWidget(gui_);
// create the popup
if (!inlineVisible() && possibleInlineState && start
&& cur.inset().automaticInlineCompletion())
inline_timer_.start(int(lyxrc.completion_inline_delay * 1000));
+ else {
+ // no inline completion, hence a metrics update is needed
+ if (!(cur.disp_.update() & Update::Force))
+ cur.updateFlags(cur.disp_.update() | Update::SinglePar);
+ }
// update prefix if any completion is possible
bool modelActive = modelActive_ && model()->rowCount() > 0;
void GuiCompleter::hideInline(Cursor & cur)
{
- gui_->bufferView().setInlineCompletion(cur, DocIterator(), docstring());
+ gui_->bufferView().setInlineCompletion(cur, DocIterator(cur.buffer()), docstring());
inlineVisible_ = false;
if (inline_timer_.isActive())