Changeset 122426 in webkit
- Timestamp:
- Jul 12, 2012 1:35:36 AM (12 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 6 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r122425 r122426 1 2012-07-12 Christophe Dumez <christophe.dumez@intel.com> 2 3 [WK2][EFL] Add policy client to Ewk_View 4 https://bugs.webkit.org/show_bug.cgi?id=90953 5 6 Reviewed by Kenneth Rohde Christiansen. 7 8 Emit new "policy,decision,navigation" and "policy,decision,new,window" 9 on the Ewk_View when policy decisions should be taken by the client. 10 11 A new Ewk_Navigation_Policy_Decision type is introduced to provide 12 information about the navigation request and make a decision. 13 By default, the navigation request is accepted. 14 15 * PlatformEfl.cmake: 16 * UIProcess/API/efl/EWebKit2.h: 17 * UIProcess/API/efl/ewk_navigation_policy_decision.cpp: Added. 18 (_Ewk_Navigation_Policy_Decision): 19 (ewk_navigation_policy_decision_free): 20 (ewk_navigation_policy_navigation_type_get): 21 (ewk_navigation_policy_mouse_button_get): 22 (ewk_navigation_policy_modifiers_get): 23 (ewk_navigation_policy_frame_name_get): 24 (ewk_navigation_policy_request_get): 25 (ewk_navigation_policy_decision_accept): 26 (ewk_navigation_policy_decision_reject): 27 (ewk_navigation_policy_decision_download): 28 (ewk_navigation_policy_decision_new): 29 * UIProcess/API/efl/ewk_navigation_policy_decision.h: Added. 30 * UIProcess/API/efl/ewk_navigation_policy_decision_private.h: Added. 31 * UIProcess/API/efl/ewk_private.h: Added. 32 * UIProcess/API/efl/ewk_view.cpp: 33 (ewk_view_base_add): 34 (ewk_view_navigation_policy_decision): 35 (ewk_view_new_window_policy_decision): 36 * UIProcess/API/efl/ewk_view.h: 37 * UIProcess/API/efl/ewk_view_policy_client.cpp: Added. 38 (toEwkView): 39 (decidePolicyForNavigationAction): 40 (decidePolicyForNewWindowAction): 41 (ewk_view_policy_client_attach): 42 * UIProcess/API/efl/ewk_view_policy_client_private.h: Added. 43 * UIProcess/API/efl/ewk_view_private.h: 44 1 45 2012-07-11 Carlos Garcia Campos <cgarcia@igalia.com> 2 46 -
trunk/Source/WebKit2/PlatformEfl.cmake
r122425 r122426 38 38 UIProcess/API/efl/ewk_intent.cpp 39 39 UIProcess/API/efl/ewk_intent_service.cpp 40 UIProcess/API/efl/ewk_navigation_policy_decision.cpp 40 41 UIProcess/API/efl/ewk_url_request.cpp 41 42 UIProcess/API/efl/ewk_url_response.cpp 42 43 UIProcess/API/efl/ewk_view.cpp 43 44 UIProcess/API/efl/ewk_view_loader_client.cpp 45 UIProcess/API/efl/ewk_view_policy_client.cpp 44 46 UIProcess/API/efl/ewk_view_resource_load_client.cpp 45 47 UIProcess/API/efl/ewk_web_error.cpp -
trunk/Source/WebKit2/UIProcess/API/efl/EWebKit2.h
r122411 r122426 31 31 #include "ewk_intent.h" 32 32 #include "ewk_intent_service.h" 33 #include "ewk_navigation_policy_decision.h" 33 34 #include "ewk_url_request.h" 34 35 #include "ewk_url_response.h" -
trunk/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp
r122411 r122426 33 33 #include "ewk_intent_private.h" 34 34 #include "ewk_view_loader_client_private.h" 35 #include "ewk_view_policy_client_private.h" 35 36 #include "ewk_view_private.h" 36 37 #include "ewk_view_resource_load_client_private.h" … … 500 501 priv->pageClient = PageClientImpl::create(toImpl(contextRef), toImpl(pageGroupRef), ewkView); 501 502 ewk_view_loader_client_attach(toAPI(priv->pageClient->page()), ewkView); 503 ewk_view_policy_client_attach(toAPI(priv->pageClient->page()), ewkView); 502 504 ewk_view_resource_load_client_attach(toAPI(priv->pageClient->page()), ewkView); 503 505 … … 876 878 } 877 879 880 /** 881 * @internal 882 * Reports that a navigation policy decision should be taken. 883 * 884 * Emits signal: "policy,decision,navigation". 885 */ 886 void ewk_view_navigation_policy_decision(Evas_Object* ewkView, Ewk_Navigation_Policy_Decision* decision) 887 { 888 evas_object_smart_callback_call(ewkView, "policy,decision,navigation", decision); 889 } 890 891 /** 892 * @internal 893 * Reports that a new window policy decision should be taken. 894 * 895 * Emits signal: "policy,decision,new,window". 896 */ 897 void ewk_view_new_window_policy_decision(Evas_Object* ewkView, Ewk_Navigation_Policy_Decision* decision) 898 { 899 evas_object_smart_callback_call(ewkView, "policy,decision,new,window", decision); 900 } 901 878 902 Eina_Bool ewk_view_html_string_load(Evas_Object* ewkView, const char* html, const char* baseUrl, const char* unreachableUrl) 879 903 { -
trunk/Source/WebKit2/UIProcess/API/efl/ewk_view.h
r122411 r122426 35 35 * - "load,provisional,redirect", void: view received redirect for provisional load. 36 36 * - "load,provisional,started", void: view started provisional load. 37 * - "policy,decision,navigation", Ewk_Navigation_Policy_Decision*: a navigation policy decision should be taken. 38 * - "policy,decision,new,window", Ewk_Navigation_Policy_Decision*: a new window policy decision should be taken. 37 39 * - "resource,request,failed", const Ewk_Web_Resource_Load_Error*: a resource failed loading. 38 40 * - "resource,request,finished", const Ewk_Web_Resource*: a resource finished loading. -
trunk/Source/WebKit2/UIProcess/API/efl/ewk_view_private.h
r122411 r122426 35 35 typedef struct _Ewk_Web_Error Ewk_Web_Error; 36 36 typedef struct _Ewk_Web_Resource Ewk_Web_Resource; 37 typedef struct _Ewk_Navigation_Policy_Decision Ewk_Navigation_Policy_Decision; 37 38 #if ENABLE(WEB_INTENTS) 38 39 typedef struct _Ewk_Intent Ewk_Intent; … … 50 51 void ewk_view_load_provisional_redirect(Evas_Object* ewkView); 51 52 void ewk_view_load_provisional_started(Evas_Object* ewkView); 53 void ewk_view_navigation_policy_decision(Evas_Object* ewkView, Ewk_Navigation_Policy_Decision* decision); 54 void ewk_view_new_window_policy_decision(Evas_Object* ewkView, Ewk_Navigation_Policy_Decision* decision); 52 55 void ewk_view_title_changed(Evas_Object* ewkView, const char* title); 53 56 void ewk_view_resource_load_failed(Evas_Object* ewkView, uint64_t resourceIdentifier, Ewk_Web_Error* error);
Note: See TracChangeset
for help on using the changeset viewer.