diff --git a/resources/manager_window.ui b/resources/manager_window.ui
index d5768623835f6f71377bc893a75f34c2fbcc6603..111759a879dfad0eeee04a74a479aa7bba34b8cf 100644
--- a/resources/manager_window.ui
+++ b/resources/manager_window.ui
@@ -985,6 +985,7 @@
             <property name="can_focus">True</property>
             <property name="receives_default">False</property>
             <property name="popover">popovermenu</property>
+            <signal name="toggled" handler="on_menu_button_toggled" swapped="no"/>
             <child>
               <object class="GtkImage" id="menu_icon">
                 <property name="visible">True</property>
diff --git a/resources/updater_window.ui b/resources/updater_window.ui
index 8daca80af74c1d67ec2f27f1067c0b28f0f3fc5c..b7f1fa6b50b58fcfb15c900935e814a0d4c607e9 100644
--- a/resources/updater_window.ui
+++ b/resources/updater_window.ui
@@ -430,6 +430,7 @@
             <property name="can_focus">True</property>
             <property name="receives_default">False</property>
             <property name="popover">popovermenu</property>
+            <signal name="toggled" handler="on_menu_button_toggled" swapped="no"/>
             <child>
               <object class="GtkImage" id="menu_icon">
                 <property name="visible">True</property>
diff --git a/src/manager_window.vala b/src/manager_window.vala
index 6f2a7878ea3b7d7bcb58a13e56f98b5bfab24b5b..a71dda982b579db3f0c645ffad9bb91989be0595 100644
--- a/src/manager_window.vala
+++ b/src/manager_window.vala
@@ -51,6 +51,8 @@ namespace Pamac {
 		[GtkChild]
 		Gtk.Button button_back;
 		[GtkChild]
+		Gtk.ModelButton preferences_button;
+		[GtkChild]
 		Gtk.TreeView packages_treeview;
 		[GtkChild]
 		Gtk.TreeViewColumn packages_state_column;
@@ -1428,6 +1430,11 @@ namespace Pamac {
 			refresh_packages_list ();
 		}
 
+		[GtkCallback]
+		void on_menu_button_toggled () {
+			preferences_button.visible = !transaction_running;
+		}
+
 		[GtkCallback]
 		void on_history_button_clicked () {
 			transaction.run_history_dialog ();
diff --git a/src/updater_window.vala b/src/updater_window.vala
index bf3c9690e22fe5ccec5e5482c0987ed2e5fa671d..6bedfeecf7e08db0a2cd9b1685bac64930d74825 100644
--- a/src/updater_window.vala
+++ b/src/updater_window.vala
@@ -25,6 +25,8 @@ namespace Pamac {
 		[GtkChild]
 		Gtk.HeaderBar headerbar;
 		[GtkChild]
+		Gtk.ModelButton preferences_button;
+		[GtkChild]
 		Gtk.StackSwitcher stackswitcher;
 		[GtkChild]
 		Gtk.ScrolledWindow repos_scrolledwindow;
@@ -148,6 +150,11 @@ namespace Pamac {
 			}
 		}
 
+		[GtkCallback]
+		void on_menu_button_toggled () {
+			preferences_button.visible = !transaction_running;
+		}
+
 		[GtkCallback]
 		void on_preferences_button_clicked () {
 			transaction.run_preferences_dialog.begin (() => {