Closed TimUntersberger closed 4 years ago
This means that you can now have for example firefox maximized and whenever you want firefox to be managed by WWM you can just use the ToggleFloatingMode keybinding without any problems. When the window gets unmanaged it resumes its previous position like normal windows, but gets also maximized.
I discovered this issue a month ago, but I initially thought I fixed this by deleting every Brush object created by the CreateSolidBrush function, but I missed that I have to also release the device context that I get for each paint call. Not releasing the device context slows down the whole system, because a device context can only be held by one application at a time. This should now be fixed.
The project initially used yaml
as its format, because of simplicity and compactness. Now that the config is more powerful and provides more options, the simplicity of yaml
now becomes its downfall. Writing the config in yaml
felt very restricted and made the implementation of some features very awkward. The new config had only two real candidates:
I considered lua
mainly because of how the way writing a config in Neovim with lua feels like. It is very convenient to use, powerful and fast. Lua
still had some restrictions, which made writing the config not as smooth as I imagined it to be. After searching for the perfect embedded scripting language I found rhai
. Rhai
in itself wasn't perfect for writing configs, but the flexibility that the rhai
engine provides makes it possible to easily define custom syntax on top of rhai
. This makes writing the config very smooth. An example for a custom syntax is the bind
keyword.
I will be writing a concise guide on how to use rhai
and the custom syntax that was implemented on top of it (for now you can look at the readme).
It is now possible to define a keybinding for resizing a column/row.
example
bind "Alt+H" resize("Left", 2) // increase column to the 'Left' by 2 percent of the display
You can see modes like modes in vim
. When you enter a mode you have a new set of keybindings. This can be very useful to reuse the same keybindings.
You have Alt+H
, Alt+J
, Alt+K
, Alt+L
to change tile focus.
You press Alt+R
to enter resize
mode.
Now Alt+H
, Alt+J
, Alt+K
, Alt+L
are for resizing.
Subscribe to this issue if you want to be notified when something gets fixed or a new feature gets added.