diff --git a/resources/frontend_client/app/dashboard/dashboard.controllers.js b/resources/frontend_client/app/dashboard/dashboard.controllers.js
index cfc6c7473c5b321b761fafbed4ab1564ed5b269b..9a7f6b7f5ff50cd0e1daf42613a9a6d59c8dca30 100644
--- a/resources/frontend_client/app/dashboard/dashboard.controllers.js
+++ b/resources/frontend_client/app/dashboard/dashboard.controllers.js
@@ -25,6 +25,10 @@ DashboardControllers.controller('DashList', ['$scope', '$location', 'Dashboard',
         refreshListing();
     });
 
+    $scope.$on("dashboard:update", function(event, dashboardId) {
+        refreshListing();
+    });
+
     // always initialize with a fresh listing
     refreshListing();
 
diff --git a/resources/frontend_client/app/dashboard/dashboard.directives.js b/resources/frontend_client/app/dashboard/dashboard.directives.js
index 324329ff91b1dcab13970c8392a85774b1472e14..b8f3a0077254859123a7c74b87d7a7c230cef687 100644
--- a/resources/frontend_client/app/dashboard/dashboard.directives.js
+++ b/resources/frontend_client/app/dashboard/dashboard.directives.js
@@ -29,6 +29,8 @@ DashboardDirectives.directive('mbDashboardSaver', ['CorvusCore', 'Dashboard', '$
                                         scope.callback(result);
                                     }
 
+                                    $rootScope.$broadcast("dashboard:update", scope.dashboard.id);
+
                                     // just close out the modal now that we're done
                                     $modalInstance.close();