Changeset 143339 in webkit
- Timestamp:
- Feb 19, 2013 8:48:06 AM (11 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r143335 r143339 1 2013-02-19 Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> 2 3 [WK2][EFL] Eliminate access to WK2 C++ internals from ewk_view functions 4 https://bugs.webkit.org/show_bug.cgi?id=109794 5 6 Reviewed by Anders Carlsson. 7 8 * UIProcess/API/C/efl/WKView.cpp: 9 (WKViewSetShowsAsSource): 10 (WKViewGetShowsAsSource): 11 12 Added new WKView API to wrap WebPageProxy::setMainFrameInViewSourceMode() 13 and WebPageProxy::mainFrameInViewSourceMode() calls. 14 15 (WKViewExitFullScreen): 16 17 Added new WKView API to wrap WebFullScreenManagerProxy::exitFullScreen() 18 calls. 19 20 * UIProcess/API/C/efl/WKView.h: 21 * UIProcess/API/efl/EwkView.cpp: 22 (EwkView::feedTouchEvent): 23 24 Added feedTouchEvent() method so that: at first ewk_view_feed_touch_event() 25 is not invoked from EwkView class, secondly ewk_view_feed_touch_event() does 26 not access WebPage instance directly. 27 28 (EwkView::feedTouchEvents): 29 * UIProcess/API/efl/EwkView.h: 30 (EwkView): 31 * UIProcess/API/efl/ewk_view.cpp: 32 (ewk_view_feed_touch_event): 33 (ewk_view_pagination_mode_set): 34 (ewk_view_pagination_mode_get): 35 (ewk_view_fullscreen_exit): 36 (ewkViewPageContentsCallback): 37 (ewk_view_page_contents_get): 38 (ewk_view_source_mode_set): 39 (ewk_view_source_mode_get): 40 41 Those are now using exported C API. 42 43 * UIProcess/efl/WebView.cpp: 44 (WebKit::WebView::setShowsAsSource): 45 (WebKit): 46 (WebKit::WebView::showsAsSource): 47 (WebKit::WebView::exitFullScreen): 48 * UIProcess/efl/WebView.h: 49 (WebView): 50 51 Added WebView methods to support added WKView API. 52 1 53 2013-02-19 Andras Becsi <andras.becsi@digia.com> 2 54 -
trunk/Source/WebKit2/UIProcess/API/C/efl/WKView.cpp
r142750 r143339 98 98 } 99 99 100 void WKViewSetShowsAsSource(WKViewRef viewRef, bool flag) 101 { 102 toImpl(viewRef)->setShowsAsSource(flag); 103 } 104 105 bool WKViewGetShowsAsSource(WKViewRef viewRef) 106 { 107 return toImpl(viewRef)->showsAsSource(); 108 } 109 110 void WKViewExitFullScreen(WKViewRef viewRef) 111 { 112 #if ENABLE(FULLSCREEN_API) 113 toImpl(viewRef)->exitFullScreen(); 114 #else 115 UNUSED_PARAM(viewRef); 116 #endif 117 } 118 100 119 Evas_Object* WKViewGetEvasObject(WKViewRef viewRef) 101 120 { -
trunk/Source/WebKit2/UIProcess/API/C/efl/WKView.h
r142750 r143339 71 71 WK_EXPORT void WKViewResumeActiveDOMObjectsAndAnimations(WKViewRef); 72 72 73 WK_EXPORT void WKViewSetShowsAsSource(WKViewRef, bool); 74 WK_EXPORT bool WKViewGetShowsAsSource(WKViewRef); 75 76 WK_EXPORT void WKViewExitFullScreen(WKViewRef); 77 73 78 // FIXME: The long term plan is to get rid of this, so keep usage to a bare minimum. 74 79 WK_EXPORT Evas_Object* WKViewGetEvasObject(WKViewRef); -
trunk/Source/WebKit2/UIProcess/API/efl/EwkView.cpp
r143275 r143339 749 749 750 750 #if ENABLE(TOUCH_EVENTS) 751 void EwkView::feedTouchEvent(Ewk_Touch_Event_Type type, const Eina_List* points, const Evas_Modifier* modifiers) 752 { 753 page()->handleTouchEvent(NativeWebTouchEvent(type, points, modifiers, transformFromScene(), transformToScreen(), ecore_time_get())); 754 } 755 751 756 void EwkView::setTouchEventsEnabled(bool enabled) 752 757 { … … 1306 1311 } 1307 1312 1308 ewk_view_feed_touch_event(m_evasObject,type, points, evas_key_modifier_get(sd->base.evas));1313 feedTouchEvent(type, points, evas_key_modifier_get(sd->base.evas)); 1309 1314 1310 1315 void* data; -
trunk/Source/WebKit2/UIProcess/API/efl/EwkView.h
r143275 r143339 157 157 void setMouseEventsEnabled(bool enabled); 158 158 #if ENABLE(TOUCH_EVENTS) 159 void feedTouchEvent(Ewk_Touch_Event_Type type, const Eina_List* points, const Evas_Modifier* modifiers); 159 160 bool touchEventsEnabled() const { return m_touchEventsEnabled; } 160 161 void setTouchEventsEnabled(bool enabled); -
trunk/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp
r143190 r143339 31 31 #include "PageViewportController.h" 32 32 #include "PageViewportControllerClientEfl.h" 33 #include "WKAPICast.h"34 #include "WKEinaSharedString.h"35 #include "WKFindOptions.h"36 #include "WKInspector.h"37 #include "WKRetainPtr.h"38 #include "WKString.h"39 #include "WKURL.h"40 #include "WKView.h"41 #include "WebContext.h"42 #include "WebData.h"43 #include "WebFullScreenManagerProxy.h"44 #include "WebPageGroup.h"45 #include "WebPreferences.h"46 33 #include "ewk_back_forward_list_private.h" 47 34 #include "ewk_context.h" … … 51 38 #include "ewk_settings_private.h" 52 39 #include <Ecore_Evas.h> 40 #include <WebKit2/WKAPICast.h> 41 #include <WebKit2/WKData.h> 42 #include <WebKit2/WKEinaSharedString.h> 43 #include <WebKit2/WKFindOptions.h> 44 #include <WebKit2/WKInspector.h> 53 45 #include <WebKit2/WKPageGroup.h> 46 #include <WebKit2/WKRetainPtr.h> 47 #include <WebKit2/WKString.h> 48 #include <WebKit2/WKURL.h> 49 #include <WebKit2/WKView.h> 54 50 #include <wtf/UnusedParam.h> 55 51 #include <wtf/text/CString.h> … … 377 373 EWK_VIEW_IMPL_GET_OR_RETURN(ewkView, impl, false); 378 374 379 impl-> page()->handleTouchEvent(NativeWebTouchEvent(type, points, modifiers, impl->transformFromScene(), impl->transformToScreen(), ecore_time_get()));375 impl->feedTouchEvent(type, points, modifiers); 380 376 381 377 return true; … … 458 454 { 459 455 EWK_VIEW_IMPL_GET_OR_RETURN(ewkView, impl, false); 460 461 impl->page()->setPaginationMode(static_cast<WebCore::Pagination::Mode>(mode));456 // FIXME: move to exported C WKPage API when it appears. 457 toImpl(impl->wkPage())->setPaginationMode(static_cast<WebCore::Pagination::Mode>(mode)); 462 458 463 459 return true; … … 467 463 { 468 464 EWK_VIEW_IMPL_GET_OR_RETURN(ewkView, impl, EWK_PAGINATION_MODE_INVALID); 469 470 return static_cast<Ewk_Pagination_Mode>( impl->page()->paginationMode());465 // FIXME: move to exported C WKPage API when it appears. 466 return static_cast<Ewk_Pagination_Mode>(toImpl(impl->wkPage())->paginationMode()); 471 467 } 472 468 … … 476 472 EWK_VIEW_IMPL_GET_OR_RETURN(ewkView, impl, false); 477 473 478 impl->page()->fullScreenManager()->requestExitFullScreen();474 WKViewExitFullScreen(impl->wkView()); 479 475 480 476 return true; … … 511 507 EINA_SAFETY_ON_NULL_RETURN(context); 512 508 513 RefPtr<WebData> webData = toImpl(wkData);514 509 Ewk_Page_Contents_Context* contentsContext= static_cast<Ewk_Page_Contents_Context*>(context); 515 contentsContext->callback(contentsContext->type, reinterpret_cast<const char*>( webData->bytes()));510 contentsContext->callback(contentsContext->type, reinterpret_cast<const char*>(WKDataGetBytes(wkData))); 516 511 517 512 delete contentsContext; … … 531 526 context->callback = callback; 532 527 533 impl->page()->getContentsAsMHTMLData(DataCallback::create(context, ewkViewPageContentsCallback), false);528 WKPageGetContentsAsMHTMLData(impl->wkPage(), false, context, ewkViewPageContentsCallback); 534 529 535 530 return true; … … 540 535 EWK_VIEW_IMPL_GET_OR_RETURN(ewkView, impl, false); 541 536 542 impl->page()->setMainFrameInViewSourceMode(enabled);537 WKViewSetShowsAsSource(impl->wkView(), enabled); 543 538 544 539 return true; … … 549 544 EWK_VIEW_IMPL_GET_OR_RETURN(ewkView, impl, false); 550 545 551 return impl->page()->mainFrameInViewSourceMode();552 } 546 return WKViewGetShowsAsSource(impl->wkView()); 547 } -
trunk/Source/WebKit2/UIProcess/efl/WebView.cpp
r143275 r143339 119 119 } 120 120 121 void WebView::setShowsAsSource(bool showsAsSource) 122 { 123 m_page->setMainFrameInViewSourceMode(showsAsSource); 124 } 125 126 bool WebView::showsAsSource() const 127 { 128 return m_page->mainFrameInViewSourceMode(); 129 } 130 131 #if ENABLE(FULLSCREEN_API) 132 void WebView::exitFullScreen() 133 { 134 m_page->fullScreenManager()->requestExitFullScreen(); 135 } 136 #endif 137 121 138 void WebView::initializeClient(const WKViewClient* client) 122 139 { -
trunk/Source/WebKit2/UIProcess/efl/WebView.h
r143004 r143339 64 64 void suspendActiveDOMObjectsAndAnimations(); 65 65 void resumeActiveDOMObjectsAndAnimations(); 66 67 void setShowsAsSource(bool); 68 bool showsAsSource() const; 69 70 #if ENABLE(FULLSCREEN_API) 71 void exitFullScreen(); 72 #endif 66 73 67 74 // View client.
Note: See TracChangeset
for help on using the changeset viewer.