From e8f5f7d23d7762b795a0a90d9959ee9ab829ce0e Mon Sep 17 00:00:00 2001
From: Paul Holden <paulh@moodle.com>
Date: Fri, 26 Jan 2024 16:00:39 +0000
Subject: [PATCH] MDL-80562 reportbuilder: switch to menu/ellipsis icon for
 actions.

---
 reportbuilder/classes/table/system_report_table.php | 5 ++++-
 theme/boost/scss/moodle/icons.scss                  | 2 +-
 theme/boost/scss/moodle/reportbuilder.scss          | 5 +++++
 theme/boost/style/moodle.css                        | 5 +++++
 theme/classic/style/moodle.css                      | 5 +++++
 5 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/reportbuilder/classes/table/system_report_table.php b/reportbuilder/classes/table/system_report_table.php
index a05e4ff1c2e..d7c108a6de5 100644
--- a/reportbuilder/classes/table/system_report_table.php
+++ b/reportbuilder/classes/table/system_report_table.php
@@ -259,7 +259,10 @@ class system_report_table extends base_report_table {
         global $OUTPUT;
 
         $menu = new action_menu();
-        $menu->set_menu_trigger($OUTPUT->pix_icon('a/setting', get_string('actions', 'core_reportbuilder')));
+        $menu->set_menu_trigger(
+            $OUTPUT->pix_icon('i/menu', get_string('actions', 'core_reportbuilder')),
+            'btn btn-icon d-flex align-items-center justify-content-center no-caret',
+        );
 
         $actions = array_filter($this->report->get_actions(), function($action) use ($row) {
             // Only return dividers and action items who can be displayed for current users.
diff --git a/theme/boost/scss/moodle/icons.scss b/theme/boost/scss/moodle/icons.scss
index 60ba18a5260..c4b5f3f3554 100644
--- a/theme/boost/scss/moodle/icons.scss
+++ b/theme/boost/scss/moodle/icons.scss
@@ -4,7 +4,7 @@
 // Size of default icons.
 $icon-width: 16px;
 $icon-height: 16px;
-// Size of big icons.
+// Size of medium icons.
 $icon-medium-width: 32px;
 $icon-medium-height: 32px;
 // Size of big icons.
diff --git a/theme/boost/scss/moodle/reportbuilder.scss b/theme/boost/scss/moodle/reportbuilder.scss
index 2d97d8d1c5f..03d633e6f9c 100644
--- a/theme/boost/scss/moodle/reportbuilder.scss
+++ b/theme/boost/scss/moodle/reportbuilder.scss
@@ -26,6 +26,11 @@
     }
     .action-menu .menubar {
         justify-content: end;
+        .btn.btn-icon {
+            height: $icon-medium-height;
+            width: $icon-medium-width;
+            @include border-radius();
+        }
     }
 }
 
diff --git a/theme/boost/style/moodle.css b/theme/boost/style/moodle.css
index 4ca9d8a606a..11529e5dfb4 100644
--- a/theme/boost/style/moodle.css
+++ b/theme/boost/style/moodle.css
@@ -38077,6 +38077,11 @@ div.editor_atto_toolbar button .icon {
 .reportbuilder-table .action-menu .menubar {
   justify-content: end;
 }
+.reportbuilder-table .action-menu .menubar .btn.btn-icon {
+  height: 32px;
+  width: 32px;
+  border-radius: 0.5rem;
+}
 
 .reportbuilder-wrapper .filters-dropdown {
   width: 27rem;
diff --git a/theme/classic/style/moodle.css b/theme/classic/style/moodle.css
index 8091f1f81f0..c46a48aa8d9 100644
--- a/theme/classic/style/moodle.css
+++ b/theme/classic/style/moodle.css
@@ -38011,6 +38011,11 @@ div.editor_atto_toolbar button .icon {
 .reportbuilder-table .action-menu .menubar {
   justify-content: end;
 }
+.reportbuilder-table .action-menu .menubar .btn.btn-icon {
+  height: 32px;
+  width: 32px;
+  border-radius: 0.25rem;
+}
 
 .reportbuilder-wrapper .filters-dropdown {
   width: 27rem;