mirror of
https://github.com/swaywm/sway.git
synced 2025-11-15 06:59:50 -05:00
swaybar: add status_padding command
Adds the bar subcommand `status_padding <padding>` which allows setting the padding used for swaybar. If `status_padding` is set to `0`, blocks will be able to take up the full height of the bar.
This commit is contained in:
parent
33d9de88ef
commit
c0f92cb2fb
12 changed files with 46 additions and 6 deletions
|
|
@ -23,6 +23,7 @@ static struct cmd_handler bar_handlers[] = {
|
|||
{ "position", bar_cmd_position },
|
||||
{ "separator_symbol", bar_cmd_separator_symbol },
|
||||
{ "status_command", bar_cmd_status_command },
|
||||
{ "status_padding", bar_cmd_status_padding },
|
||||
{ "strip_workspace_name", bar_cmd_strip_workspace_name },
|
||||
{ "strip_workspace_numbers", bar_cmd_strip_workspace_numbers },
|
||||
{ "tray_bindsym", bar_cmd_tray_bindsym },
|
||||
|
|
|
|||
21
sway/commands/bar/status_padding.c
Normal file
21
sway/commands/bar/status_padding.c
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "sway/commands.h"
|
||||
#include "log.h"
|
||||
|
||||
struct cmd_results *bar_cmd_status_padding(int argc, char **argv) {
|
||||
struct cmd_results *error = NULL;
|
||||
if ((error = checkarg(argc, "status_padding", EXPECTED_EQUAL_TO, 1))) {
|
||||
return error;
|
||||
}
|
||||
char *end;
|
||||
int padding = strtol(argv[0], &end, 10);
|
||||
if (strlen(end) || padding < 0) {
|
||||
return cmd_results_new(CMD_INVALID, "status_padding",
|
||||
"Padding must be a positive integer");
|
||||
}
|
||||
config->current_bar->status_padding = padding;
|
||||
wlr_log(WLR_DEBUG, "Status padding on bar %s: %d",
|
||||
config->current_bar->id, config->current_bar->status_padding);
|
||||
return cmd_results_new(CMD_SUCCESS, NULL, NULL);
|
||||
}
|
||||
|
|
@ -106,6 +106,7 @@ struct bar_config *default_bar_config(void) {
|
|||
bar->verbose = false;
|
||||
bar->pid = 0;
|
||||
bar->modifier = get_modifier_mask_by_name("Mod4");
|
||||
bar->status_padding = 1;
|
||||
if (!(bar->mode = strdup("dock"))) {
|
||||
goto cleanup;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -660,6 +660,8 @@ json_object *ipc_json_describe_bar_config(struct bar_config *bar) {
|
|||
}
|
||||
json_object_object_add(json, "bar_height",
|
||||
json_object_new_int(bar->height));
|
||||
json_object_object_add(json, "status_padding",
|
||||
json_object_new_int(bar->status_padding));
|
||||
json_object_object_add(json, "wrap_scroll",
|
||||
json_object_new_boolean(bar->wrap_scroll));
|
||||
json_object_object_add(json, "workspace_buttons",
|
||||
|
|
|
|||
|
|
@ -116,6 +116,7 @@ sway_sources = files(
|
|||
'commands/bar/position.c',
|
||||
'commands/bar/separator_symbol.c',
|
||||
'commands/bar/status_command.c',
|
||||
'commands/bar/status_padding.c',
|
||||
'commands/bar/strip_workspace_numbers.c',
|
||||
'commands/bar/strip_workspace_name.c',
|
||||
'commands/bar/swaybar_command.c',
|
||||
|
|
|
|||
|
|
@ -92,6 +92,11 @@ Sway allows configuring swaybar in the sway configuration file.
|
|||
*modifier* <Modifier>|none
|
||||
Specifies the modifier key that shows a hidden bar. Default is _Mod4_.
|
||||
|
||||
*status\_padding* <padding>
|
||||
Sets the vertical padding that is used for the status line. The default is
|
||||
_1_. If _padding_ is _0_, blocks will be able to take up the full height of
|
||||
the bar. This value will be multiplied by the output scale.
|
||||
|
||||
## TRAY
|
||||
|
||||
Swaybar provides a system tray where third-party applications may place icons.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue