diff options
| author | Vaxry <43317083+vaxerski@users.noreply.github.com> | 2026-02-20 22:31:59 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-02-20 22:31:59 +0000 |
| commit | d91952c555085758117f1eb360d4ace120ee5d65 (patch) | |
| tree | 7bcf2d3b9454b075c0fc68b09f3c33e0f27b8a96 /src/protocols/core/Output.cpp | |
| parent | 8b17a7404b70a5ca2383320167a88e03289f0211 (diff) | |
wayland/output: return all bound wl_output instances in outputResourceFrom (#13315)
ref https://github.com/hyprwm/Hyprland/discussions/13301
Diffstat (limited to 'src/protocols/core/Output.cpp')
| -rw-r--r-- | src/protocols/core/Output.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/protocols/core/Output.cpp b/src/protocols/core/Output.cpp index 755470e4..dd9c3166 100644 --- a/src/protocols/core/Output.cpp +++ b/src/protocols/core/Output.cpp @@ -117,15 +117,17 @@ void CWLOutputProtocol::destroyResource(CWLOutputResource* resource) { PROTO::outputs.erase(m_name); } -SP<CWLOutputResource> CWLOutputProtocol::outputResourceFrom(wl_client* client) { +std::vector<SP<CWLOutputResource>> CWLOutputProtocol::outputResourcesFrom(wl_client* client) { + std::vector<SP<CWLOutputResource>> ret; + for (auto const& r : m_outputs) { if (r->client() != client) continue; - return r; + ret.emplace_back(r); } - return nullptr; + return ret; } void CWLOutputProtocol::remove() { |
