[gtk+] GtkPopover: Use G_PARAM_EXPLICIT_NOTIFY
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] GtkPopover: Use G_PARAM_EXPLICIT_NOTIFY
- Date: Mon, 9 Jun 2014 17:45:47 +0000 (UTC)
commit 8915e9cf42ea88c522ba2d17918b22986cd3a4d8
Author: Matthias Clasen <mclasen redhat com>
Date: Mon Jun 9 09:17:43 2014 -0400
GtkPopover: Use G_PARAM_EXPLICIT_NOTIFY
gtk/gtkpopover.c | 14 ++++++++++----
1 files changed, 10 insertions(+), 4 deletions(-)
---
diff --git a/gtk/gtkpopover.c b/gtk/gtkpopover.c
index 8a90868..089e8e9 100644
--- a/gtk/gtkpopover.c
+++ b/gtk/gtkpopover.c
@@ -354,6 +354,9 @@ gtk_popover_apply_modality (GtkPopover *popover,
{
GtkPopoverPrivate *priv = popover->priv;
+ if (!priv->window)
+ return;
+
if (modal)
{
GtkWidget *prev_focus;
@@ -1308,7 +1311,7 @@ gtk_popover_class_init (GtkPopoverClass *klass)
P_("Position"),
P_("Position to place the bubble window"),
GTK_TYPE_POSITION_TYPE, GTK_POS_TOP,
- GTK_PARAM_READWRITE | G_PARAM_CONSTRUCT));
+
GTK_PARAM_READWRITE|G_PARAM_CONSTRUCT|G_PARAM_EXPLICIT_NOTIFY));
/**
* GtkPopover:modal
@@ -1324,7 +1327,7 @@ gtk_popover_class_init (GtkPopoverClass *klass)
P_("Modal"),
P_("Whether the popover is modal"),
TRUE,
- GTK_PARAM_READWRITE));
+ GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY));
signals[CLOSED] =
g_signal_new (I_("closed"),
@@ -1665,8 +1668,11 @@ static void
gtk_popover_update_preferred_position (GtkPopover *popover,
GtkPositionType position)
{
- popover->priv->preferred_position = position;
- g_object_notify (G_OBJECT (popover), "position");
+ if (popover->priv->preferred_position != position)
+ {
+ popover->priv->preferred_position = position;
+ g_object_notify (G_OBJECT (popover), "position");
+ }
}
/**
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]