1 /* -*- Mode: C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2; -*- */ 2 /* 3 * Copyright © 2007 Xan Lopez 4 * Copyright © 2009 Igalia S.L. 5 * 6 * This file is part of Epiphany. 7 * 8 * Epiphany is free software: you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation, either version 3 of the License, or 11 * (at your option) any later version. 12 * 13 * Epiphany is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with Epiphany. If not, see <http://www.gnu.org/licenses/>. 20 */ 21 22 #pragma once 23 24 #include "ephy-find-toolbar.h" 25 #include "ephy-web-view.h" 26 27 #include <gtk/gtk.h> 28 29 G_BEGIN_DECLS 30 31 #define EPHY_TYPE_EMBED (ephy_embed_get_type ()) 32 33 G_DECLARE_FINAL_TYPE (EphyEmbed, ephy_embed, EPHY, EMBED, GtkBox) 34 35 typedef enum { 36 EPHY_EMBED_TOP_WIDGET_POLICY_RETAIN_ON_TRANSITION, 37 EPHY_EMBED_TOP_WIDGET_POLICY_DESTROY_ON_TRANSITION 38 } EphyEmbedTopWidgetPolicy; 39 40 EphyWebView* ephy_embed_get_web_view (EphyEmbed *embed); 41 EphyFindToolbar* ephy_embed_get_find_toolbar (EphyEmbed *embed); 42 void ephy_embed_add_top_widget (EphyEmbed *embed, 43 GtkWidget *widget, 44 EphyEmbedTopWidgetPolicy policy); 45 void ephy_embed_remove_top_widget (EphyEmbed *embed, 46 GtkWidget *widget); 47 void ephy_embed_entering_fullscreen (EphyEmbed *embed); 48 void ephy_embed_leaving_fullscreen (EphyEmbed *embed); 49 void ephy_embed_set_delayed_load_request (EphyEmbed *embed, 50 WebKitURIRequest *request, 51 WebKitWebViewSessionState *state); 52 gboolean ephy_embed_has_load_pending (EphyEmbed *embed); 53 gboolean ephy_embed_inspector_is_loaded (EphyEmbed *embed); 54 const char *ephy_embed_get_title (EphyEmbed *embed); 55 void ephy_embed_attach_notification_container (EphyEmbed *embed); 56 void ephy_embed_detach_notification_container (EphyEmbed *embed); 57 void ephy_embed_download_started (EphyEmbed *embed, 58 EphyDownload *ephy_download); 59 60 G_END_DECLS 61