Changeset 160321 in webkit
- Timestamp:
- Dec 9, 2013 11:30:40 AM (10 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r160308 r160321 1 2013-12-09 Ryuan Choi <ryuan.choi@samsung.com> 2 3 [EFL][WK2] LayoutTests are broken after r160301 4 https://bugs.webkit.org/show_bug.cgi?id=125447 5 6 Reviewed by Darin Adler. 7 8 r160301 moved FullScreenManagerProxyClient logic to WebViewEfl, child class 9 of CoordinatedGraphics::WebView, because implementations are EFL specific. 10 However, CoordinatedGraphics::WebView creates WebPageProxy in constructor and 11 WebPageProxy requires FullScreenManagerProxyClient in constructor. 12 So, All WK2/Efl based applications got crashed 13 14 This patch adds virtual methods for FullScreenManagerProxyClient to CoordinatedGraphics::WebView 15 so that WebPageProxy can get FullScreenManagerProxyClient instance without 16 pure viertual methods. 17 18 * UIProcess/API/C/CoordinatedGraphics/WKView.cpp: 19 (WKViewExitFullScreen): 20 * UIProcess/CoordinatedGraphics/WebView.cpp: 21 (WebKit::WebView::fullScreenManagerProxyClient): 22 (WebKit::WebView::requestExitFullScreen): 23 renamed from exitFullScreen not to conflict with methods of FullScreenManagerProxyClient. 24 * UIProcess/CoordinatedGraphics/WebView.h: 25 * UIProcess/efl/WebViewEfl.cpp: 26 * UIProcess/efl/WebViewEfl.h: 27 1 28 2013-12-09 Sergio Villar Senin <svillar@igalia.com> 2 29 -
trunk/Source/WebKit2/UIProcess/API/C/CoordinatedGraphics/WKView.cpp
r160075 r160321 183 183 { 184 184 #if ENABLE(FULLSCREEN_API) 185 return toImpl(viewRef)-> exitFullScreen();185 return toImpl(viewRef)->requestExitFullScreen(); 186 186 #else 187 187 UNUSED_PARAM(viewRef); -
trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/WebView.cpp
r160075 r160321 195 195 196 196 #if ENABLE(FULLSCREEN_API) 197 bool WebView::exitFullScreen() 198 { 199 #if PLATFORM(EFL) 200 // FIXME: Implement this for other platforms. 201 if (!m_page->fullScreenManager()->isFullScreen()) 197 WebFullScreenManagerProxyClient& WebView::fullScreenManagerProxyClient() 198 { 199 return *this; 200 } 201 202 bool WebView::requestExitFullScreen() 203 { 204 if (!isFullScreen()) 202 205 return false; 203 #endif 206 204 207 m_page->fullScreenManager()->requestExitFullScreen(); 205 208 return true; -
trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/WebView.h
r160075 r160321 34 34 #include "PageClient.h" 35 35 #include "WebContext.h" 36 #include "WebFullScreenManagerProxy.h" 36 37 #include "WebGeometry.h" 37 38 #include "WebPageGroup.h" … … 47 48 namespace WebKit { 48 49 49 class WebView : public API::TypedObject<API::Object::Type::View>, public PageClient { 50 class WebView : public API::TypedObject<API::Object::Type::View>, public PageClient 51 #if ENABLE(FULLSCREEN_API) 52 , public WebFullScreenManagerProxyClient 53 #endif 54 { 50 55 public: 51 56 virtual ~WebView(); … … 94 99 95 100 #if ENABLE(FULLSCREEN_API) 96 bool exitFullScreen();101 bool requestExitFullScreen(); 97 102 #endif 98 103 … … 189 194 virtual void exitAcceleratedCompositingMode() OVERRIDE; 190 195 virtual void updateAcceleratedCompositingMode(const LayerTreeContext&) OVERRIDE; 196 197 #if ENABLE(FULLSCREEN_API) 198 WebFullScreenManagerProxyClient& fullScreenManagerProxyClient() OVERRIDE; 199 200 // WebFullScreenManagerProxyClient 201 virtual void closeFullScreenManager() OVERRIDE { } 202 virtual bool isFullScreen() OVERRIDE { return false; } 203 virtual void enterFullScreen() OVERRIDE { } 204 virtual void exitFullScreen() OVERRIDE { } 205 virtual void beganEnterFullScreen(const WebCore::IntRect&, const WebCore::IntRect&) OVERRIDE { } 206 virtual void beganExitFullScreen(const WebCore::IntRect&, const WebCore::IntRect&) OVERRIDE { } 207 #endif 191 208 192 209 protected: -
trunk/Source/WebKit2/UIProcess/efl/WebViewEfl.cpp
r160301 r160321 143 143 #if ENABLE(FULLSCREEN_API) 144 144 145 WebFullScreenManagerProxyClient& WebViewEfl::fullScreenManagerProxyClient()146 {147 return *this;148 }149 150 145 // WebFullScreenManagerProxyClient 151 146 bool WebViewEfl::isFullScreen() -
trunk/Source/WebKit2/UIProcess/efl/WebViewEfl.h
r160301 r160321 27 27 #define WebViewEfl_h 28 28 29 #include "WebFullScreenManagerProxy.h"30 29 #include "WebView.h" 31 30 … … 39 38 40 39 class WebViewEfl : public WebView 41 #if ENABLE(FULLSCREEN_API)42 , public WebFullScreenManagerProxyClient43 #endif44 40 { 45 41 public: … … 67 63 68 64 #if ENABLE(FULLSCREEN_API) 69 WebFullScreenManagerProxyClient& fullScreenManagerProxyClient() OVERRIDE;70 #endif71 72 #if ENABLE(FULLSCREEN_API)73 65 // WebFullScreenManagerProxyClient 74 66 virtual void closeFullScreenManager() OVERRIDE FINAL { }
Note: See TracChangeset
for help on using the changeset viewer.