diff --git a/eek/eek-gtk-key.c b/eek/eek-gtk-key.c index 7297281f..bc3a6ac0 100644 --- a/eek/eek-gtk-key.c +++ b/eek/eek-gtk-key.c @@ -69,7 +69,8 @@ eek_gtk_key_real_set_keysyms (EekKey *self, g_return_if_fail (priv); eek_key_set_keysyms (EEK_KEY(priv->simple), keysyms, groups, levels); - eek_key_set_keysym_index (EEK_KEY(self), 0, 0); + if (groups > 0 && levels > 0) + eek_key_set_keysym_index (EEK_KEY(self), 0, 0); } static gint diff --git a/eek/eek-gtk-section.c b/eek/eek-gtk-section.c index 29b4aefe..631a7d52 100644 --- a/eek/eek-gtk-section.c +++ b/eek/eek-gtk-section.c @@ -248,12 +248,6 @@ eek_section_iface_init (EekSectionIface *iface) static void eek_gtk_section_dispose (GObject *object) { - EekGtkSectionPrivate *priv = EEK_GTK_SECTION_GET_PRIVATE(object); - gint i, num_rows; - - num_rows = eek_section_get_rows (EEK_SECTION(object)); - for (i = 0; i < num_rows; i++) - gtk_container_remove (GTK_CONTAINER(object), priv->rows[i]); G_OBJECT_CLASS (eek_gtk_section_parent_class)->dispose (object); } @@ -262,8 +256,8 @@ eek_gtk_section_finalize (GObject *object) { EekGtkSectionPrivate *priv = EEK_GTK_SECTION_GET_PRIVATE(object); - g_object_unref (priv->simple); g_slice_free (GtkWidget *, priv->rows); + g_object_unref (priv->simple); G_OBJECT_CLASS (eek_gtk_section_parent_class)->finalize (object); }