xmonad / xmonad-contrib

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

Add new module: X.L.CircleEx: advanced version of Circle layout #848

Closed portnov closed 6 months ago

portnov commented 7 months ago

Description

X.L.Circle layout is somewhat nice, but it does not provide much possibilities for customization. This adds a new module, X.L.CircleEx, which is similar to X.L.Circle, but has some new features:

Checklist

portnov commented 6 months ago

(i) implement that in terms of this new module, and (ii) perhaps deprecate X.L.Circle (if that's desired)?

Ok. For (i), I added a variant of default settings which mimics X.L.Circle's hardcoded settings.

portnov commented 6 months ago

@TheMC47 Screenshot_20231218_152452

portnov commented 6 months ago

@slotThe ok, importing (:%) from GHC.Real did the trick. I'm not very happy with exporting data constructor, because it will complicate things if / when it will be required to add fields to data type. But probably you're right and not having a duplicate of logic overweights that potential problem.

Now, when I deprecated X.L.Circle module, I see some number of deprecation warnings, since it was used in several places. I think I should also replace Circle with CircleEx in these places.

slotThe commented 6 months ago

Now, when I deprecated X.L.Circle module, I see some number of deprecation warnings, since it was used in several places. I think I should also replace Circle with CircleEx in these places.

Sounds good :+1:

portnov commented 6 months ago

Done. Please review.

slotThe commented 6 months ago

Thanks! (I just pushed some doc fixes)