From eddaae421e4e38d8124f659b1bd8ff65162247e4 Mon Sep 17 00:00:00 2001 From: Xan Lopez Date: Wed, 29 Jun 2011 20:19:40 +0200 Subject: Use GtkApplication's window tracking for EphyWindow too Instead of our own home-grown system. I think we should subclass window_added in GtkApplication and do there the session & state stuff and get rid of ephy_session_add_window and ephy_state_add_window. --- embed/ephy-embed-shell.c | 40 ---------------------------------------- embed/ephy-embed-shell.h | 4 ---- 2 files changed, 44 deletions(-) (limited to 'embed') diff --git a/embed/ephy-embed-shell.c b/embed/ephy-embed-shell.c index aef7bb214..73ab92771 100644 --- a/embed/ephy-embed-shell.c +++ b/embed/ephy-embed-shell.c @@ -58,7 +58,6 @@ struct _EphyEmbedShellPrivate EphyAdBlockManager *adblock_manager; GtkPageSetup *page_setup; GtkPrintSettings *print_settings; - guint object_count; gboolean private_instance; guint single_initialised : 1; }; @@ -68,7 +67,6 @@ enum DOWNLOAD_ADDED, DOWNLOAD_REMOVED, PREPARE_CLOSE, - QUIT, LAST_SIGNAL }; @@ -406,25 +404,6 @@ ephy_embed_shell_class_init (EphyEmbedShellClass *klass) g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); -/** - * EphyEmbedShell::quit: - * @shell: an #EphyEmbedShell - * - * The ::quit is emitted when all windows (browser windows, popups, - * download windows, etc) are closed and the @shell is ready to be - * closed. - * - * Since: 2.30 - **/ - signals[QUIT] = - g_signal_new ("quit", - G_OBJECT_CLASS_TYPE (object_class), - G_SIGNAL_RUN_LAST, - 0, - NULL, NULL, - g_cclosure_marshal_VOID__VOID, - G_TYPE_NONE, 0); - g_type_class_add_private (object_class, sizeof (EphyEmbedShellPrivate)); } @@ -666,25 +645,6 @@ ephy_embed_shell_remove_download (EphyEmbedShell *shell, EphyDownload *download) g_signal_emit_by_name (shell, "download-removed", download, NULL); } - -static void -object_notify_cb (EphyEmbedShell *shell, GObject *object) -{ - shell->priv->object_count--; - if (shell->priv->object_count == 0) - g_signal_emit (shell, signals[QUIT], 0); -} - -void -_ephy_embed_shell_track_object (EphyEmbedShell *shell, GObject *object) -{ - g_return_if_fail (EPHY_IS_EMBED_SHELL (shell)); - g_return_if_fail (G_IS_OBJECT (object)); - - g_object_weak_ref (object, (GWeakNotify)object_notify_cb, shell); - shell->priv->object_count++; -} - /** * ephy_embed_shell_is_private_instance: * @shell: an #EphyEmbedShell diff --git a/embed/ephy-embed-shell.h b/embed/ephy-embed-shell.h index c91dc9d80..02eaf43a8 100644 --- a/embed/ephy-embed-shell.h +++ b/embed/ephy-embed-shell.h @@ -103,10 +103,6 @@ void ephy_embed_shell_remove_download (EphyEmbedShell *shell, gboolean ephy_embed_shell_is_private_instance (EphyEmbedShell *shell); -/* Private API */ -void _ephy_embed_shell_track_object (EphyEmbedShell *shell, - GObject *object); - G_END_DECLS #endif /* !EPHY_EMBED_SHELL_H */ -- cgit v1.2.3