diff --git a/package.json b/package.json
index 30a317b2..5409645b 100644
--- a/package.json
+++ b/package.json
@@ -25,6 +25,7 @@
     "object-path": "^0.11.3",
     "phoenix": "^1.3.0",
     "popper.js": "^1.14.7",
+    "portal-vue": "^2.1.4",
     "sanitize-html": "^1.13.0",
     "v-click-outside": "^2.1.1",
     "vue": "^2.5.13",
diff --git a/src/main.js b/src/main.js
index 92f843b1..e12db6a3 100644
--- a/src/main.js
+++ b/src/main.js
@@ -24,6 +24,7 @@ import messages from './i18n/messages.js'
 
 import VueChatScroll from 'vue-chat-scroll'
 import VueClickOutside from 'v-click-outside'
+import PortalVue from 'portal-vue'
 
 import afterStoreSetup from './boot/after_store.js'
 
@@ -42,6 +43,7 @@ Vue.use(VueTimeago, {
 Vue.use(VueI18n)
 Vue.use(VueChatScroll)
 Vue.use(VueClickOutside)
+Vue.use(PortalVue)
 
 const i18n = new VueI18n({
   // By default, use the browser locale, we will update it if neccessary
diff --git a/yarn.lock b/yarn.lock
index cfc600c9..a91b520f 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6101,6 +6101,10 @@ popper.js@^1.14.7:
   version "1.14.7"
   resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.14.7.tgz#e31ec06cfac6a97a53280c3e55e4e0c860e7738e"
 
+portal-vue@^2.1.4:
+  version "2.1.4"
+  resolved "https://registry.yarnpkg.com/portal-vue/-/portal-vue-2.1.4.tgz#1fc679d77e294dc8d026f1eb84aa467de11b392e"
+
 posix-character-classes@^0.1.0:
   version "0.1.1"
   resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"