Bug 15687 - [Gtk] Allow API clients to interact with JavaScript in web pages
Summary: [Gtk] Allow API clients to interact with JavaScript in web pages
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: 523.x (Safari 3)
Hardware: PC Linux
: P2 Enhancement
Assignee: Nobody
Keywords: Gtk
Depends on: 15569 16029 16149 16168
  Show dependency treegraph
Reported: 2007-10-25 05:56 PDT by m. dietrich
Modified: 2007-12-02 01:57 PST (History)
3 users (show)

See Also:

Fix (3.33 KB, patch)
2007-12-01 22:15 PST, Alp Toker
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description m. dietrich 2007-10-25 05:56:58 PDT
this would require to retrieve the JSGlobalContextRef and some functions as well as access to the required header files at compile time.
Comment 1 Mark Rowe (bdash) 2007-10-25 06:05:53 PDT
It sounds like this is basically the functionality that -[WebFrame windowObject], -[WebFrame globalContex] and the webView:didClearWindowObject:forFrame: delegate method available in the Mac port.  This would seem to map to two WebKitFrame methods and a signal in the Gtk API.

I mailed Michael a patch that implements most of this functionality recently.  It was blocked by a few minor issues.  Are you able to complete it and attach it for review?
Comment 2 Alp Toker 2007-11-26 16:41:59 PST
This looks like a tracking bug for a few distinct bugs for which I've added dependencies.
Comment 3 Alp Toker 2007-12-01 22:15:13 PST
Created attachment 17639 [details]
Comment 4 Alp Toker 2007-12-01 22:45:52 PST
Landed in r28313.

http://bugs.webkit.org/show_bug.cgi?id=16029 is fixed, applications will have to do:

#include <JavaScriptCore/JSBase.h>
#include <JavaScriptCore/JSContextRef.h>
#include <JavaScriptCore/JSStringRef.h>
#include <JavaScriptCore/JSObjectRef.h>
#include <JavaScriptCore/JSValueRef.h>
Comment 5 Alp Toker 2007-12-02 01:57:00 PST
Comment on attachment 17639 [details]

Already r'ed by aroben, bug closed.