diff --git a/src/plugins/duieditor/duieditor.cpp b/src/plugins/duieditor/duieditor.cpp
index e07dd584744c502eecf3a494878fa7f575fbad4f..9f361cbb400ab149a086d02bc828a8a4839add4b 100644
--- a/src/plugins/duieditor/duieditor.cpp
+++ b/src/plugins/duieditor/duieditor.cpp
@@ -583,8 +583,6 @@ QStringList ScriptEditor::keywords() const
 
     if (DuiHighlighter *highlighter = qobject_cast<DuiHighlighter*>(baseTextDocument()->syntaxHighlighter())) {
         words = highlighter->keywords().toList();
-        words.append(QLatin1String("property")); // ### move
-        words.append(QLatin1String("signal")); // ### move
     }
 
     return words;
diff --git a/src/plugins/duieditor/duihighlighter.cpp b/src/plugins/duieditor/duihighlighter.cpp
index 7c8d3ec5980a7fac766fcd210fce8c432d8b6a82..9d71053bb533001f1a0e9f3555a73dc961b0cad1 100644
--- a/src/plugins/duieditor/duihighlighter.cpp
+++ b/src/plugins/duieditor/duihighlighter.cpp
@@ -40,6 +40,9 @@ DuiHighlighter::DuiHighlighter(QTextDocument *parent) :
     setDuiEnabled(true);
     m_currentBlockParentheses.reserve(20);
     m_braceDepth = 0;
+
+    qscriptKeywords.insert(QLatin1String("property"));
+    qscriptKeywords.insert(QLatin1String("signal"));
 }
 
 int DuiHighlighter::onBlockStart()