#pragma once #include #include "wlr-layer-shell-unstable-v1-client-protocol.h" namespace waybar { struct Client; struct Bar { Bar(Client& client, std::unique_ptr&& output); Bar(const Bar&) = delete; Client& client; Gtk::Window window; struct wl_surface *surface; struct zwlr_layer_surface_v1 *layer_surface; std::unique_ptr output; bool visible = true; auto set_width(int) -> void; auto toggle() -> void; private: auto setup_widgets() -> void; auto setup_css() -> void; int width = 10; Glib::RefPtr style_context; Glib::RefPtr css_provider; }; }