wlr/taskbar: add justify option for Gtk::Box horizontal alignment
The `wlr/taskbar` module had no way to control its container's horizontal alignment. This change adds a `justify` config key (left|center|right) that maps to Gtk::Align::START/CENTER/END and is applied via set_halign() on the module's Gtk::Box. Default behavior remains unchanged (left).
This commit is contained in:
@@ -57,6 +57,10 @@ Addressed by *wlr/taskbar*
|
||||
default: false ++
|
||||
If set to true, group tasks by their app_id. Cannot be used with 'active-first'.
|
||||
|
||||
*justify*: ++
|
||||
typeof: string ++
|
||||
The alignment of the text within the module's box, allowing options 'left', 'right', or 'center' to define the positioning.
|
||||
|
||||
*on-click*: ++
|
||||
typeof: string ++
|
||||
The action which should be triggered when clicking on the application button with the left mouse button.
|
||||
|
||||
@@ -98,6 +98,17 @@ Task::Task(const waybar::Bar &bar, const Json::Value &config, Taskbar *tbar,
|
||||
content_.add(icon_);
|
||||
content_.add(text_after_);
|
||||
|
||||
if (config_["justify"].isString()) {
|
||||
auto justify_str = config_["justify"].asString();
|
||||
if (justify_str == "left") {
|
||||
content_.set_halign(Gtk::ALIGN_START);
|
||||
} else if (justify_str == "right") {
|
||||
content_.set_halign(Gtk::ALIGN_END);
|
||||
} else if (justify_str == "center") {
|
||||
content_.set_halign(Gtk::ALIGN_CENTER);
|
||||
}
|
||||
}
|
||||
|
||||
content_.show();
|
||||
button.add(content_);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user