Prevent the spelling highlighter from disabling itself
authorBernhard Scheirle <bernhard+git@scheirle.de>
Fri, 19 Aug 2016 06:15:03 +0000 (08:15 +0200)
committerManuel Nickschas <sputnick@quassel-irc.org>
Wed, 14 Sep 2016 21:08:43 +0000 (23:08 +0200)
Resolves GH-241.

src/qtui/inputwidget.cpp
src/uisupport/multilineedit.cpp
src/uisupport/multilineedit.h

index d95f01a..a664b6a 100644 (file)
@@ -504,12 +504,6 @@ void InputWidget::onTextEntered(const QString &text)
     fmt.clearForeground();
     fmt.clearBackground();
     inputLine()->setCurrentCharFormat(fmt);
-
-#ifdef HAVE_KDE
-    // Set highlighter back to active in case it was deactivated by too many errors.
-    if (ui.inputEdit->highlighter())
-        ui.inputEdit->highlighter()->setActive(true);
-#endif
 }
 
 
index 90eadaa..5ace7d6 100644 (file)
@@ -90,6 +90,14 @@ MultiLineEdit::~MultiLineEdit()
 {
 }
 
+#if defined HAVE_KF5 || defined HAVE_KDE4
+void MultiLineEdit::createHighlighter()
+{
+    KTextEdit::createHighlighter();
+    if (highlighter())
+        highlighter()->setAutomatic(false);
+}
+#endif
 
 void MultiLineEdit::setCustomFont(const QFont &font)
 {
index 6924fb2..e6b58e1 100644 (file)
@@ -74,6 +74,9 @@ public:
     inline bool emacsMode() const { return _emacsMode; }
 
     void addCompletionSpace();
+#if defined HAVE_KF5 || defined HAVE_KDE4
+    virtual void createHighlighter() override;
+#endif
 
 public slots:
     void setMode(Mode mode);