bool LoadItem::invoke() const { gchar* targetString = JSStringCopyUTF8CString(m_target.get()); WebKitWebFrame* targetFrame; if (!strlen(targetString)) targetFrame = mainFrame; else targetFrame = webkit_web_frame_find_frame(mainFrame, targetString); g_free(targetString); gchar* urlString = JSStringCopyUTF8CString(m_url.get()); WebKitNetworkRequest* request = webkit_network_request_new(urlString); g_free(urlString); webkit_web_frame_load_request(targetFrame, request); g_object_unref(request); return true; }
static void test_webkit_web_data_source_get_initial_request() { WebKitWebView* view; WebKitWebFrame* frame; WebKitWebDataSource* dataSource; WebKitNetworkRequest* initialRequest; view = WEBKIT_WEB_VIEW(webkit_web_view_new()); g_object_ref_sink(view); frame = webkit_web_view_get_main_frame(view); WebKitNetworkRequest* request = webkit_network_request_new("http://www.google.com"); webkit_web_frame_load_request(frame, request); g_object_unref(request); dataSource = webkit_web_frame_get_provisional_data_source(frame); g_assert(dataSource); initialRequest = webkit_web_data_source_get_initial_request(dataSource); g_assert_cmpstr(webkit_network_request_get_uri(initialRequest), ==, "http://www.google.com/"); g_object_unref(view); }