#include "ui_substrate.hpp" #include "file_watcher.hpp" #include "rmlui_renderer_gl3.h" #include #include #include #include #include #include #include #include #include // The kernel owns GL; system EGL/GLES headers are allowed here (same as the // retired spike). wlr.hpp already pulled + via // wlr/render/egl.h and GLES via the adapted renderer. #include #include #include // glEGLImageTargetTexture2DOES #include #include #include #include #include #include #include #include #include #include #include // The installed asset root, resolved against for a RELATIVE UiSurfaceSpec:: // rml_path when $UNBOX_ASSET_DIR is unset. The orchestrator adds // -DUNBOX_ASSET_DIR_DEFAULT="" to the kernel build; until // then "." lets the kernel build + run from the source/working dir. #ifndef UNBOX_ASSET_DIR_DEFAULT #define UNBOX_ASSET_DIR_DEFAULT "." #endif namespace unbox::kernel { namespace { constexpr std::uint32_t kDrmFormatArgb8888 = 0x34325241; // 'AR24' = LE {B,G,R,A} // Resolve UiSurfaceSpec::rml_path to an ABSOLUTE filesystem path so RmlUi can // load it and resolve the document's relative /