#include "screen.h" #include namespace roro { bool Screen::begin() { canvas_.setColorDepth(16); canvas_.setPsram(false); return canvas_.createSprite(theme::kWidth, theme::kHeight) != nullptr; } void Screen::render(AppManager& apps, const StatusInfo& status, const Toast* toast) { canvas_.fillSprite(theme::kBackground); const auto& area = theme::kContent; canvas_.setClipRect(area.x, area.y, area.w, area.h); apps.foreground().draw(canvas_); canvas_.clearClipRect(); widgets::statusBar(canvas_, status); if (toast) widgets::toast(canvas_, *toast); canvas_.pushSprite(&M5Cardputer.Display, 0, 0); } } // namespace roro