fix: fill persistent workspaces' windows at init
This commit is contained in:
parent
846842be80
commit
e14a3b8687
|
@ -162,7 +162,7 @@ class Workspaces : public AModule, public EventHandler {
|
||||||
{"DEFAULT", SORT_METHOD::DEFAULT}};
|
{"DEFAULT", SORT_METHOD::DEFAULT}};
|
||||||
|
|
||||||
void fill_persistent_workspaces();
|
void fill_persistent_workspaces();
|
||||||
void create_persistent_workspaces();
|
void create_persistent_workspaces(const Json::Value& clients_data);
|
||||||
std::vector<std::string> persistent_workspaces_to_create_;
|
std::vector<std::string> persistent_workspaces_to_create_;
|
||||||
bool persistent_created_ = false;
|
bool persistent_created_ = false;
|
||||||
|
|
||||||
|
|
|
@ -562,7 +562,7 @@ void Workspaces::fill_persistent_workspaces() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Workspaces::create_persistent_workspaces() {
|
void Workspaces::create_persistent_workspaces(const Json::Value &clients_data) {
|
||||||
for (const std::string &workspace_name : persistent_workspaces_to_create_) {
|
for (const std::string &workspace_name : persistent_workspaces_to_create_) {
|
||||||
Json::Value new_workspace;
|
Json::Value new_workspace;
|
||||||
try {
|
try {
|
||||||
|
@ -577,7 +577,7 @@ void Workspaces::create_persistent_workspaces() {
|
||||||
new_workspace["windows"] = 0;
|
new_workspace["windows"] = 0;
|
||||||
new_workspace["persistent"] = true;
|
new_workspace["persistent"] = true;
|
||||||
|
|
||||||
create_workspace(new_workspace);
|
create_workspace(new_workspace, clients_data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -596,12 +596,12 @@ void Workspaces::init() {
|
||||||
monitor_id_ = (*current_monitor)["id"].asInt();
|
monitor_id_ = (*current_monitor)["id"].asInt();
|
||||||
}
|
}
|
||||||
|
|
||||||
fill_persistent_workspaces();
|
|
||||||
create_persistent_workspaces();
|
|
||||||
|
|
||||||
const Json::Value workspaces_json = gIPC->getSocket1JsonReply("workspaces");
|
const Json::Value workspaces_json = gIPC->getSocket1JsonReply("workspaces");
|
||||||
const Json::Value clients_json = gIPC->getSocket1JsonReply("clients");
|
const Json::Value clients_json = gIPC->getSocket1JsonReply("clients");
|
||||||
|
|
||||||
|
fill_persistent_workspaces();
|
||||||
|
create_persistent_workspaces(clients_json);
|
||||||
|
|
||||||
for (Json::Value workspace_json : workspaces_json) {
|
for (Json::Value workspace_json : workspaces_json) {
|
||||||
std::string workspace_name = workspace_json["name"].asString();
|
std::string workspace_name = workspace_json["name"].asString();
|
||||||
if ((all_outputs() || bar_.output->name == workspace_json["monitor"].asString()) &&
|
if ((all_outputs() || bar_.output->name == workspace_json["monitor"].asString()) &&
|
||||||
|
|
Loading…
Reference in New Issue