diff --git a/views.install b/views.install
index 90c0b64e209063956f845a946a80549881aabbe4..d8ce40ec382f493d2ca0fe848129747be81d2e27 100644
--- a/views.install
+++ b/views.install
@@ -114,6 +114,7 @@ function views_schema_6000() {
       'save callback' => 'views_save_view',
       'delete callback' => 'views_delete_view',
       'export callback' => 'views_export_view',
+      'status callback' => 'views_export_status',
       'cache defaults' => TRUE,
       'default cache bin' => 'cache_views',
     ),
diff --git a/views.module b/views.module
index dd98acb309cfe7ab1163598c71545f2cb24f0484..e49d51a9487b873c08d6154bbf5a67a33ef6d684 100644
--- a/views.module
+++ b/views.module
@@ -1613,6 +1613,16 @@ function views_export_view(&$view, $indent = '') {
   return $view->export($indent);
 }
 
+/**
+ * Export callback to change view status.
+ */
+function views_export_status($view, $status) {
+  ctools_export_set_object_status($view, $status);
+  views_invalidate_cache();
+  // Set the menu to be rebuilt.
+  variable_set('menu_rebuild_needed', TRUE);
+}
+
 // ------------------------------------------------------------------
 // Views debug helper functions