#pragma once #include #include #include #include "gtkmm/box.h" #include "gtkmm/label.h" #include "gtkmm/window.h" namespace waybar::modules::upower { class UPowerTooltip : public Gtk::Window { private: typedef std::unordered_map Devices; const std::string getDeviceIcon(UpDeviceKind& kind); std::unique_ptr contentBox; uint iconSize; uint tooltipSpacing; uint tooltipPadding; public: UPowerTooltip(uint iconSize, uint tooltipSpacing, uint tooltipPadding); virtual ~UPowerTooltip(); uint updateTooltip(Devices& devices); }; } // namespace waybar::modules::upower