Fix some windows not being marked as active when opened

In some cases, the active event is arriving before the create event. We need to store the currently active address and initialize the windows accordingly
This commit is contained in:
Pol Rivero
2025-05-01 21:03:46 +02:00
parent 998fd7a192
commit 61c5dad895
4 changed files with 8 additions and 4 deletions

View File

@ -43,7 +43,7 @@ class WindowCreationPayload {
WindowCreationPayload(std::string workspace_name, WindowAddress window_address,
WindowRepr window_repr);
WindowCreationPayload(std::string workspace_name, WindowAddress window_address,
std::string window_class, std::string window_title);
std::string window_class, std::string window_title, bool is_active);
WindowCreationPayload(Json::Value const& client_data);
int incrementTimeSpentUncreated();

View File

@ -179,6 +179,7 @@ class Workspaces : public AModule, public EventHandler {
int m_taskbarIconSize = 16;
Gtk::Orientation m_taskbarOrientation = Gtk::ORIENTATION_HORIZONTAL;
std::string m_onClickWindow;
std::string m_currentActiveWindowAddress;
std::vector<std::regex> m_ignoreWorkspaces;