static void ephy_permissions_dialog_finalize (GObject *object) { EphyPermissionsDialog *dialog = EPHY_PERMISSIONS_DIALOG (object); EphyPermissionsDialogPrivate *priv = dialog->priv; EphyEmbedShell *shell; GObject *single; shell = ephy_embed_shell_get_default (); single = ephy_embed_shell_get_embed_single (embed_shell); g_signal_handlers_disconnect_matched (single, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, dialog); #if 0 dialog->priv->cookies->destruct (dialog->priv->cookies); dialog->priv->passwords->destruct (dialog->priv->passwords); g_free (dialog->priv->passwords); g_free (dialog->priv->cookies); #endif g_object_unref (priv->buttons_size_group); g_list_foreach (priv->tabs, (GFunc) free_dialog_tab, NULL); g_list_free (priv->tabs); G_OBJECT_CLASS (parent_class)->finalize (object); }
static void ephy_gwget_extension_init (EphyGwgetExtension *extension) { GObject *single; /* extension->priv = EPHY_GWGET_EXTENSION_GET_PRIVATE (extension); */ single = ephy_embed_shell_get_embed_single (embed_shell); g_signal_connect (single, "handle-content", G_CALLBACK (handle_content_cb), extension); }
static void ephy_gwget_extension_finalize (GObject *object) { EphyGwgetExtension *extension = EPHY_GWGET_EXTENSION (object); GObject *single; single = ephy_embed_shell_get_embed_single (embed_shell); g_signal_handlers_disconnect_by_func (single, G_CALLBACK (handle_content_cb), extension); G_OBJECT_CLASS (parent_class)->finalize (object); }
static GObject * ephy_permissions_dialog_constructor (GType type, guint n_construct_properties, GObjectConstructParam *construct_params) { EphyPermissionsDialog *dialog; EphyPermissionsDialogPrivate *priv; EphyEmbedShell *shell; EphyPermissionManager *manager; GObject *object; GtkWidget *notebook; object = parent_class->constructor (type, n_construct_properties, construct_params); dialog = EPHY_PERMISSIONS_DIALOG (object); priv = dialog->priv; ephy_state_add_window (GTK_WIDGET (dialog), "permissions-manager", 540, 400, FALSE, EPHY_STATE_WINDOW_SAVE_SIZE); gtk_window_set_title (GTK_WINDOW (dialog), _("Site Permissions")); gtk_window_set_role (GTK_WINDOW (dialog), "epiphany-permissions-manager"); gtk_window_set_icon_name (GTK_WINDOW (dialog), GTK_STOCK_PROPERTIES /* FIXME? */); /* Don't stay on top of all windows! */ gtk_window_set_type_hint (GTK_WINDOW (dialog), GDK_WINDOW_TYPE_HINT_NORMAL); gtk_container_set_border_width (GTK_CONTAINER (dialog), 5); gtk_box_set_spacing (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), 2); gtk_dialog_add_button (GTK_DIALOG (dialog), GTK_STOCK_HELP, GTK_RESPONSE_HELP); gtk_dialog_add_button (GTK_DIALOG (dialog), GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE); gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_CLOSE); notebook = gtk_notebook_new (); priv->notebook = GTK_NOTEBOOK (notebook); gtk_container_set_border_width (GTK_CONTAINER (priv->notebook), 5); gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), notebook, TRUE, TRUE, 0); gtk_widget_show (notebook); priv->buttons_size_group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL); ephy_permissions_dialog_add_tab (dialog, EPT_COOKIE, _("Cookies")); ephy_permissions_dialog_add_tab (dialog, EPT_IMAGE, _("Images")); ephy_permissions_dialog_add_tab (dialog, EPT_POPUP, _("Popup Windows")); /* ephy_permissions_dialog_add_tab (dialog, "password", _("Passwords")); */ shell = ephy_embed_shell_get_default (); priv->manager = manager = EPHY_PERMISSION_MANAGER (ephy_embed_shell_get_embed_single (shell)); sync_notebook_tab (priv->notebook, NULL, 0, dialog); g_signal_connect (G_OBJECT (notebook), "switch-page", G_CALLBACK (sync_notebook_tab), dialog); g_signal_connect (priv->manager, "permission-added", G_CALLBACK (permission_added_cb), dialog); g_signal_connect (priv->manager, "permission-changed", G_CALLBACK (permission_changed_cb), dialog); g_signal_connect (priv->manager, "permission-deleted", G_CALLBACK (permission_deleted_cb), dialog); g_signal_connect (priv->manager, "permissions-cleared", G_CALLBACK (permissions_cleared_cb), dialog); return object; }