refactor: use upstream Widget::IsVisibleOnAllWorkspaces()
(#45887)
* refactor: use upstream Widget::IsVisibleOnAllWorkspaces() * chore: add to breaking changes
This commit is contained in:
parent
1b5db9989e
commit
32141eacfb
2 changed files with 9 additions and 14 deletions
|
@ -1527,20 +1527,8 @@ void NativeWindowViews::SetVisibleOnAllWorkspaces(
|
|||
}
|
||||
|
||||
bool NativeWindowViews::IsVisibleOnAllWorkspaces() const {
|
||||
#if BUILDFLAG(IS_LINUX)
|
||||
if (IsX11()) {
|
||||
// Use the presence/absence of _NET_WM_STATE_STICKY in _NET_WM_STATE to
|
||||
// determine whether the current window is visible on all workspaces.
|
||||
x11::Atom sticky_atom = x11::GetAtom("_NET_WM_STATE_STICKY");
|
||||
std::vector<x11::Atom> wm_states;
|
||||
auto* connection = x11::Connection::Get();
|
||||
connection->GetArrayProperty(
|
||||
static_cast<x11::Window>(GetAcceleratedWidget()),
|
||||
x11::GetAtom("_NET_WM_STATE"), &wm_states);
|
||||
return base::Contains(wm_states, sticky_atom);
|
||||
}
|
||||
#endif
|
||||
return false;
|
||||
// On Windows this always returns false.
|
||||
return widget()->IsVisibleOnAllWorkspaces();
|
||||
}
|
||||
|
||||
content::DesktopMediaID NativeWindowViews::GetDesktopMediaID() const {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue