Fix the behaviour of insensitive actions, which was broken when

Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>

	Fix the behaviour of insensitive actions, which was broken
	when gtk_action_activate() was changed to pay attention to
	sensitivity  (#129557, Christian Persch)

	* gtk/gtkaction.h:
	* gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
	function to emit an activate signal without regard to sensitivity.

	* gtk/gtkradioaction.c:
	* gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
	instead of gtk_action_activate().
This commit is contained in:
Matthias Clasen 2003-12-19 00:39:10 +00:00 committed by Matthias Clasen
parent 4d9e9afdc1
commit bc5d7efe97
9 changed files with 81 additions and 3 deletions

View File

@ -1,3 +1,17 @@
Fri Dec 19 01:35:34 2003 Matthias Clasen <maclas@gmx.de>
Fix the behaviour of insensitive actions, which was broken
when gtk_action_activate() was changed to pay attention to
sensitivity (#129557, Christian Persch)
* gtk/gtkaction.h:
* gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
function to emit an activate signal without regard to sensitivity.
* gtk/gtkradioaction.c:
* gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
instead of gtk_action_activate().
Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org> Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org>
Fixes #110249, reworked patch from Joshua N Pritikin. Fixes #110249, reworked patch from Joshua N Pritikin.

View File

@ -1,3 +1,17 @@
Fri Dec 19 01:35:34 2003 Matthias Clasen <maclas@gmx.de>
Fix the behaviour of insensitive actions, which was broken
when gtk_action_activate() was changed to pay attention to
sensitivity (#129557, Christian Persch)
* gtk/gtkaction.h:
* gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
function to emit an activate signal without regard to sensitivity.
* gtk/gtkradioaction.c:
* gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
instead of gtk_action_activate().
Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org> Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org>
Fixes #110249, reworked patch from Joshua N Pritikin. Fixes #110249, reworked patch from Joshua N Pritikin.

View File

@ -1,3 +1,17 @@
Fri Dec 19 01:35:34 2003 Matthias Clasen <maclas@gmx.de>
Fix the behaviour of insensitive actions, which was broken
when gtk_action_activate() was changed to pay attention to
sensitivity (#129557, Christian Persch)
* gtk/gtkaction.h:
* gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
function to emit an activate signal without regard to sensitivity.
* gtk/gtkradioaction.c:
* gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
instead of gtk_action_activate().
Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org> Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org>
Fixes #110249, reworked patch from Joshua N Pritikin. Fixes #110249, reworked patch from Joshua N Pritikin.

View File

@ -1,3 +1,17 @@
Fri Dec 19 01:35:34 2003 Matthias Clasen <maclas@gmx.de>
Fix the behaviour of insensitive actions, which was broken
when gtk_action_activate() was changed to pay attention to
sensitivity (#129557, Christian Persch)
* gtk/gtkaction.h:
* gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
function to emit an activate signal without regard to sensitivity.
* gtk/gtkradioaction.c:
* gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
instead of gtk_action_activate().
Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org> Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org>
Fixes #110249, reworked patch from Joshua N Pritikin. Fixes #110249, reworked patch from Joshua N Pritikin.

View File

@ -1,3 +1,17 @@
Fri Dec 19 01:35:34 2003 Matthias Clasen <maclas@gmx.de>
Fix the behaviour of insensitive actions, which was broken
when gtk_action_activate() was changed to pay attention to
sensitivity (#129557, Christian Persch)
* gtk/gtkaction.h:
* gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
function to emit an activate signal without regard to sensitivity.
* gtk/gtkradioaction.c:
* gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
instead of gtk_action_activate().
Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org> Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org>
Fixes #110249, reworked patch from Joshua N Pritikin. Fixes #110249, reworked patch from Joshua N Pritikin.

View File

@ -871,6 +871,12 @@ disconnect_proxy (GtkAction *action,
g_signal_emit (action, action_signals[DISCONNECT_PROXY], 0, proxy); g_signal_emit (action, action_signals[DISCONNECT_PROXY], 0, proxy);
} }
void
_gtk_action_emit_activate (GtkAction *action)
{
g_signal_emit (action, action_signals[ACTIVATE], 0);
}
/** /**
* gtk_action_activate: * gtk_action_activate:
* @action: the action object * @action: the action object
@ -889,7 +895,7 @@ gtk_action_activate (GtkAction *action)
g_return_if_fail (GTK_IS_ACTION (action)); g_return_if_fail (GTK_IS_ACTION (action));
if (action->private_data->sensitive) if (action->private_data->sensitive)
g_signal_emit (action, action_signals[ACTIVATE], 0); _gtk_action_emit_activate (action);
} }
/** /**

View File

@ -100,6 +100,7 @@ void gtk_action_block_activate_from (GtkAction *action,
GtkWidget *proxy); GtkWidget *proxy);
void gtk_action_unblock_activate_from (GtkAction *action, void gtk_action_unblock_activate_from (GtkAction *action,
GtkWidget *proxy); GtkWidget *proxy);
void _gtk_action_emit_activate (GtkAction *action);
/* protected ... for use by action groups */ /* protected ... for use by action groups */
void gtk_action_set_accel_path (GtkAction *action, void gtk_action_set_accel_path (GtkAction *action,
@ -107,6 +108,7 @@ void gtk_action_set_accel_path (GtkAction *action,
void gtk_action_set_accel_group (GtkAction *action, void gtk_action_set_accel_group (GtkAction *action,
GtkAccelGroup *accel_group); GtkAccelGroup *accel_group);
G_END_DECLS G_END_DECLS
#endif /* __GTK_ACTION_H__ */ #endif /* __GTK_ACTION_H__ */

View File

@ -276,7 +276,7 @@ gtk_radio_action_activate (GtkAction *action)
if (tmp_action->private_data->active && (tmp_action != toggle_action)) if (tmp_action->private_data->active && (tmp_action != toggle_action))
{ {
gtk_action_activate (GTK_ACTION (tmp_action)); _gtk_action_emit_activate (GTK_ACTION (tmp_action));
break; break;
} }
} }

View File

@ -301,7 +301,7 @@ gtk_toggle_action_set_active (GtkToggleAction *action,
if (action->private_data->active != is_active) if (action->private_data->active != is_active)
{ {
gtk_action_activate (GTK_ACTION (action)); _gtk_action_emit_activate (GTK_ACTION (action));
} }
} }