To work as RegisterJsObject in С#. Please detail.
When you click on the site, to be call the C++ function isPlaingChange.
JS can not find C++ functions isPlaingChange. How to register it?
- Code: Select all
virtual void OnContextCreated(CefRefPtr<ClientAppRenderer> app,
CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame,
CefRefPtr<CefV8Context> context) OVERRIDE
{
CefRefPtr<CefV8Value> object = context->GetGlobal();
CefRefPtr<CefV8Handler> handler = new V8Handler();
object->SetValue("ObjectForJs",
CefV8Value::CreateFunction("ObjectForJs", handler),
V8_PROPERTY_ATTRIBUTE_NONE);
}
- Code: Select all
class V8Handler : public CefV8Handler
{
public:
V8Handler()
{
}
void isPlaingChange(bool status)
{
MessageBox(NULL, (LPCWSTR)"isPlaingChange", (LPCWSTR)"isPlaingChange", MB_OK | MB_ICONWARNING);
}
virtual bool Execute(const CefString& name,
CefRefPtr<CefV8Value> object,
const CefV8ValueList& arguments,
CefRefPtr<CefV8Value>& retval,
CefString& exception) OVERRIDE
{
if (name == kRunPerfTest)
{
...