Further simplification
This commit is contained in:
parent
02ea88bba2
commit
4892c8901b
@ -456,7 +456,7 @@ window_focus_in (GtkWidget *widget,
|
|||||||
if (focus == NULL || !gtk_widget_is_ancestor (focus, GTK_WIDGET (popover)))
|
if (focus == NULL || !gtk_widget_is_ancestor (focus, GTK_WIDGET (popover)))
|
||||||
gtk_widget_grab_focus (GTK_WIDGET (popover));
|
gtk_widget_grab_focus (GTK_WIDGET (popover));
|
||||||
|
|
||||||
if (priv->grab_notify_blocked)
|
if (priv->grab_notify_blocked && priv->widget)
|
||||||
g_signal_handler_unblock (priv->widget, priv->grab_notify_id);
|
g_signal_handler_unblock (priv->widget, priv->grab_notify_id);
|
||||||
|
|
||||||
priv->grab_notify_blocked = FALSE;
|
priv->grab_notify_blocked = FALSE;
|
||||||
@ -2097,7 +2097,6 @@ gtk_popover_update_relative_to (GtkPopover *popover,
|
|||||||
{
|
{
|
||||||
GtkPopoverPrivate *priv = popover->priv;
|
GtkPopoverPrivate *priv = popover->priv;
|
||||||
GtkStateFlags old_state = 0;
|
GtkStateFlags old_state = 0;
|
||||||
gboolean had_grab_notify_blocked = FALSE;
|
|
||||||
|
|
||||||
if (priv->widget == relative_to)
|
if (priv->widget == relative_to)
|
||||||
return;
|
return;
|
||||||
@ -2124,14 +2123,7 @@ gtk_popover_update_relative_to (GtkPopover *popover,
|
|||||||
if (g_signal_handler_is_connected (priv->widget, priv->state_changed_id))
|
if (g_signal_handler_is_connected (priv->widget, priv->state_changed_id))
|
||||||
g_signal_handler_disconnect (priv->widget, priv->state_changed_id);
|
g_signal_handler_disconnect (priv->widget, priv->state_changed_id);
|
||||||
if (g_signal_handler_is_connected (priv->widget, priv->grab_notify_id))
|
if (g_signal_handler_is_connected (priv->widget, priv->grab_notify_id))
|
||||||
{
|
g_signal_handler_disconnect (priv->widget, priv->grab_notify_id);
|
||||||
if (priv->grab_notify_blocked)
|
|
||||||
{
|
|
||||||
priv->grab_notify_blocked = FALSE;
|
|
||||||
had_grab_notify_blocked = TRUE;
|
|
||||||
}
|
|
||||||
g_signal_handler_disconnect (priv->widget, priv->grab_notify_id);
|
|
||||||
}
|
|
||||||
|
|
||||||
widget_unmanage_popover (priv->widget, popover);
|
widget_unmanage_popover (priv->widget, popover);
|
||||||
}
|
}
|
||||||
@ -2167,11 +2159,8 @@ gtk_popover_update_relative_to (GtkPopover *popover,
|
|||||||
g_signal_connect (priv->widget, "grab-notify",
|
g_signal_connect (priv->widget, "grab-notify",
|
||||||
G_CALLBACK (_gtk_popover_parent_grab_notify),
|
G_CALLBACK (_gtk_popover_parent_grab_notify),
|
||||||
popover);
|
popover);
|
||||||
if (had_grab_notify_blocked)
|
if (priv->grab_notify_blocked)
|
||||||
{
|
g_signal_handler_block (priv->widget, priv->grab_notify_id);
|
||||||
g_signal_handler_block (priv->widget, priv->grab_notify_id);
|
|
||||||
priv->grab_notify_blocked = TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Give ownership of the popover to widget */
|
/* Give ownership of the popover to widget */
|
||||||
widget_manage_popover (priv->widget, popover);
|
widget_manage_popover (priv->widget, popover);
|
||||||
|
Loading…
Reference in New Issue
Block a user