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}}; | ||||
| 
 | ||||
|   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_; | ||||
|   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_) { | ||||
|     Json::Value new_workspace; | ||||
|     try { | ||||
|  | @ -577,7 +577,7 @@ void Workspaces::create_persistent_workspaces() { | |||
|     new_workspace["windows"] = 0; | ||||
|     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(); | ||||
|   } | ||||
| 
 | ||||
|   fill_persistent_workspaces(); | ||||
|   create_persistent_workspaces(); | ||||
| 
 | ||||
|   const Json::Value workspaces_json = gIPC->getSocket1JsonReply("workspaces"); | ||||
|   const Json::Value clients_json = gIPC->getSocket1JsonReply("clients"); | ||||
| 
 | ||||
|   fill_persistent_workspaces(); | ||||
|   create_persistent_workspaces(clients_json); | ||||
| 
 | ||||
|   for (Json::Value workspace_json : workspaces_json) { | ||||
|     std::string workspace_name = workspace_json["name"].asString(); | ||||
|     if ((all_outputs() || bar_.output->name == workspace_json["monitor"].asString()) && | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue