Krohnkite v0.5
Hello!
This is the fifth release of Krohnkite.
As always, thanks for your interest.
The development has been slowed down because of my personal business, but I've already made enough changes since the last release (50 commits), so I'm releasing a new version before working on any other new features.
The changes are mostly internal refactoring. I decoupled KWin-specific code from general tiling logic, and this allowed me to fix some bugs including unreported ones. I think the code is so clean that it's very easy to trace and fix bugs. It might be disappointing that there's only one new feature, but I believe I can pull out more changes thanks to this well-defined architecture.
I mentioned about adding testing in the last release note, but it turned out to be not simple to integrate existing testing frameworks to the current code base. Krohnkite doesn't use any standard Javascript module interface, so I should start from how to interface testing framework. I'll keep working on this, so that no one should worry about stupid regressions pop up here and there after every release.
I'm also thinking of changing the key-bindings, as suggested in #36. As clarified in README, Krohnkite is inspired by dwm, which means its behaviours are mostly copied from dwm. However, i3-like behaviour is clearly more general thus works well with most layouts. I'll try to minimize the impact of the change by providing shortcut slots for dwm-like behaviour.
Changelog
- feature: live-adjust layout while resizing window
- bugfix: fix Tile layout gap (#34)
- bugfix: consider screen gaps during layout adjustment calculation
- bugfix: layout adjustment freezes the window being resized
- internal: windows now have explicit state, and actions during state transition are explicitly defined.
- internal: window can be in "free tile" state, which allows layouts to float tiles without affecting other layouts.
- refactoring: split KWin-specific code from main logic
Installation
You can install Krohnkite through KWin Script
dialog in System Settings.
- Download the kwinscript file
- Open
System Settings
>Window Management
>KWin Scripts
- Press
Import KWin script...
on the top-right corner - Select the downloaded file
Alternatively, through shell:
plasmapkg2 -t kwinscript -i krohnkite-0.5.kwinscript
or, if Krohnkite is already installed:
plasmapkg2 -t kwinscript -u krohnkite-0.5.kwinscript