15#pragma GCC diagnostic ignored "-Wunused-parameter"
16#pragma GCC diagnostic ignored "-Wshadow"
86 auto handle = std::make_unique<RCefWebDisplayHandle>(args.
GetFullUrl());
88 handle->fCloseBrowser =
false;
121 else if (
ceflog ==
"verbose")
123 else if (
ceflog ==
"info")
125 else if (
ceflog ==
"warning")
127 else if (
ceflog ==
"error")
129 else if (
ceflog ==
"disable")
148 cef_argv.emplace_back(
"--user-data-dir=.");
149 cef_argv.emplace_back(
"--allow-file-access-from-files");
150 cef_argv.emplace_back(
"--disable-web-security");
151 cef_argv.emplace_back(
"--disable-gpu");
152 cef_argv.emplace_back(
"--ignore-gpu-blocklist");
154 cef_argv.emplace_back(
"--use-gl=swiftshader");
155 cef_argv.emplace_back(
"--enable-unsafe-swiftshader");
157 cef_argv.emplace_back(
"--off-screen-rendering-enabled");
159 cef_argv.emplace_back(
"--ozone-platform=headless");
163 cef_argv.emplace_back(
"--disable-logging");
164 cef_argv.emplace_back(
"--enable-logging=none");
220 settings.windowless_rendering_enabled =
true;
225 std::string
plog =
"cef.log";
278 if (host) host->CloseBrowser(
true);
339 GetMap().emplace(
"cef", std::make_unique<CefCreator>());
struct RCefCreatorReg newRCefCreatorReg
long Long_t
Signed long integer 4 bytes (long). Size depends on architecture.
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t rect
Option_t Option_t TPoint TPoint const char mode
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t height
R__EXTERN TSystem * gSystem
DISALLOW_COPY_AND_ASSIGN(FrameSourceVisitor)
void Visit(const CefString &str) override
FrameSourceVisitor(RCefWebDisplayHandle *handle)
IMPLEMENT_REFCOUNTING(FrameSourceVisitor)
RCefWebDisplayHandle * fHandle
~FrameSourceVisitor() override=default
static bool PlatformResize(CefRefPtr< CefBrowser > browser, int width, int height)
static void PlatformInit()
void OnPdfPrintFinished(const CefString &, bool ok) override
~HeadlessPrintCallback() override=default
HeadlessPrintCallback(bool *flag)
IMPLEMENT_REFCOUNTING(HeadlessPrintCallback)
DISALLOW_COPY_AND_ASSIGN(HeadlessPrintCallback)
CefRefPtr< SimpleApp > fCefApp
std::unique_ptr< ROOT::RWebDisplayHandle > Display(const ROOT::RWebDisplayArgs &args) override
CefRefPtr< CefBrowser > fBrowser
associated browser
void CloseBrowser()
Closes associated browser window.
static void AddCreator()
Add CEF creator.
bool WaitForContent(int tmout_sec, const std::string &extra_args)
Process system events until browser content is available Used in headless mode for batch production l...
unsigned fValid
used to verify if instance valid or not
~RCefWebDisplayHandle() override
Destructor Closes browser window if any.
bool Resize(int, int) override
Resize browser window.
Holds different arguments for starting browser with RWebDisplayHandle::Display() method.
THttpServer * GetHttpServer() const
returns http server instance, used for window display
int GetWidth() const
returns preferable web window width
int GetY() const
set preferable web window y position
std::string GetFullUrl() const
returns window url with append options
bool IsStandalone() const
Return true if browser should runs in standalone mode.
int GetHeight() const
returns preferable web window height
bool IsHeadless() const
returns headless mode
const std::string & GetExtraArgs() const
get extra command line arguments for starting web browser command
int GetX() const
set preferable web window x position
const std::string & GetPageContent() const
returns window url
const std::string & GetContent() const
get content
static std::map< std::string, std::unique_ptr< Creator > > & GetMap()
Static holder of registered creators of web displays.
void SetContent(const std::string &cont)
set content
static std::unique_ptr< Creator > & FindCreator(const std::string &name, const std::string &libname="")
Search for specific browser creator If not found, try to add one.
This class creates the ROOT Application Environment that interfaces to the windowing system eventloop...
TCefTimer(Long_t milliSec, Bool_t mode)
virtual Int_t GetValue(const char *name, Int_t dflt) const
Returns the integer value for a resource.
static const TString & GetBinDir()
Get the binary directory in the installation. Static utility function.
static const TString & GetLibDir()
Get the library directory in the installation.
static const TString & GetDataDir()
Get the data directory in the installation. Static utility function.
const char * Data() const
virtual void Sleep(UInt_t milliSec)
Sleep milliSec milli seconds.
virtual Bool_t ProcessEvents()
Process pending events (GUI, timers, sockets).
Handles synchronous and a-synchronous timer events.
Helper struct to add creator.