summaryrefslogtreecommitdiff
path: root/src/protocols/core/Output.cpp
diff options
context:
space:
mode:
authorVaxry <43317083+vaxerski@users.noreply.github.com>2026-02-20 22:31:59 +0000
committerGitHub <noreply@github.com>2026-02-20 22:31:59 +0000
commitd91952c555085758117f1eb360d4ace120ee5d65 (patch)
tree7bcf2d3b9454b075c0fc68b09f3c33e0f27b8a96 /src/protocols/core/Output.cpp
parent8b17a7404b70a5ca2383320167a88e03289f0211 (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.cpp8
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() {