mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-22 15:45:59 +01:00
parent
18ee9ece9c
commit
0e18da8467
1 changed files with 7 additions and 13 deletions
|
@ -122,25 +122,19 @@ void CForeignToplevelHandleWlr::sendMonitor(CMonitor* pMonitor) {
|
||||||
if (lastMonitorID == (int64_t)pMonitor->ID)
|
if (lastMonitorID == (int64_t)pMonitor->ID)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
const auto CLIENT = resource->client();
|
const auto CLIENT = resource->client();
|
||||||
|
|
||||||
struct wl_resource* outputResource;
|
|
||||||
|
|
||||||
if (const auto PLASTMONITOR = g_pCompositor->getMonitorFromID(lastMonitorID); PLASTMONITOR) {
|
if (const auto PLASTMONITOR = g_pCompositor->getMonitorFromID(lastMonitorID); PLASTMONITOR) {
|
||||||
wl_resource_for_each(outputResource, &PLASTMONITOR->output->resources) {
|
const auto OLDRESOURCE = PROTO::outputs.at(PLASTMONITOR->szName)->outputResourceFrom(CLIENT);
|
||||||
if (wl_resource_get_client(outputResource) != CLIENT)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
resource->sendOutputLeave(outputResource);
|
if (OLDRESOURCE)
|
||||||
}
|
resource->sendOutputLeave(OLDRESOURCE->getResource()->resource());
|
||||||
}
|
}
|
||||||
|
|
||||||
wl_resource_for_each(outputResource, &pMonitor->output->resources) {
|
const auto NEWRESOURCE = PROTO::outputs.at(pMonitor->szName)->outputResourceFrom(CLIENT);
|
||||||
if (wl_resource_get_client(outputResource) != CLIENT)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
resource->sendOutputEnter(outputResource);
|
if (NEWRESOURCE)
|
||||||
}
|
resource->sendOutputEnter(NEWRESOURCE->getResource()->resource());
|
||||||
|
|
||||||
lastMonitorID = pMonitor->ID;
|
lastMonitorID = pMonitor->ID;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue