diff --git a/docs/labwc-config.5.scd b/docs/labwc-config.5.scd index 995be07c..ca167b62 100644 --- a/docs/labwc-config.5.scd +++ b/docs/labwc-config.5.scd @@ -401,9 +401,9 @@ this is for compatibility with Openbox. fields are: - 'B' - shell type, values [xwayland|xdg-shell] - 'b' - shell type (short form), values [X|W] - - 'S' - state of window, values [M|m|F] (3 spaces allocated) - (maximized, minimized, fullscreen) - - 's' - state of window (short form), values [M|m|F] (1 space) + - 'S' - state of window, values [m|s|M|F] (4 spaces allocated) + (minimized, shaded, maximized, fullscreen) + - 's' - state of window (short form), values [m|s|M|F] (1 space) - 'I' - wm-class/app-id - 'i' - wm-class/app-id trimmed, remove "org." if available - 'n' - desktop entry/file application name, falls back to diff --git a/src/osd/osd-field.c b/src/osd/osd-field.c index 9852b11f..01c4e48b 100644 --- a/src/osd/osd-field.c +++ b/src/osd/osd-field.c @@ -111,10 +111,12 @@ static void field_set_win_state(struct buf *buf, struct view *view, const char *format) { /* custom type conversion-specifier: s */ - if (view->maximized) { - buf_add(buf, "M"); - } else if (view->minimized) { + if (view->minimized) { buf_add(buf, "m"); + } else if (view->shaded) { + buf_add(buf, "s"); + } else if (view->maximized) { + buf_add(buf, "M"); } else if (view->fullscreen) { buf_add(buf, "F"); } else { @@ -127,6 +129,7 @@ field_set_win_state_all(struct buf *buf, struct view *view, const char *format) { /* custom type conversion-specifier: S */ buf_add(buf, view->minimized ? "m" : " "); + buf_add(buf, view->shaded ? "s" : " "); buf_add(buf, view->maximized ? "M" : " "); buf_add(buf, view->fullscreen ? "F" : " "); /* TODO: add always-on-top and omnipresent ? */