wayland: Fix spectacle not covering fullscreen windows
The most recently activated window can be an overlay window that covers all screens. If its center is not at an output with the fullscreen window, then the fullscreen window's stack position won't be lowered. In order to fix that, this change makes isActiveFullscreen() use Toplevel::isOnOutput(), which uses geometry info, to check if both windows are on the same output.
This commit is contained in:
parent
5fe9fd13ad
commit
749cf798ce
1 changed files with 1 additions and 1 deletions
|
@ -2036,7 +2036,7 @@ bool AbstractClient::isActiveFullScreen() const
|
|||
// according to NETWM spec implementation notes suggests
|
||||
// "focused windows having state _NET_WM_STATE_FULLSCREEN" to be on the highest layer.
|
||||
// we'll also take the screen into account
|
||||
return ac && (ac == this || ac->output() != output()|| ac->allMainClients().contains(const_cast<AbstractClient*>(this)));
|
||||
return ac && (ac == this || !ac->isOnOutput(output()) || ac->allMainClients().contains(const_cast<AbstractClient*>(this)));
|
||||
}
|
||||
|
||||
#define BORDER(which) \
|
||||
|
|
Loading…
Reference in a new issue