Skip to content

Commit

Permalink
koekeishiya#300 Ignore minimized windows when an application is unhid…
Browse files Browse the repository at this point in the history
…den (required by some applications like Chrome..)
  • Loading branch information
koekeishiya authored and brorbw committed Jan 28, 2020
1 parent 4d04ba4 commit 3d917b2
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 22 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]
### Changed
- Ignore minimized windows when an application is unhidden (required by some applications like Chrome..) [#300](https://github.com/koekeishiya/yabai/issues/300)

## [2.2.2] - 2020-01-20
### Changed
Expand Down
40 changes: 18 additions & 22 deletions src/event.c
Original file line number Diff line number Diff line change
Expand Up @@ -236,17 +236,15 @@ static EVENT_CALLBACK(EVENT_HANDLER_APPLICATION_LAUNCHED)

for (int i = 0; i < window_count; ++i) {
struct window *window = window_list[i];
if (window) {
struct view *view = window_manager_find_managed_window(&g_window_manager, window);
if (view) continue;

if (window_manager_should_manage_window(window)) {
struct view *view = space_manager_tile_window_on_space_with_insertion_point(&g_space_manager, window, window_space(window), prev_window_id);
window_manager_add_managed_window(&g_window_manager, window, view);
prev_window_id = window->id;
}
} else {
prev_window_id = 0;
if (!window || window->is_minimized) continue;

struct view *view = window_manager_find_managed_window(&g_window_manager, window);
if (view) continue;

if (window_manager_should_manage_window(window)) {
struct view *view = space_manager_tile_window_on_space_with_insertion_point(&g_space_manager, window, window_space(window), prev_window_id);
window_manager_add_managed_window(&g_window_manager, window, view);
prev_window_id = window->id;
}
}

Expand Down Expand Up @@ -427,18 +425,16 @@ static EVENT_CALLBACK(EVENT_HANDLER_APPLICATION_VISIBLE)
uint32_t prev_window_id = g_window_manager.last_window_id;
for (int i = 0; i < window_count; ++i) {
struct window *window = window_list[i];
if (window) {
struct view *view = window_manager_find_managed_window(&g_window_manager, window);
if (view) continue;
if (!window || window->is_minimized) continue;

if (window_manager_should_manage_window(window)) {
struct view *view = space_manager_tile_window_on_space_with_insertion_point(&g_space_manager, window, window_space(window), prev_window_id);
window_manager_add_managed_window(&g_window_manager, window, view);
border_window_show(window);
prev_window_id = window->id;
}
} else {
prev_window_id = 0;
struct view *view = window_manager_find_managed_window(&g_window_manager, window);
if (view) continue;

if (window_manager_should_manage_window(window)) {
struct view *view = space_manager_tile_window_on_space_with_insertion_point(&g_space_manager, window, window_space(window), prev_window_id);
window_manager_add_managed_window(&g_window_manager, window, view);
border_window_show(window);
prev_window_id = window->id;
}
}

Expand Down

0 comments on commit 3d917b2

Please sign in to comment.