[webkit-dev] Can any one enlight me on this matter; linking problem?
Hi ! When building webkit(gtk) on the maemo platform (i.e. in then Scratchbox ARMEL ) I get the following linking problem: ./.libs/libWebCore.a(libWebCore_la-StyleTransformData.o):(.bss._ZZN7WebC ore11RenderStyle16initialTransformEvE4tops[*WebCore::RenderStyle::initia lTransform()::ops]+0x0): multiple definition of `WebCore::RenderStyle::initialTransform()::tops' ./.libs/libWebCore.a(libWebCore_la-CSSStyleSelector.o):(.bss._ZZN7WebCor e11RenderStyle16initialTransformEvE4tops[WebCore::RenderStyle::initialTr ansform()::ops]+0x0): first defined here When I build on my ubuntu for (gtk) it works fine The version is the latest, but I have had the problem at least last week as well. Does anyone knows the source of problem or could direct me in some direction (tool chain versions?) A Detailed printout of the problem: - creating libWebCore.la (cd .libs rm -f libWebCore.la ln -s ../libWebCore.la libWebCore.la) /bin/sh ./libtool --tag=CXX --mode=link g++ -o libwebkit-1.0.la -rpath /usr/local/lib -version-info 1:0:0 Wl,--version-script,/home/miws/WebKit/symbols.filter WebKit/gtk/WebCoreSupport/libwebkit_1_0_la-ChromeClientGtk.lo WebKit/gtk/WebCoreSupport/libwebkit_1_0_la-ContextMenuClientGtk.lo WebKit/gtk/WebCoreSupport/libwebkit_1_0_la-DragClientGtk.lo WebKit/gtk/WebCoreSupport/libwebkit_1_0_la-EditorClientGtk.lo WebKit/gtk/WebCoreSupport/libwebkit_1_0_la-FrameLoaderClientGtk.lo WebKit/gtk/WebCoreSupport/libwebkit_1_0_la-InspectorClientGtk.lo WebKit/gtk/WebCoreSupport/libwebkit_1_0_la-PasteboardHelperGtk.lo WebKit/gtk/webkit/libwebkit_1_0_la-webkitnetworkrequest.lo WebKit/gtk/webkit/libwebkit_1_0_la-webkitprivate.lo WebKit/gtk/webkit/libwebkit_1_0_la-webkitversion.lo WebKit/gtk/webkit/libwebkit_1_0_la-webkitwebbackforwardlist.lo WebKit/gtk/webkit/libwebkit_1_0_la-webkitwebframe.lo WebKit/gtk/webkit/libwebkit_1_0_la-webkitwebhistoryitem.lo WebKit/gtk/webkit/libwebkit_1_0_la-webkitwebsettings.lo WebKit/gtk/webkit/libwebkit_1_0_la-webkitwebview.lo DerivedSources/libwebkit_1_0_la-webkitenumtypes.lo DerivedSources/libwebkit_1_0_la-webkitmarshal.lo libWebCore.la g++ -shared -nostdlib /scratchbox/compilers/cs2005q3.2-glibc2.5-arm/bin/../lib/gcc/arm-none-li nux-gnueabi/3.4.4/../../../../arm-none-linux-gnueabi/lib/crti.o /scratchbox/compilers/cs2005q3.2-glibc2.5-arm/bin/../lib/gcc/arm-none-li nux-gnueabi/3.4.4/crtbeginS.o WebKit/gtk/WebCoreSupport/.libs/libwebkit_1_0_la-ChromeClientGtk.o WebKit/gtk/WebCoreSupport/.libs/libwebkit_1_0_la-ContextMenuClientGtk.o WebKit/gtk/WebCoreSupport/.libs/libwebkit_1_0_la-DragClientGtk.o WebKit/gtk/WebCoreSupport/.libs/libwebkit_1_0_la-EditorClientGtk.o WebKit/gtk/WebCoreSupport/.libs/libwebkit_1_0_la-FrameLoaderClientGtk.o WebKit/gtk/WebCoreSupport/.libs/libwebkit_1_0_la-InspectorClientGtk.o WebKit/gtk/WebCoreSupport/.libs/libwebkit_1_0_la-PasteboardHelperGtk.o WebKit/gtk/webkit/.libs/libwebkit_1_0_la-webkitnetworkrequest.o WebKit/gtk/webkit/.libs/libwebkit_1_0_la-webkitprivate.o WebKit/gtk/webkit/.libs/libwebkit_1_0_la-webkitversion.o WebKit/gtk/webkit/.libs/libwebkit_1_0_la-webkitwebbackforwardlist.o WebKit/gtk/webkit/.libs/libwebkit_1_0_la-webkitwebframe.o WebKit/gtk/webkit/.libs/libwebkit_1_0_la-webkitwebhistoryitem.o WebKit/gtk/webkit/.libs/libwebkit_1_0_la-webkitwebsettings.o WebKit/gtk/webkit/.libs/libwebkit_1_0_la-webkitwebview.o DerivedSources/.libs/libwebkit_1_0_la-webkitenumtypes.o DerivedSources/.libs/libwebkit_1_0_la-webkitmarshal.o -Wl,--whole-archive ./.libs/libWebCore.a -Wl,--no-whole-archive -L/usr/lib /usr/lib/libgthread-2.0.so -lgtk-x11-2.0 -lgdk-x11-2.0 /usr/lib/libatk-1.0.so -lrt -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lpango-1.0 /usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so /usr/lib/libglib-2.0.so -lXt -lX11 -lSM -lICE /usr/lib/libcurl.so -lssl -lcrypto -lcairo -lfontconfig -lfreetype -licui18n -licuuc -licudata /usr/lib/libsqlite3.so -ldl /usr/lib/libxslt.so -lz -lxml2 /usr/lib/libjpeg.so -lpthread -L/scratchbox/compilers/cs2005q3.2-glibc2.5-arm/bin/../lib/gcc/arm-none- linux-gnueabi/3.4.4 -L/scratchbox/compilers/cs2005q3.2-glibc2.5-arm/bin/../lib/gcc -L/usr/lib/gcc/arm-none-linux-gnueabi/3.4.4 -L/scratchbox/compilers/cs2005q3.2-glibc2.5-arm/bin/../lib/gcc/arm-none- linux-gnueabi/3.4.4/../../../../arm-none-linux-gnueabi/lib -lstdc++ -lm -lc -lgcc_s /scratchbox/compilers/cs2005q3.2-glibc2.5-arm/bin/../lib/gcc/arm-none-li nux-gnueabi/3.4.4/crtendS.o /scratchbox/compilers/cs2005q3.2-glibc2.5-arm/bin/../lib/gcc/arm-none-li nux-gnueabi/3.4.4/../../../../arm-none-linux-gnueabi/lib/crtn.o -Wl,-soname -Wl,libwebkit-1.0.so.1 -o .libs/libwebkit-1.0.so.1.0.0 ./.libs/libWebCore.a(libWebCore_la-StyleTransformData.o):(.bss._ZZN7WebC ore11RenderStyle16initialTransformEvE4tops[*WebCore::RenderStyle::initia lTransform()::tops]+0x0): multiple definition of `WebCore::RenderStyle::initialTransform()::tops' ./.libs/libWebCore.a(libWebCore_la-CSSStyleSelector.o):(.bss._ZZN7WebCor
[webkit-dev] Equivalent of WebKit/Qt's link delegation policy in WebKit/Gtk+?
Hi, I'm trying to work with the GTK+ WebKit from svn/trunk to do rendering for my application. Unfortunately, I'm having some troubles. Unlike the majority of users, I don't need WebKit to access URIs on the Internet. I need to be able to intercept them and display custom HTML content to allow navigation of some complex, in-memory data structures. I thought you might be able to do something with the navigation-requested signal, but this doesn't appear to allow you to substitute content for the URI. In digging around in the source tree, I discovered that the Qt port allows you to get the linkClicked signal, provided you've registered the appropriate link delegation policy with the WebView. Is this functionality planned for the GTK+ version? Is someone currently working on implementing it? If the answers to this are no, does anyone have any pointers for how to implement something similar for the Gtk+ version? I'm not used to the Qt syntax, so I can't find the code where it interacts with the core WebKit classes to accomplish this functionality. I'd be willing to give this a go or at least help someone who is working on this, as it is essential for what I'm doing and my only other alternative is to use the soon-to-be-unmaintained GtkHTML(3) from Gnome svn. Any information on how this sort of behavior can be accomplished with the existing GTK+ api would also be welcome. Thanks in advance, ast -- Andrew S. Townley [EMAIL PROTECTED] http://atownley.org ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] Webkit (Mobile Safari) issues in the iPhone
Hi Dave, On Thu, Oct 16, 2008 at 7:26 AM, David Kilzer [EMAIL PROTECTED] wrote: How are you forcing layout? If you're calling a method on a WebView object, then you're using non-public API and, as I mentioned earlier, your application may crash or hang. If you just need a way to force layout in JavaScript, this may be done by executing this statement: document.body.offsetTop; It seems that solved the issue :-) Many thanks, and I applaud you. Diego ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit core need to be cleanly separated from ports, behind a vector table
While a COM or similar interface may result in a library which makes porting easiest for new platforms, it sometimes can be harder to develop and maintain. We've been there and I can say that in some cases a COM-like interface really is nice to work with; and in other cases it is perhaps too problematic to maintain. The Mozilla people initially went a little overboard with this and decided it would be better to scale it back somewhat. For me, while it would be nice if everything could fit into a plug-in interface, in the short run I would be happy if platform-specific functionality was sometimes handled less by ifdefs within the code and more via some kind of platform or environment abstraction. Here's an example; in _javascript_Core/kjs/Shell.cpp there is this: void StopWatch::start() { #if PLATFORM(QT) QDateTime t = QDateTime::currentDateTime(); m_startTime = t.toTime_t() * 1000 + t.time().msec(); #elif PLATFORM(WIN_OS) m_startTime = timeGetTime(); #else gettimeofday(m_startTime, 0); #endif } For me to add a new platform I need to edit this file and do an integration whenever the devline WebKit version of it changes. It would be nice if the code instead looked like this: void StopWatch::start() { m_startTime = platformTimeMs(); // The back-end of this is specified per platform. } Yes you could call platformTimeMs() via a function table or COM interface, but for a lot of people it would suffice if it was simply implemented in a platform-specific source directory. Paul On Wed, Oct 15, 2008 at 12:04 PM, lkcl [EMAIL PROTECTED] wrote: what is there about, for example, the apache2 vector table system, where you fill in 28 or so functions in a vector table and hand it back to the apache runtime, that makes refactoring and redesign difficult? extensions to the table can be done by having a union of structs, with an int at the beginning of the table saying "i'm a version 1" or "i'm a version 2". then, if you have a "version 1"-using-port that connects to a "version 2" library, the extra functions that differ from version 1 and 2 will be NULL; the version 2 webkit library will go "oh, these are NULL, so we're not providing version 2 functionality". You seem to be reinventing COM. While there are certainly parts of WebCore and WebKit as a whole where some well-chosen interfaces would indeed make it easier to develop and maintain additional platforms and extensions (example: dave hyatt's recent refactoring of ScrollView and friends), I'm not sure that a large C-style vector of function pointers for all of WebKit is an effective way to accomplish this. far from making it _more_ difficult to do a redesign, such techniques would make it _easier_ i believe. Do you have a proof of concept? Comparing approaches is always easier with a concrete example than with abstract descriptions. If nothing else, that would help validate your assertion that it would be easy to implement this way :-). Amanda Walker [EMAIL PROTECTED] ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] Equivalent of WebKit/Qt's link delegation policy in WebKit/Gtk+?
On Mon, 2008-10-20 at 16:07 +0100, Andrew S. Townley wrote: Hi, Hello, Unlike the majority of users, I don't need WebKit to access URIs on the Internet. I need to be able to intercept them and display custom HTML content to allow navigation of some complex, in-memory data structures. I take it that you intend to feed the renderer with HTML code contained in memory, without writing it to files. I think what you are looking for is still not really implemented for WebKit/GTK+, and might be this: https://bugs.webkit.org/show_bug.cgi?id=17147 Any information on how this sort of behavior can be accomplished with the existing GTK+ api would also be welcome. Well, you may be able to replace/edit the contents of the page by using the JavaScriptCore API directly. It doesn't sound very elegant/high level to me, but is possible today =). See you, -- Gustavo Noronha Silva [EMAIL PROTECTED] GNOME contributor: http://www.gnome.org/ ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] how can I callback javascript function from webkit engine?
Hi Alp Toker I am involved in porting webkit. I was testing a .js file with some callback. The file parsing is success and the script is executing fine. But when I press some key the function in the .js file should be invoked. But it wasnt working. Can u brief me, where exactly in Javascript to debug on this. - Sundar Cloud zheng wrote: Hi, Alp Toker, Thank you so much. You are a great help. :-) Regards and thanks Cloud -Original Message- From: Alp Toker [mailto:[EMAIL PROTECTED] Sent: 2007年12月27日 5:10 To: Jing Zheng Cc: webkit-dev@lists.webkit.org Subject: Re: how can I callback javascript function from webkit engine? Jing Zheng wrote: hi, I am working on an porting application that using webkit engine to render a html page in my application view. now I am stuck in the problem that I can not find a way to call javascript function defined in html script from my application. Hi, If you're using a WebView-style port (Mac, Win, GTK+) you can access the the JSGlobalContextRef holding the global object/state and JSObjectRef representing the frame's JavaScript window object with the window-object-cleared signal/callback/event, which is raised in preparation for a new load. You can also access the JSGlobalContextRef at other times using webkit_web_frame_get_global_context() / WebFrame::globalContext() or similar. Once you have these objects, you can use the standard portable JavaScriptCore API documented here: http://developer.apple.com/documentation/Carbon/Reference/WebKit_JavaScriptC ore_Ref/index.html I'm planning to write a tutorial on this since it's a frequently asked question. Good luck! ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-dev -- View this message in context: http://www.nabble.com/how-can-I-callback-javascript-function-from-webkit-engine--tp14494321p20083486.html Sent from the Webkit mailing list archive at Nabble.com. ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev