diff --git a/src/settingsview/components/PluginListPreferencesView.qml b/src/settingsview/components/PluginListPreferencesView.qml
index 872d3950b21af0f0f56e92f7368e36afcf08e132..f63a7f31029315a93b16dab2910fcbd44e442825 100644
--- a/src/settingsview/components/PluginListPreferencesView.qml
+++ b/src/settingsview/components/PluginListPreferencesView.qml
@@ -43,12 +43,14 @@ Rectangle {
 
     visible: false
 
-    function resetPluginSlot(){
+    signal uninstalled
+
+    function resetPluginSlot() {
         resetPluginMessageBox.open()
     }
 
-    function resetPlugin(){
-        if (isLoaded){
+    function resetPlugin() {
+        if (isLoaded) {
             PluginModel.unloadPlugin(pluginId)
             PluginModel.resetPluginPreferencesValues(pluginId)
             PluginModel.loadPlugin(pluginId)
@@ -58,27 +60,26 @@ Rectangle {
         pluginPreferenceView.model = PluginAdapter.getPluginPreferencesModel(pluginId)
     }
 
-    function uninstallPluginSlot(){
+    function uninstallPluginSlot() {
         uninstallPluginMessageBox.open()
     }
 
-    function uninstallPlugin(){
+    function uninstallPlugin() {
         PluginModel.uninstallPlugin(pluginId)
+        uninstalled()
     }
 
     function setPreference(pluginId, preferenceKey, preferenceNewValue)
     {
-        if (isLoaded){
+        if (isLoaded) {
             PluginModel.unloadPlugin(pluginId)
             PluginModel.setPluginPreference(pluginId, preferenceKey, preferenceNewValue)
             PluginModel.loadPlugin(pluginId)
-        }
-        else {
+        } else
             PluginModel.setPluginPreference(pluginId, preferenceKey, preferenceNewValue)
-        }
     }
 
-    MessageDialog{
+    MessageDialog {
         id: uninstallPluginMessageBox
 
         title:qsTr("Uninstall plugin")
@@ -92,7 +93,7 @@ Rectangle {
         }
     }
 
-    MessageDialog{
+    MessageDialog {
         id: resetPluginMessageBox
 
         title:qsTr("Reset preferences")
diff --git a/src/settingsview/components/PluginListSettingsView.qml b/src/settingsview/components/PluginListSettingsView.qml
index 5dec9fbdbbba4ca03971643b5d1ab8993d02762b..ba46977a76ea18df37ff1dd9c0edc465e5028d63 100644
--- a/src/settingsview/components/PluginListSettingsView.qml
+++ b/src/settingsview/components/PluginListSettingsView.qml
@@ -24,6 +24,7 @@ import QtQuick.Layouts 1.3
 import Qt.labs.platform 1.1
 import QtGraphicalEffects 1.14
 import net.jami.Models 1.0
+import net.jami.Adapters 1.0
 import "../../commoncomponents"
 
 Rectangle {
@@ -31,29 +32,37 @@ Rectangle {
 
     property PluginListPreferencesView pluginListPreferencesView
 
+    Connections {
+        target: pluginListPreferencesView
+
+        function onUninstalled() {
+            pluginListView.model = PluginAdapter.getPluginSelectableModel()
+        }
+    }
+
     visible: false
 
-    function openPluginFileSlot(){
+    function openPluginFileSlot() {
         pluginPathDialog.open()
     }
 
-    function loadPluginSlot(pluginId, isLoaded){
+    function loadPluginSlot(pluginId, isLoaded) {
         var loaded = false
         if (isLoaded)
             PluginModel.unloadPlugin(pluginId)
         else
             loaded = PluginModel.loadPlugin(pluginId)
-        if(pluginListPreferencesView.pluginId === pluginId)
+        if (pluginListPreferencesView.pluginId === pluginId)
             pluginListPreferencesView.isLoaded = loaded
     }
 
-    function openPreferencesPluginSlot(pluginName, pluginIcon, pluginId, isLoaded){
+    function openPreferencesPluginSlot(pluginName, pluginIcon, pluginId, isLoaded) {
         if (pluginListPreferencesView.pluginId == pluginId || pluginListPreferencesView.pluginId == "")
             pluginListPreferencesView.visible = !pluginListPreferencesView.visible
 
-        if(!pluginListPreferencesView.visible){
+        if (!pluginListPreferencesView.visible) {
             pluginListPreferencesView.pluginId = ""
-        } else{
+        } else {
             pluginListPreferencesView.pluginName = pluginName
             pluginListPreferencesView.pluginIcon = pluginIcon
             pluginListPreferencesView.pluginId = pluginId
@@ -61,7 +70,7 @@ Rectangle {
         }
     }
 
-    function hidePreferences(){
+    function hidePreferences() {
         pluginListPreferencesView.pluginId = ""
         pluginListPreferencesView.visible = false
     }
@@ -79,6 +88,7 @@ Rectangle {
         onAccepted: {
             var url = UtilsAdapter.getAbsPath(file.toString())
             PluginModel.installPlugin(url, true)
+            pluginListView.model = PluginAdapter.getPluginSelectableModel()
         }
     }
 
@@ -117,9 +127,7 @@ Rectangle {
 
             text: qsTr("Install Plugin")
 
-            onClicked: {
-              openPluginFileSlot()
-            }
+            onClicked: openPluginFileSlot()
         }
 
         ListView {
@@ -131,28 +139,25 @@ Rectangle {
 
             model: PluginAdapter.getPluginSelectableModel()
 
-            delegate: PluginItemDelegate{
+            delegate: PluginItemDelegate {
                 id: pluginItemDelegate
 
                 width: pluginListView.width
                 height: 50
 
-                pluginName : PluginName
+                pluginName: PluginName
                 pluginId: PluginId
                 pluginIcon: PluginIcon
                 isLoaded: IsLoaded
 
-                onClicked: {
-                    pluginListView.currentIndex = index
-                }
+                onClicked: pluginListView.currentIndex = index
 
-                onBtnLoadPluginToggled:{
+                onBtnLoadPluginToggled: {
                     loadPluginSlot(pluginId, isLoaded)
+                    pluginListView.model = PluginAdapter.getPluginSelectableModel()
                 }
 
-                onBtnPreferencesPluginClicked:{
-                    openPreferencesPluginSlot(pluginName, pluginIcon, pluginId, isLoaded)
-                }
+                onBtnPreferencesPluginClicked: openPreferencesPluginSlot(pluginName, pluginIcon, pluginId, isLoaded)
             }
         }
     }