mirror of
https://github.com/swaywm/sway.git
synced 2024-12-30 17:06:40 +01:00
Render containers as urgent if they have an urgent child
This commit is contained in:
parent
be28c18ad5
commit
af5f736277
2 changed files with 9 additions and 4 deletions
|
@ -611,11 +611,13 @@ static void render_container_tabbed(struct sway_output *output,
|
||||||
struct border_colors *colors;
|
struct border_colors *colors;
|
||||||
struct wlr_texture *title_texture;
|
struct wlr_texture *title_texture;
|
||||||
struct wlr_texture *marks_texture;
|
struct wlr_texture *marks_texture;
|
||||||
|
bool urgent = view ?
|
||||||
|
view_is_urgent(view) : container_has_urgent_child(child);
|
||||||
|
|
||||||
if (view && view_is_urgent(view)) {
|
if (urgent) {
|
||||||
colors = &config->border_colors.urgent;
|
colors = &config->border_colors.urgent;
|
||||||
title_texture = child->title_urgent;
|
title_texture = child->title_urgent;
|
||||||
marks_texture = view->marks_urgent;
|
marks_texture = view ? view->marks_urgent : NULL;
|
||||||
} else if (cstate->focused || parent_focused) {
|
} else if (cstate->focused || parent_focused) {
|
||||||
colors = &config->border_colors.focused;
|
colors = &config->border_colors.focused;
|
||||||
title_texture = child->title_focused;
|
title_texture = child->title_focused;
|
||||||
|
@ -678,11 +680,13 @@ static void render_container_stacked(struct sway_output *output,
|
||||||
struct border_colors *colors;
|
struct border_colors *colors;
|
||||||
struct wlr_texture *title_texture;
|
struct wlr_texture *title_texture;
|
||||||
struct wlr_texture *marks_texture;
|
struct wlr_texture *marks_texture;
|
||||||
|
bool urgent = view ?
|
||||||
|
view_is_urgent(view) : container_has_urgent_child(child);
|
||||||
|
|
||||||
if (view && view_is_urgent(view)) {
|
if (urgent) {
|
||||||
colors = &config->border_colors.urgent;
|
colors = &config->border_colors.urgent;
|
||||||
title_texture = child->title_urgent;
|
title_texture = child->title_urgent;
|
||||||
marks_texture = view->marks_urgent;
|
marks_texture = view ? view->marks_urgent : NULL;
|
||||||
} else if (cstate->focused || parent_focused) {
|
} else if (cstate->focused || parent_focused) {
|
||||||
colors = &config->border_colors.focused;
|
colors = &config->border_colors.focused;
|
||||||
title_texture = child->title_focused;
|
title_texture = child->title_focused;
|
||||||
|
|
|
@ -526,5 +526,6 @@ void workspace_detect_urgent(struct sway_container *workspace) {
|
||||||
if (workspace->sway_workspace->urgent != new_urgent) {
|
if (workspace->sway_workspace->urgent != new_urgent) {
|
||||||
workspace->sway_workspace->urgent = new_urgent;
|
workspace->sway_workspace->urgent = new_urgent;
|
||||||
ipc_event_workspace(NULL, workspace, "urgent");
|
ipc_event_workspace(NULL, workspace, "urgent");
|
||||||
|
container_damage_whole(workspace);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue