diff --git a/resources/qml/Completer.qml b/resources/qml/Completer.qml
index abaee3dff6e265016a2bde20283d86045d014f21..b4061f8da5da496d07eb1913c3b08478dbf6283b 100644
--- a/resources/qml/Completer.qml
+++ b/resources/qml/Completer.qml
@@ -77,11 +77,19 @@ Popup {
     }
     padding: 1
     onAboutToShow: currentIndex = -1
-    height: listView.contentHeight + 2 // + 2 for the padding on top and bottom
+    // height: listView.contentHeight + 2 // + 2 for the padding on top and bottom
+    height: Math.min(listView.contentHeight + 2, 7*popup.avatarHeight + 2)
 
     ListView {
         id: listView
 
+        clip: true 
+        ScrollHelper {
+            flickable: parent
+            anchors.fill: parent
+            enabled: !Settings.mobileMode
+        }
+
         anchors.fill: parent
         implicitWidth: fullWidth ? parent.width : contentItem.childrenRect.width
         model: completer
diff --git a/src/CompletionProxyModel.h b/src/CompletionProxyModel.h
index 8a485aea9227be0edf659a9792a498e251fcc4b8..5c34826b3feee9e00a6b39564d2b6e73e5ea1635 100644
--- a/src/CompletionProxyModel.h
+++ b/src/CompletionProxyModel.h
@@ -151,7 +151,7 @@ class CompletionProxyModel : public QAbstractProxyModel
 public:
     CompletionProxyModel(QAbstractItemModel *model,
                          int max_mistakes       = 2,
-                         size_t max_completions = 7,
+                         size_t max_completions = 70,
                          QObject *parent        = nullptr);
 
     void invalidate();