diff options
author | Marco Pesenti Gritti <marco@it.gnome.org> | 2003-06-23 17:57:21 +0800 |
---|---|---|
committer | Marco Pesenti Gritti <mpeseng@src.gnome.org> | 2003-06-23 17:57:21 +0800 |
commit | 6742f4d2c168a13221adb054520efc7390fe88dc (patch) | |
tree | 2115bff277ead194716f1a654e6d6019d6f9d79a /src/ephy-window.c | |
parent | 01b26909a89f11ea190a312ad0100b5254c97651 (diff) | |
download | gsoc2013-epiphany-6742f4d2c168a13221adb054520efc7390fe88dc.tar gsoc2013-epiphany-6742f4d2c168a13221adb054520efc7390fe88dc.tar.gz gsoc2013-epiphany-6742f4d2c168a13221adb054520efc7390fe88dc.tar.bz2 gsoc2013-epiphany-6742f4d2c168a13221adb054520efc7390fe88dc.tar.lz gsoc2013-epiphany-6742f4d2c168a13221adb054520efc7390fe88dc.tar.xz gsoc2013-epiphany-6742f4d2c168a13221adb054520efc7390fe88dc.tar.zst gsoc2013-epiphany-6742f4d2c168a13221adb054520efc7390fe88dc.zip |
Remove some unused headers.
2003-06-23 Marco Pesenti Gritti <marco@it.gnome.org>
* embed/mozilla/GlobalHistory.cpp:
Remove some unused headers.
* embed/mozilla/mozilla-embed.cpp:
Dont asser when trying to print blank page.
* lib/Makefile.am:
* lib/ephy-autocompletion.c: (ephy_autocompletion_get_type):
* lib/widgets/ephy-autocompletion-window.c:
(ephy_autocompletion_window_get_type):
* lib/widgets/ephy-location-entry.c:
(ephy_location_entry_get_type):
* src/ephy-encoding-menu.c: (ephy_encoding_menu_get_type):
Get rid of the gobject macros.
* src/ephy-notebook.c: (move_tab), (move_tab_to_another_notebook),
(button_release_cb), (update_tabs_visibility),
(tabs_visibility_notifier), (ephy_notebook_init),
(ephy_notebook_finalize), (ephy_notebook_set_show_tabs):
* src/ephy-notebook.h:
* src/ephy-tabs-menu.c:
* src/ephy-window.c: (ephy_window_finalize),
(update_embed_dialogs), (ephy_window_get_find_dialog),
(print_dialog_preview_cb), (ephy_window_print):
* src/ephy-window.h:
* src/ppview-toolbar.c: (toolbar_cmd_ppv_close):
* src/window-commands.c: (window_cmd_file_print):
Make sure tabs are hidden when going in print preview mode.
Make print dialog transient.
Diffstat (limited to 'src/ephy-window.c')
-rw-r--r-- | src/ephy-window.c | 51 |
1 files changed, 47 insertions, 4 deletions
diff --git a/src/ephy-window.c b/src/ephy-window.c index b27cdaef3..f821b4e48 100644 --- a/src/ephy-window.c +++ b/src/ephy-window.c @@ -26,10 +26,10 @@ #include "ephy-bookmarks-menu.h" #include "ephy-favorites-menu.h" #include "ephy-state.h" -#include "ephy-gobject-misc.h" #include "ppview-toolbar.h" #include "window-commands.h" #include "find-dialog.h" +#include "print-dialog.h" #include "ephy-shell.h" #include "eel-gconf-extensions.h" #include "ephy-prefs.h" @@ -277,6 +277,7 @@ struct EphyWindowPrivate GtkNotebook *notebook; EphyTab *active_tab; EphyDialog *find_dialog; + EphyDialog *print_dialog; EmbedChromeMask chrome_mask; gboolean closing; gboolean is_fullscreen; @@ -1476,12 +1477,14 @@ ephy_window_finalize (GObject *object) if (window->priv->find_dialog) { - g_signal_handlers_disconnect_by_func (window->priv->find_dialog, - G_CALLBACK (sync_find_dialog), - window); g_object_unref (G_OBJECT (window->priv->find_dialog)); } + if (window->priv->print_dialog) + { + g_object_unref (G_OBJECT (window->priv->print_dialog)); + } + g_object_unref (window->priv->fav_menu); g_object_unref (window->priv->enc_menu); g_object_unref (window->priv->tabs_menu); @@ -1802,6 +1805,7 @@ update_embed_dialogs (EphyWindow *window, { EphyEmbed *embed; EphyDialog *find_dialog = window->priv->find_dialog; + EphyDialog *print_dialog = window->priv->print_dialog; embed = ephy_tab_get_embed (tab); @@ -1811,6 +1815,13 @@ update_embed_dialogs (EphyWindow *window, (EPHY_EMBED_DIALOG(find_dialog), embed); } + + if (print_dialog) + { + ephy_embed_dialog_set_embed + (EPHY_EMBED_DIALOG(print_dialog), + embed); + } } static void @@ -1863,6 +1874,38 @@ ephy_window_get_find_dialog (EphyWindow *window) return dialog; } +static void +print_dialog_preview_cb (EphyDialog *dialog, + EphyWindow *window) +{ + ephy_window_set_chrome (window, EMBED_CHROME_PPVIEWTOOLBARON); + ephy_notebook_set_show_tabs (EPHY_NOTEBOOK (window->priv->notebook), FALSE); +} + +void +ephy_window_print (EphyWindow *window) +{ + EphyDialog *dialog; + EphyEmbed *embed; + + if (window->priv->print_dialog) + { + dialog = window->priv->print_dialog; + } + else + { + embed = ephy_window_get_active_embed (window); + dialog = print_dialog_new_with_parent (GTK_WIDGET(window), + embed, NULL); + g_signal_connect (G_OBJECT(dialog), + "preview", + G_CALLBACK (print_dialog_preview_cb), + window); + } + + ephy_dialog_show (EPHY_DIALOG (dialog)); +} + void ephy_window_set_zoom (EphyWindow *window, float zoom) |