Changeset 161256 in webkit
- Timestamp:
- Jan 3, 2014 12:42:07 AM (10 years ago)
- Location:
- trunk
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r161255 r161256 1 2014-01-02 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [GTK] Add API to WebKitResponsePolicyDecision to check if the MIME type can be shown 4 https://bugs.webkit.org/show_bug.cgi?id=124652 5 6 Reviewed by Martin Robinson. 7 8 * UIProcess/API/gtk/WebKitPolicyClient.cpp: 9 (decidePolicyForResponse): Pass canShowMIMEType to 10 webkitResponsePolicyDecisionCreate. 11 * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp: 12 (webkit_response_policy_decision_is_mime_type_supported): Return 13 canShowMIMEType. 14 (webkitResponsePolicyDecisionCreate): Set the canShowMIMEType 15 member from the given parameter. 16 * UIProcess/API/gtk/WebKitResponsePolicyDecision.h: 17 * UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h: 18 * UIProcess/API/gtk/WebKitWebView.cpp: 19 (webkitWebViewDecidePolicy): Use the new API instead of 20 webkit_web_view_can_show_mime_type() since it's more efficient. 21 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol. 22 * UIProcess/API/gtk/tests/TestWebKitPolicyClient.cpp: 23 (testResponsePolicy): Test the new API. 24 1 25 2014-01-02 Carlos Garcia Campos <cgarcia@igalia.com> 2 26 -
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitPolicyClient.cpp
r160125 r161256 61 61 { 62 62 GRefPtr<WebKitResponsePolicyDecision> decision = 63 adoptGRef(webkitResponsePolicyDecisionCreate(toImpl(request), toImpl(response), toImpl(listener)));63 adoptGRef(webkitResponsePolicyDecisionCreate(toImpl(request), toImpl(response), canShowMIMEType, toImpl(listener))); 64 64 webkitWebViewMakePolicyDecision(WEBKIT_WEB_VIEW(clientInfo), 65 65 WEBKIT_POLICY_DECISION_TYPE_RESPONSE, -
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp
r160861 r161256 49 49 GRefPtr<WebKitURIRequest> request; 50 50 GRefPtr<WebKitURIResponse> response; 51 bool canShowMIMEType; 51 52 }; 52 53 … … 138 139 } 139 140 140 WebKitResponsePolicyDecision* webkitResponsePolicyDecisionCreate(API::URLRequest* request, API::URLResponse* response, WebFramePolicyListenerProxy* listener) 141 /** 142 * webkit_response_policy_decision_is_mime_type_supported: 143 * @decision: a #WebKitResponsePolicyDecision 144 * 145 * Gets whether the MIME type of the response can be displayed in the #WebKitWebView 146 * that triggered this policy decision request. See also webkit_web_view_can_show_mime_type(). 147 * 148 * Returns: %TRUE if the MIME type of the response is supported or %FALSE otherwise 149 * 150 * Since: 2.4 151 */ 152 gboolean webkit_response_policy_decision_is_mime_type_supported(WebKitResponsePolicyDecision* decision) 153 { 154 g_return_val_if_fail(WEBKIT_IS_RESPONSE_POLICY_DECISION(decision), FALSE); 155 return decision->priv->canShowMIMEType; 156 } 157 158 WebKitResponsePolicyDecision* webkitResponsePolicyDecisionCreate(API::URLRequest* request, API::URLResponse* response, bool canShowMIMEType, WebFramePolicyListenerProxy* listener) 141 159 { 142 160 WebKitResponsePolicyDecision* decision = WEBKIT_RESPONSE_POLICY_DECISION(g_object_new(WEBKIT_TYPE_RESPONSE_POLICY_DECISION, NULL)); 143 161 decision->priv->request = adoptGRef(webkitURIRequestCreateForResourceRequest(request->resourceRequest())); 144 162 decision->priv->response = adoptGRef(webkitURIResponseCreateForResourceResponse(response->resourceResponse())); 163 decision->priv->canShowMIMEType = canShowMIMEType; 145 164 webkitPolicyDecisionSetListener(WEBKIT_POLICY_DECISION(decision), listener); 146 165 return decision; -
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitResponsePolicyDecision.h
r150130 r161256 61 61 62 62 WEBKIT_API GType 63 webkit_response_policy_decision_get_type (void);63 webkit_response_policy_decision_get_type (void); 64 64 65 65 WEBKIT_API WebKitURIRequest * 66 webkit_response_policy_decision_get_request (WebKitResponsePolicyDecision *decision);66 webkit_response_policy_decision_get_request (WebKitResponsePolicyDecision *decision); 67 67 68 68 WEBKIT_API WebKitURIResponse * 69 webkit_response_policy_decision_get_response (WebKitResponsePolicyDecision *decision); 69 webkit_response_policy_decision_get_response (WebKitResponsePolicyDecision *decision); 70 71 WEBKIT_API gboolean 72 webkit_response_policy_decision_is_mime_type_supported (WebKitResponsePolicyDecision *decision); 70 73 71 74 G_END_DECLS -
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h
r160861 r161256 24 24 #include "WebKitResponsePolicyDecision.h" 25 25 26 WebKitResponsePolicyDecision* webkitResponsePolicyDecisionCreate(API::URLRequest*, API::URLResponse*, WebKit::WebFramePolicyListenerProxy*);26 WebKitResponsePolicyDecision* webkitResponsePolicyDecisionCreate(API::URLRequest*, API::URLResponse*, bool canShowMIMEType, WebKit::WebFramePolicyListenerProxy*); 27 27 28 28 #endif // WebKitResponsePolicyDecisionPrivate_h -
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
r160750 r161256 280 280 } 281 281 282 if (webkit_ web_view_can_show_mime_type(webView, webkit_uri_response_get_mime_type(response)))282 if (webkit_response_policy_decision_is_mime_type_supported(WEBKIT_RESPONSE_POLICY_DECISION(decision))) 283 283 webkit_policy_decision_use(decision); 284 284 else -
trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt
r160434 r161256 569 569 webkit_response_policy_decision_get_request 570 570 webkit_response_policy_decision_get_response 571 webkit_response_policy_decision_is_mime_type_supported 571 572 572 573 <SUBSECTION Standard> -
trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitPolicyClient.cpp
r130507 r161256 158 158 g_assert_cmpint(test->m_loadEvents[2], ==, LoadTrackingTest::LoadFinished); 159 159 160 WebKitResponsePolicyDecision* decision = WEBKIT_RESPONSE_POLICY_DECISION(test->m_previousPolicyDecision.get()); 161 WebKitURIRequest* request = webkit_response_policy_decision_get_request(decision); 162 g_assert(WEBKIT_IS_URI_REQUEST(request)); 163 ASSERT_CMP_CSTRING(webkit_uri_request_get_uri(request), ==, kServer->getURIForPath("/")); 164 WebKitURIResponse* response = webkit_response_policy_decision_get_response(decision); 165 g_assert(WEBKIT_IS_URI_RESPONSE(response)); 166 ASSERT_CMP_CSTRING(webkit_uri_response_get_uri(response), ==, kServer->getURIForPath("/")); 167 g_assert(webkit_web_view_can_show_mime_type(test->m_webView, webkit_uri_response_get_mime_type(response)) == 168 webkit_response_policy_decision_is_mime_type_supported(decision)); 169 160 170 test->m_respondToPolicyDecisionAsynchronously = true; 161 171 test->loadURI(kServer->getURIForPath("/").data()); -
trunk/Tools/ChangeLog
r161255 r161256 1 2014-01-02 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [GTK] Add API to WebKitResponsePolicyDecision to check if the MIME type can be shown 4 https://bugs.webkit.org/show_bug.cgi?id=124652 5 6 Reviewed by Martin Robinson. 7 8 * MiniBrowser/gtk/BrowserWindow.c: 9 (webViewDecidePolicy): Use the new API instead of 10 webkit_web_view_can_show_mime_type(). 11 1 12 2014-01-02 Carlos Garcia Campos <cgarcia@igalia.com> 2 13 -
trunk/Tools/MiniBrowser/gtk/BrowserWindow.c
r161187 r161256 379 379 case WEBKIT_POLICY_DECISION_TYPE_RESPONSE: { 380 380 WebKitResponsePolicyDecision *responseDecision = WEBKIT_RESPONSE_POLICY_DECISION(decision); 381 WebKitURIResponse *response = webkit_response_policy_decision_get_response(responseDecision); 382 const char *mimeType = webkit_uri_response_get_mime_type(response); 383 384 if (webkit_web_view_can_show_mime_type(webView, mimeType)) 381 if (webkit_response_policy_decision_is_mime_type_supported(responseDecision)) 385 382 return FALSE; 386 383
Note: See TracChangeset
for help on using the changeset viewer.