2
votes

In my project (which based on webkit gtk), i want to call some class in webcore. But webkit encapsulation webcore, so i can't call these function directly (I know these through google, so i don't know whether it's correct). eg:

Frame* frame = m_pPage->focusController()->focusedOrMainFrame();
Document* focusedDocument = frame->document();
frame = frame->tree()->top();
Node* focusedNode = focusedDocument->focusedNode();

These class and function are defined in webcore, so i can't call them directly. I want to know how to access these? Modify the webkit?

I just need webcore module,so how can i installed webcore with out webkit?

1
Seems not enough feedback is available for WebCore crash. How do you fix it finally? - jianhua

1 Answers

2
votes

You can try download the webkit source, and go to the last line of "Source/WebKit/gtk/webkit/webkitwebview.cpp" to see the "WebCore::Page* core(WebKitWebView* webView);" function, this the core of convert webkit things to webcore things.

You need let the compiler know the struct of "WebKitWebViewPrivate" which define in the file "webkitwebviewprivate.h". (or you can defined your own WebKitWebViewPrivate to cheat the compiler. At this stage you only let the compiler to know the offset of filed "corePage")

But the difficult thing is you need to export the class Frame, Node, Dcoument and many other class.

So this is possible but difficult.


If you really only want use Frame, Node... You can build the webkit, and in build/.libs dir will have an libWebCore.a which contain all of your needs except the head files.