From 96d9330d9dbc77e6460ba5b4004759f6e015b59a Mon Sep 17 00:00:00 2001 From: Ole Christian Eidheim Date: Thu, 27 Aug 2015 13:53:37 +0200 Subject: [PATCH] Added slight delay on tag-similar-tokens so that scrolling up/down with arrowkeys is more smooth. --- src/source.cc | 8 ++++++-- src/source.h | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/source.cc b/src/source.cc index 3a12d4c..6f652f5 100644 --- a/src/source.cc +++ b/src/source.cc @@ -1340,8 +1340,12 @@ Source::ClangViewAutocomplete(file_path, project_path) { get_buffer()->signal_mark_set().connect([this](const Gtk::TextBuffer::iterator& iterator, const Glib::RefPtr& mark){ if(mark->get_name()=="insert") { - auto usr=get_token(); - tag_similar_tokens(usr); + delayed_tag_similar_tokens_connection.disconnect(); + delayed_tag_similar_tokens_connection=Glib::signal_timeout().connect([this]() { + auto usr=get_token(); + tag_similar_tokens(usr); + return false; + }, 100); } }); diff --git a/src/source.h b/src/source.h index f71d3ee..5380f00 100644 --- a/src/source.h +++ b/src/source.h @@ -177,6 +177,7 @@ namespace Source { private: Glib::RefPtr similar_tokens_tag; std::string last_similar_tokens_tagged; + sigc::connection delayed_tag_similar_tokens_connection; std::unique_ptr selection_dialog; bool renaming=false; };