[PR #1289] [MERGED] fix(wm): monitor reconnect #1301

Closed
opened 2026-01-05 14:54:48 +01:00 by adam · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/LGUG2Z/komorebi/pull/1289
Author: @alex-ds13
Created: 2/22/2025
Status: Merged
Merged: 2/22/2025
Merged by: @LGUG2Z

Base: masterHead: fix/monitor-reconnect


📝 Commits (3)

  • 7a4c23b fix(wm): include workspace rules on cached monitor
  • df33b68 fix(wm): make workspace fields public
  • c2b3f7b fix(wm): allow stripping not needed info from state

📊 Changes

2 files changed (+81 additions, -22 deletions)

View changed files

📝 komorebi/src/window_manager.rs (+60 -1)
📝 komorebi/src/workspace.rs (+21 -21)

📄 Description

@LGUG2Z I've noticed lately that some of my workspace rules weren't being applied. After looking for the cause I found out this happened after I disconnected and reconnected monitors when testing. All because we set the serde skip here: https://github.com/LGUG2Z/komorebi/pull/1241#discussion_r1929649354

So on this PR I'm removing the serde skip (or setting it to skip only when it is None) and to prevent sending it on State to all the subscribers I've change the way the State is created "from" the WindowManager to strip some unneeded parts, in this case the workspace_config from all workspaces by setting it to None.

Although this method can be used in the future to strip down even more things from the monitors and/or workspaces in case we want to reduce the size of State that we are sending!


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/LGUG2Z/komorebi/pull/1289 **Author:** [@alex-ds13](https://github.com/alex-ds13) **Created:** 2/22/2025 **Status:** ✅ Merged **Merged:** 2/22/2025 **Merged by:** [@LGUG2Z](https://github.com/LGUG2Z) **Base:** `master` ← **Head:** `fix/monitor-reconnect` --- ### 📝 Commits (3) - [`7a4c23b`](https://github.com/LGUG2Z/komorebi/commit/7a4c23b0d082b7b11243ab5c4ea3276f08bcfd3f) fix(wm): include workspace rules on cached monitor - [`df33b68`](https://github.com/LGUG2Z/komorebi/commit/df33b680149c4207e7df1c38c6c1ae78105a9ccb) fix(wm): make workspace fields public - [`c2b3f7b`](https://github.com/LGUG2Z/komorebi/commit/c2b3f7b9d10372a88e56f49650a4cedb9a0c542e) fix(wm): allow stripping not needed info from state ### 📊 Changes **2 files changed** (+81 additions, -22 deletions) <details> <summary>View changed files</summary> 📝 `komorebi/src/window_manager.rs` (+60 -1) 📝 `komorebi/src/workspace.rs` (+21 -21) </details> ### 📄 Description @LGUG2Z I've noticed lately that some of my workspace rules weren't being applied. After looking for the cause I found out this happened after I disconnected and reconnected monitors when testing. All because we set the serde skip here: https://github.com/LGUG2Z/komorebi/pull/1241#discussion_r1929649354 So on this PR I'm removing the serde skip (or setting it to skip only when it is `None`) and to prevent sending it on `State` to all the subscribers I've change the way the `State` is created "from" the `WindowManager` to strip some unneeded parts, in this case the `workspace_config` from all workspaces by setting it to `None`. Although this method can be used in the future to strip down even more things from the monitors and/or workspaces in case we want to reduce the size of `State` that we are sending! <!-- Please follow the Conventional Commits specification. If you need to update your PR with changes from `master`, please run `git rebase master`. By opening this PR, you confirm that you have read and understood this project's `CONTRIBUTING.md`. --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
adam added the pull-request label 2026-01-05 14:54:48 +01:00
adam closed this issue 2026-01-05 14:54:48 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/komorebi#1301