1/* 2 * Copyright (C) 2013 Igalia S.L. 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2,1 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Library General Public License for more details. 13 * 14 * You should have received a copy of the GNU Library General Public License 15 * along with this library; see the file COPYING.LIB. If not, write to 16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 17 * Boston, MA 02110-1301, USA. 18 */ 19 20#if !defined(__WEBKIT_WEB_EXTENSION_H_INSIDE__) && !defined(WEBKIT2_COMPILATION) 21#error "Only <webkit2/webkit-web-extension.h> can be included directly." 22#endif 23 24#ifndef WebKitFrame_h 25#define WebKitFrame_h 26 27#include <JavaScriptCore/JSBase.h> 28#include <glib-object.h> 29#include <webkit2/WebKitDefines.h> 30#include <webkit2/WebKitScriptWorld.h> 31 32G_BEGIN_DECLS 33 34#define WEBKIT_TYPE_FRAME (webkit_frame_get_type()) 35#define WEBKIT_FRAME(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_FRAME, WebKitFrame)) 36#define WEBKIT_IS_FRAME(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_FRAME)) 37#define WEBKIT_FRAME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_FRAME, WebKitFrameClass)) 38#define WEBKIT_IS_FRAME_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_FRAME)) 39#define WEBKIT_FRAME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_FRAME, WebKitFrameClass)) 40 41typedef struct _WebKitFrame WebKitFrame; 42typedef struct _WebKitFrameClass WebKitFrameClass; 43typedef struct _WebKitFramePrivate WebKitFramePrivate; 44 45struct _WebKitFrame { 46 GObject parent; 47 48 WebKitFramePrivate *priv; 49}; 50 51struct _WebKitFrameClass { 52 GObjectClass parent_class; 53}; 54 55WEBKIT_API GType 56webkit_frame_get_type (void); 57 58WEBKIT_API gboolean 59webkit_frame_is_main_frame (WebKitFrame *frame); 60 61WEBKIT_API const gchar * 62webkit_frame_get_uri (WebKitFrame *frame); 63 64WEBKIT_API JSGlobalContextRef 65webkit_frame_get_javascript_global_context (WebKitFrame *frame); 66 67WEBKIT_API JSGlobalContextRef 68webkit_frame_get_javascript_context_for_script_world (WebKitFrame *frame, 69 WebKitScriptWorld *world); 70 71G_END_DECLS 72 73#endif 74