[webkit-dev] Can any one enlight me on this matter; linking problem?

2008-10-20 Thread Mikael Tennhammar
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+?

2008-10-20 Thread Andrew S. Townley
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

2008-10-20 Thread Diego Taylor
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

2008-10-20 Thread Paul Pedriana




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+?

2008-10-20 Thread Gustavo Noronha Silva
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?

2008-10-20 Thread rahulsundar

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