Skip to content

Commit

Permalink
#788 windows that are made managable through rules should be eligible…
Browse files Browse the repository at this point in the history
… for opacity, focus-follows-mouse, and borders
  • Loading branch information
koekeishiya committed Jul 28, 2021
1 parent d8f4048 commit a267eb5
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 4 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm

## [Unreleased]
### Changed
- Malformed windows that are managed through rules should be eligible for window alpha, focus follows mouse, and window borders [#788](https://github.com/koekeishiya/yabai/issues/788)
- Improve behaviour of *focus_follows_mouse autoraise*, preventing a window from being raised if it would occlude some other window. autoraise is temporarily disabled while a menu is opened. [#407](https://github.com/koekeishiya/yabai/issues/407)
- Work around broken Apple code for retrieving menubar dimensions on Apple Silicon M1 [#793](https://github.com/koekeishiya/yabai/issues/793)
- Rework query attributes and define dataformat as part of the API [#775](https://github.com/koekeishiya/yabai/issues/775)
Expand Down
2 changes: 1 addition & 1 deletion src/border.c
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ void border_create(struct window *window)
{
if (window->border.id) return;

if ((!window_is_standard(window)) && (!window_is_dialog(window))) return;
if ((!window->rule_manage) && (!window_is_standard(window)) && (!window_is_dialog(window))) return;

CGSNewRegionWithRect(&window->frame, &window->border.region);
window->border.frame.size = window->frame.size;
Expand Down
8 changes: 6 additions & 2 deletions src/event.c
Original file line number Diff line number Diff line change
Expand Up @@ -817,8 +817,12 @@ static EVENT_CALLBACK(EVENT_HANDLER_MOUSE_MOVED)
struct window *window = window_manager_find_window_at_point(&g_window_manager, point);
if (window) {
if (window->id == g_window_manager.focused_window_id) goto out;
if (!window_level_is_standard(window)) goto out;
if (!window_is_standard(window)) goto out;

if (!window->rule_manage) {
if (!window_level_is_standard(window)) goto out;
if ((!window_is_standard(window)) && (!window_is_dialog(window))) goto out;
}


if (g_window_manager.ffm_mode == FFM_AUTOFOCUS) {

Expand Down
2 changes: 1 addition & 1 deletion src/window_manager.c
Original file line number Diff line number Diff line change
Expand Up @@ -474,7 +474,7 @@ void window_manager_set_window_opacity(struct window_manager *wm, struct window
{
if (!wm->enable_window_opacity) return;
if (window->opacity != 0.0f) return;
if ((!window_is_standard(window)) && (!window_is_dialog(window))) return;
if ((!window->rule_manage) && (!window_is_standard(window)) && (!window_is_dialog(window))) return;

window_manager_set_opacity(wm, window, opacity);
}
Expand Down

0 comments on commit a267eb5

Please sign in to comment.