[Webkit-unassigned] [Bug 57944] [GTK] Implement WKView with a common widget that can be used by both C and gtk APIs

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Apr 26 23:51:42 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=57944





--- Comment #12 from Carlos Garcia Campos <cgarcia at igalia.com>  2011-04-26 23:51:42 PST ---
(In reply to comment #11)
> (From update of attachment 89758 [details])
> I'm going to r- this patch. On discussing this with Alex, it seems that we should be able to leave our current WebKit2 C-API design mostly unchanged.

what design?

> Why remove the WebView class? 

First, I think everything related to the API should be under API dir, for consistency. WebView seems confusing to me, the name WebView makes me think it's a widget, but it's not although it includes some methods that we wouldn't need if it were a widget: getWebViewWindow(), paint(), setSise(). Other methods, however, use the view word like if the view were another thing displayView(), scrollView(), isViewFocused(), etc. This is because this class is mixing PageClient (it inherits from it) and WebView. That's why I moved the bits that belong to the view to the widget implementation and added PageClientImpl.cpp for the PageClient implementation, which is what mac and qt ports do. 

Then I renamed WebViewWidget to WebKitViewBase, for consistency with the gtk1 api, because you were worried about such class appearing in the docs. I made it an abstract class without public methods, so that WKView and WebKitWebView could inherit from it and share the implementation.

> It seems there'd be much less code churn if we simply turn the existing WebViewWidget into the base widget.

That's exactly what I did. I don't see why it's less code, I simply moved code to PageclientImpl and WebKitWebViewBase. It's even less code since I removed unneeded methods like getWebViewWindow(), paint(), setSise().

> If that's not possible, let's discuss alternatives from there.

what's wrong with my alternative?

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list