ssd_update_title(ssd);
- if (view->maximized == VIEW_AXIS_BOTH) {
+ bool maximized = view->maximized == VIEW_AXIS_BOTH;
+ if (maximized) {
set_squared_corners(ssd, true);
set_maximize_alt_icon(ssd, true);
ssd->state.was_maximized = true;
}
+ if (view_is_tiled(view) && !maximized) {
+ set_squared_corners(ssd, true);
+ ssd->state.was_tiled_not_maximized = true;
+ }
}
static bool
int width = view->current.width;
struct theme *theme = view->server->theme;
- bool maximized = (view->maximized == VIEW_AXIS_BOTH);
- if (ssd->state.was_maximized != maximized) {
- set_squared_corners(ssd, maximized);
- set_maximize_alt_icon(ssd, maximized);
+ bool maximized = view->maximized == VIEW_AXIS_BOTH;
+ bool tiled_not_maximized = view_is_tiled(ssd->view) && !maximized;
+ if (ssd->state.was_maximized != maximized
+ || ssd->state.was_tiled_not_maximized != tiled_not_maximized) {
+ set_squared_corners(ssd, maximized || tiled_not_maximized);
+ if (ssd->state.was_maximized != maximized) {
+ set_maximize_alt_icon(ssd, maximized);
+ }
ssd->state.was_maximized = maximized;
+ ssd->state.was_tiled_not_maximized = tiled_not_maximized;
}
if (width == ssd->state.geometry.width) {
ssd_extents_update(ssd);
ssd->state.geometry = current;
}
- bool maximized = (ssd->view->maximized == VIEW_AXIS_BOTH);
+ bool maximized = ssd->view->maximized == VIEW_AXIS_BOTH;
if (ssd->state.was_maximized != maximized) {
ssd_border_update(ssd);
ssd_titlebar_update(ssd);
*/
ssd->state.was_maximized = maximized;
}
+ bool tiled_and_not_maximized = view_is_tiled(ssd->view) && !maximized;
+ if (ssd->state.was_tiled_not_maximized != tiled_and_not_maximized) {
+ ssd_titlebar_update(ssd);
+ /* see above about being future proof */
+ ssd->state.was_tiled_not_maximized = tiled_and_not_maximized;
+ }
return;
}
ssd_extents_update(ssd);