{"action":"opened","issue":{"url":"https://api.github.com/repos/wasamasa/eyebrowse/issues/36","labels_url":"https://api.github.com/repos/wasamasa/eyebrowse/issues/36/labels{/name}","comments_url":"https://api.github.com/repos/wasamasa/eyebrowse/issues/36/comments","events_url":"https://api.github.com/repos/wasamasa/eyebrowse/issues/36/events","html_url":"https://github.com/wasamasa/eyebrowse/issues/36","id":89497804,"number":36,"title":"switching workspaces misbehaving when a window is dedicated","user":{"login":"bmag","id":4334375,"avatar_url":"https://avatars.githubusercontent.com/u/4334375?v=3","gravatar_id":"","url":"https://api.github.com/users/bmag","html_url":"https://github.com/bmag","followers_url":"https://api.github.com/users/bmag/followers","following_url":"https://api.github.com/users/bmag/following{/other_user}","gists_url":"https://api.github.com/users/bmag/gists{/gist_id}","starred_url":"https://api.github.com/users/bmag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmag/subscriptions","organizations_url":"https://api.github.com/users/bmag/orgs","repos_url":"https://api.github.com/users/bmag/repos","events_url":"https://api.github.com/users/bmag/events{/privacy}","received_events_url":"https://api.github.com/users/bmag/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-06-19T07:57:29Z","updated_at":"2015-06-19T07:57:29Z","closed_at":null,"body":"Sometimes when a window is dedicated, switching a workspace fails and messes the frame's window configuration. This causes trouble with packages such as NeoTree - see [this report](https://github.com/syl20bnr/spacemacs/issues/2008).\r\n\r\nRecipe:\r\n1. `emacs -Q -l /path/to/dash.el -l /path/to/eyebrowse.el`\r\n2. `M-x eyebrowse-mode`\r\n3. `C-x b buff1`\r\n4. `M-: (set-window-dedicated-p nil t)`\r\n5. `C-x 4 b buff2`\r\n6. `C-c C-w 2`\r\nResult:\r\n`buff1`'s window becomes the only window in the frame and I see a message: \"Window is dedicated to \\`buff1'\".\r\nAccording to the mode-line, a second workspace is created, but the first workspace remains the current workspace.\r\n\r\nI looked into it, and it seems the error is produced by `window-state-put`. Replace step 6 with:\r\n6. `M-: (window-state-put (window-state-get nil 'writable) (frame-root-window))`\r\nAnd the result is an error traceback for \"Window is dedicated to \\`buff1'\".\r\n\r\nI think that adding `(progn (delete-other-windows) (set-window-dedicated-p nil nil))` before calling `window-state-put` will solve this.\r\n\r\nP.S. Latest dash and eyebrowse from melpa, emacs version 24.5."}}