[webkit-dev] Runtime JSObject

David Carson dacarson at gmail.com
Sat Jan 19 04:35:54 PST 2008

I have run into this same problem too, and I was pointed to
WebFrame::windowObjectCleared(). If you re-attach your handler in that
method, everything will work, including frames and iframes.

For Mac look at:


On Fri, Jan 18, 2008 at 10:48 AM,  <jligman at mindspring.com> wrote:
> Hi Ankush,
> Not sure if this is exactly the right way to do this, or what your looking
> for, but I think something like the following might work.
> KJS::Window* window  = KJS::Window::retrieveWindow(frame);
> if (window) {
>     ExecState* exec = window->interpreter()->globalExec();
>     window->put( exec, "your object name here", your object here,
> KJS::DontDelete );
> }
> Thanks
> Joe
> -----Original Message-----
> From: ankush tiwari
> Sent: Jan 18, 2008 7:55 AM
> To: webkit-dev at lists.webkit.org
> Subject: [webkit-dev] Runtime JSObject
> Hi All,
> We are creating a run time JSObject "myImplementation" by using the NPN
> framework (C binding) available in webkit. Currently we are facing a problem
> that our object is not getting recognized when we navigate to a new page.
> (Note: Our object is not released, its just not getting recognized in the
> new page's interpreter context)
> We want to retain our object till the time the interpreter is valid but we
> are not able to do so. We observed that for every script handler a context
> is created and if we put our code in KJSProxy::evaluate and insert our
> object every time its working fine.
> But this way we are creating too many unnecessary instances of our object.
> Can someone suggest a better way for retaining the object throughout the
> interpreters life cycle?
> Thanks,
> Ankush.
> _______________________________________________
>  webkit-dev mailing list
>  webkit-dev at lists.webkit.org
>  http://lists.webkit.org/mailman/listinfo/webkit-dev

More information about the webkit-dev mailing list