diff --git a/plugins/Events/Events.php b/plugins/Events/Events.php
index 406b7c94d1cce37cdcffabcfebfdafa4f7bc32e3..e178dc197b0fd8041ff26fa23dc3091d5e9acc1a 100644
--- a/plugins/Events/Events.php
+++ b/plugins/Events/Events.php
@@ -9,9 +9,11 @@
 namespace Piwik\Plugins\Events;
 
 use Piwik\Common;
+use Piwik\DataTable;
 use Piwik\Piwik;
 use Piwik\Plugin\Report;
 use Piwik\Plugin\ViewDataTable;
+use Piwik\Plugins\CoreVisualizations\Visualizations\HtmlTable\AllColumns;
 
 class Events extends \Piwik\Plugin
 {
@@ -24,7 +26,8 @@ class Events extends \Piwik\Plugin
             'Metrics.getDefaultMetricDocumentationTranslations' => 'addMetricDocumentationTranslations',
             'Metrics.getDefaultMetricTranslations' => 'addMetricTranslations',
             'ViewDataTable.configure'   => 'configureViewDataTable',
-            'Live.getAllVisitorDetails' => 'extendVisitorDetails'
+            'Live.getAllVisitorDetails' => 'extendVisitorDetails',
+            'AssetManager.getStylesheetFiles' => 'getStylesheetFiles',
         );
     }
 
@@ -145,9 +148,30 @@ class Events extends \Piwik\Plugin
         }
 
         $view->config->show_flatten_table = true;
-        $view->config->show_table_all_columns = false;
         $view->requestConfig->filter_sort_column = 'nb_events';
 
+        if ($view->isViewDataTableId(AllColumns::ID)) {
+            $view->config->filters[] = function (DataTable $table) use ($view) {
+                $columsToDisplay = array('label');
+
+                $columns = $table->getColumns();
+                if (in_array('nb_visits', $columns)) {
+                    $columsToDisplay[] = 'nb_visits';
+                }
+
+                if (in_array('nb_uniq_visitors', $columns)) {
+                    $columsToDisplay[] = 'nb_uniq_visitors';
+                }
+
+                $view->config->columns_to_display = array_merge($columsToDisplay, array('nb_events', 'sum_event_value', 'avg_event_value', 'min_event_value', 'max_event_value'));
+
+                if (!in_array($view->requestConfig->filter_sort_column, $view->config->columns_to_display)) {
+                    $view->requestConfig->filter_sort_column = 'nb_events';
+                }
+            };
+            $view->config->show_pivot_by_subtable = false;
+        }
+
         $labelTranslation = $this->getColumnTranslation($apiMethod);
         $view->config->addTranslation('label', $labelTranslation);
         $view->config->addTranslations($this->getMetricTranslations());
@@ -234,4 +258,9 @@ class Events extends \Piwik\Plugin
     {
         return Common::getRequestVar('secondaryDimension', false, 'string');
     }
+
+    public function getStylesheetFiles(&$stylesheets)
+    {
+        $stylesheets[] = "plugins/Events/stylesheets/datatable.less";
+    }
 }
diff --git a/plugins/Events/stylesheets/datatable.less b/plugins/Events/stylesheets/datatable.less
new file mode 100644
index 0000000000000000000000000000000000000000..d06692119d48c665df83cd9f1b324daf963de07b
--- /dev/null
+++ b/plugins/Events/stylesheets/datatable.less
@@ -0,0 +1,7 @@
+div[data-report="Events.getAaction"].dataTableVizAllColumns,
+div[data-report="Events.getName"].dataTableVizAllColumns,
+div[data-report="Events.getCategory"].dataTableVizAllColumns {
+  .dataTableWrapper {
+    width:1000px;
+  }
+}
\ No newline at end of file