#include #include #include #include #include #include #include #include #include class CEFWidget : public QWidget { public: explicit CEFWidget(QWidget *parent = nullptr) : QWidget(parent) { setFixedSize(400, 400); // TODO: Args char *argv[] = {}; int argc = 0; std::cout << "ficlk" << std::endl; // Create browser CefWindowInfo window_info; CefBrowserSettings browser_settings; window_info.SetAsChild(winId(), {0, 0, 400, 400}); CefBrowserHost::CreateBrowser(window_info, nullptr, "https://www.qt.io", browser_settings, nullptr, nullptr); } ~CEFWidget() { CefShutdown(); } }; int main(int argc, char *argv[]) { CefMainArgs main_args(argc, argv); CefRefPtr cefApp; int exit_code = CefExecuteProcess(main_args, cefApp, nullptr); if (exit_code >= 0) { return exit_code; } CefMainArgs args(argc, argv); CefSettings settings; CefString(&settings.resources_dir_path) .FromWString(L"/home/imsohexy/dev/projects/web-browser/build/lib/"); CefString(&settings.locales_dir_path) .FromWString( L"/home/imsohexy/dev/projects/web-browser/build/lib/locales/"); CefString(&settings.root_cache_path) .FromWString(L"/home/imsohexy/dev/projects/web-browser/.cache/cef"); settings.no_sandbox = true; settings.pack_loading_disabled = true; CefInitialize(args, settings, nullptr, nullptr); QApplication app(argc, argv); QWidget mainWindow; mainWindow.setWindowTitle("web-browser"); QVBoxLayout layout(&mainWindow); // CEFWidget cefWidget(&mainWindow); // layout.addWidget(&cefWidget); mainWindow.show(); return app.exec(); }