xmonad / xmonad-contrib

Contributed modules for xmonad
https://xmonad.org
BSD 3-Clause "New" or "Revised" License
579 stars 272 forks source link

introduce single active scratchpad hook #837

Closed philib closed 9 months ago

philib commented 9 months ago

Description

I added a logHook that ensures that only the most recent scratchpad is active on the workspace at any given time. When opening a new scratchpad, the previous scratchpad is moved to the corresponding scratchpad workspace.

Motivation: I use floating scratchpad to open terminals, notes, etc. quickly. Since nsHideOnFocusLoss hides scratchpad more often, then i intended to, the scratchpads can pile up very fast, which leads to the fact that I have to "dismantle" the stack of scratchpads manually. To prevent this, I now use this logHook. I thought I'd share it in case anyone has a similar workflow and is also interested.

I am a Haskell beginner, so please bear with me. I would be glad about feedback.

Checklist

slotThe commented 9 months ago

Thank you for the contribution :tada: