#pragma once #include "RoomCardWidgetBase.hpp" class RoomCardBubbleWidget : public RoomCardWidgetBase { public: explicit RoomCardBubbleWidget(const WidgetConfig& config); ~RoomCardBubbleWidget() override = default; lv_obj_t* create(lv_obj_t* parent) override; void applyStyle() override; void clearLvglObject() override; protected: void calculateSubButtonPosition(uint8_t index, const SubButtonConfig& cfg, int16_t& x, int16_t& y) override; private: // Bubble-specific elements lv_obj_t* bubble_ = nullptr; lv_obj_t* roomIcon_ = nullptr; void createBubbleLayout(); };