Merge pull request #4014 from piwonskp/4008/dynamic-drawer
feat(Group/Drawer): add dynamic drawer hiding modules based on module's class
This commit is contained in:
@@ -20,6 +20,7 @@ class AModule : public IModule {
|
||||
static constexpr const char* MODULE_CLASS = "module";
|
||||
|
||||
~AModule() override;
|
||||
sigc::signal<void, AModule*> signal_updated;
|
||||
auto update() -> void override;
|
||||
virtual auto refresh(int shouldRefresh) -> void {};
|
||||
operator Gtk::Widget&() override;
|
||||
|
||||
+6
-1
@@ -19,7 +19,7 @@ class Group : public AModule {
|
||||
operator Gtk::Widget&() override;
|
||||
|
||||
virtual Gtk::Box& getBox();
|
||||
void addWidget(Gtk::Widget& widget);
|
||||
void addWidget(AModule* module);
|
||||
|
||||
protected:
|
||||
Gtk::Box box;
|
||||
@@ -28,6 +28,7 @@ class Group : public AModule {
|
||||
bool is_first_widget = true;
|
||||
bool is_drawer = false;
|
||||
bool click_to_reveal = false;
|
||||
std::string always_visible_class;
|
||||
bool empty_if_drawer_empty = false;
|
||||
int reveal_delay = 0;
|
||||
std::string add_class_to_drawer_children;
|
||||
@@ -37,6 +38,10 @@ class Group : public AModule {
|
||||
bool handleScroll(GdkEventScroll* e) override;
|
||||
void show_group();
|
||||
void hide_group();
|
||||
void manage_visibility(AModule* module);
|
||||
void show_widget(Gtk::Widget& widget);
|
||||
void hide_widget(Gtk::Widget& widget);
|
||||
void hide_current_widget_if_inactive();
|
||||
};
|
||||
|
||||
} // namespace waybar
|
||||
|
||||
Reference in New Issue
Block a user