ultimatepp/bazaar/ChromiumBrowser/ClientApp.h
zbych 15044fed20 ChromiumBrowser: executution of native code from javascript and vice versa
git-svn-id: svn://ultimatepp.org/upp/trunk@8489 f0d560ea-af0d-0410-9eb7-867de7ffcac7
2015-05-30 17:04:23 +00:00

56 lines
1.4 KiB
C++

#ifndef _KioskChromium_CefApp_h_
#define _KioskChromium_CefApp_h_
#include <CtrlLib/CtrlLib.h>
#undef LOG
#undef DLOG
#undef CHECK
#undef LOG_INFO
#undef LOG_WARNING
#include "include/cef_app.h"
#include "include/cef_dom.h"
#undef LOG
#undef DLOG
#undef CHECK
#undef LOG_INFO
#undef LOG_WARNING
class ClientApp: public CefApp,
public CefBrowserProcessHandler,
public CefRenderProcessHandler,
public CefV8Handler
{
private:
CefRefPtr<CefRenderProcessHandler> GetRenderProcessHandler() { return this; }
void V8ValueListToCefListValue(const CefV8ValueList& src, CefRefPtr<CefListValue> & dst);
public:
typedef ClientApp CLASSNAME;
ClientApp();
virtual void OnBeforeCommandLineProcessing(const CefString& process_type,
CefRefPtr<CefCommandLine> command_line);
virtual void OnContextCreated(CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame,
CefRefPtr<CefV8Context> context);
virtual void OnFocusedNodeChanged(CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame,
CefRefPtr<CefDOMNode> node) OVERRIDE;
virtual bool Execute(const CefString& name,
CefRefPtr<CefV8Value> object,
const CefV8ValueList& arguments,
CefRefPtr<CefV8Value>& retval,
CefString& exception) OVERRIDE;
IMPLEMENT_REFCOUNTING(ClientApp);
};
#endif