diff options
author | infirit <[email protected]> | 2014-12-19 00:35:27 +0100 |
---|---|---|
committer | infirit <[email protected]> | 2014-12-19 00:35:27 +0100 |
commit | 51357cc58ed32763b7eaff97d9ba04507ac0665d (patch) | |
tree | d8edd30bdff48a0f9aa75d9c2c6c45ad6e5ee710 /src/interface.cpp | |
parent | ee379181d3b6b89c23a660d027caa9c2d027aa7d (diff) | |
download | mate-system-monitor-51357cc58ed32763b7eaff97d9ba04507ac0665d.tar.bz2 mate-system-monitor-51357cc58ed32763b7eaff97d9ba04507ac0665d.tar.xz |
Disable priority changed handler while setting current priority
Taken from GSM commit: c00d94f3bfe2186428ef30e922042a555b7dc03a
From: Robert Roth <[email protected]>
Gnome bug: https://bugzilla.gnome.org/show_bug.cgi?id=667227
Diffstat (limited to 'src/interface.cpp')
-rw-r--r-- | src/interface.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/interface.cpp b/src/interface.cpp index 9d62d5e..f9428a4 100644 --- a/src/interface.cpp +++ b/src/interface.cpp @@ -883,6 +883,25 @@ update_sensitivity(ProcData *data) } } +void +block_priority_changed_handlers(ProcData *data, bool block) +{ + gint i; + if (block) { + for (i = 0; i != G_N_ELEMENTS(priority_menu_entries); ++i) { + GtkRadioAction *action = GTK_RADIO_ACTION(gtk_action_group_get_action(data->action_group, + priority_menu_entries[i].name)); + g_signal_handlers_block_by_func(action, (gpointer)cb_renice, data); + } + } else { + for (i = 0; i != G_N_ELEMENTS(priority_menu_entries); ++i) { + GtkRadioAction *action = GTK_RADIO_ACTION(gtk_action_group_get_action(data->action_group, + priority_menu_entries[i].name)); + g_signal_handlers_unblock_by_func(action, (gpointer)cb_renice, data); + } + } +} + static void cb_toggle_tree (GtkAction *action, gpointer data) { |