Indicate focus view on layout select

This makes it more clear that we are inside of a mode. Ultimately indicating the
views that are going to get tiled would be the best solution but for now this is
good enough.
This commit is contained in:
raichoo 2020-08-29 08:21:02 +00:00
parent 28bf7f4b32
commit 7da20bc57e
2 changed files with 28 additions and 2 deletions

View File

@ -75,7 +75,14 @@ button_handler(
static void
cancel(void)
{}
{
struct hikari_view *focus_view = hikari_server.workspace->focus_view;
if (focus_view != NULL) {
hikari_view_damage_whole(focus_view);
hikari_indicator_damage(&hikari_server.indicator, focus_view);
}
}
static void
cursor_move(uint32_t time_msec)

View File

@ -963,7 +963,26 @@ hikari_renderer_dnd_mode(struct hikari_renderer *renderer)
void
hikari_renderer_layout_select_mode(struct hikari_renderer *renderer)
{
render_default_workspace(renderer);
struct hikari_output *output = renderer->wlr_output->data;
render_background(renderer, 1);
render_workspace(renderer);
struct hikari_view *focus_view = hikari_server.workspace->focus_view;
if (focus_view != NULL && focus_view->output == output) {
renderer->geometry = hikari_view_border_geometry(focus_view);
render_indicator_frame(&focus_view->indicator_frame,
hikari_configuration->indicator_selected,
renderer);
render_indicator(&hikari_server.indicator, renderer);
}
#ifdef HAVE_LAYERSHELL
render_overlay(renderer);
#endif
}
void