mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-10 08:45:59 +01:00
add lastwindow info to hyprctl workspaces
This commit is contained in:
parent
ff26531e11
commit
f6ecef0959
1 changed files with 11 additions and 4 deletions
|
@ -124,19 +124,25 @@ std::string workspacesRequest(HyprCtl::eHyprCtlOutputFormat format) {
|
||||||
result += "[";
|
result += "[";
|
||||||
|
|
||||||
for (auto& w : g_pCompositor->m_vWorkspaces) {
|
for (auto& w : g_pCompositor->m_vWorkspaces) {
|
||||||
|
const auto PLASTW = w->getLastFocusedWindow();
|
||||||
|
|
||||||
result += getFormat(
|
result += getFormat(
|
||||||
R"#({
|
R"#({
|
||||||
"id": %i,
|
"id": %i,
|
||||||
"name": "%s",
|
"name": "%s",
|
||||||
"monitor": "%s",
|
"monitor": "%s",
|
||||||
"windows": %i,
|
"windows": %i,
|
||||||
"hasfullscreen": %s
|
"hasfullscreen": %s,
|
||||||
|
"lastwindow": %x,
|
||||||
|
"lastwindowtitle": "%s"
|
||||||
},)#",
|
},)#",
|
||||||
w->m_iID,
|
w->m_iID,
|
||||||
escapeJSONStrings(w->m_szName).c_str(),
|
escapeJSONStrings(w->m_szName).c_str(),
|
||||||
escapeJSONStrings(g_pCompositor->getMonitorFromID(w->m_iMonitorID)->szName).c_str(),
|
escapeJSONStrings(g_pCompositor->getMonitorFromID(w->m_iMonitorID)->szName).c_str(),
|
||||||
g_pCompositor->getWindowsOnWorkspace(w->m_iID),
|
g_pCompositor->getWindowsOnWorkspace(w->m_iID),
|
||||||
((int)w->m_bHasFullscreenWindow == 1 ? "true" : "false")
|
((int)w->m_bHasFullscreenWindow == 1 ? "true" : "false"),
|
||||||
|
PLASTW,
|
||||||
|
PLASTW ? PLASTW->m_szTitle.c_str() : ""
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -146,8 +152,9 @@ R"#({
|
||||||
result += "]";
|
result += "]";
|
||||||
} else {
|
} else {
|
||||||
for (auto& w : g_pCompositor->m_vWorkspaces) {
|
for (auto& w : g_pCompositor->m_vWorkspaces) {
|
||||||
result += getFormat("workspace ID %i (%s) on monitor %s:\n\twindows: %i\n\thasfullscreen: %i\n\n",
|
const auto PLASTW = w->getLastFocusedWindow();
|
||||||
w->m_iID, w->m_szName.c_str(), g_pCompositor->getMonitorFromID(w->m_iMonitorID)->szName.c_str(), g_pCompositor->getWindowsOnWorkspace(w->m_iID), (int)w->m_bHasFullscreenWindow);
|
result += getFormat("workspace ID %i (%s) on monitor %s:\n\twindows: %i\n\thasfullscreen: %i\n\tlastwindow: %x\n\tlastwindowtitle: %s\n\n",
|
||||||
|
w->m_iID, w->m_szName.c_str(), g_pCompositor->getMonitorFromID(w->m_iMonitorID)->szName.c_str(), g_pCompositor->getWindowsOnWorkspace(w->m_iID), (int)w->m_bHasFullscreenWindow, PLASTW, PLASTW ? PLASTW->m_szTitle.c_str() : "");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
|
|
Loading…
Reference in a new issue