On 14-01-17 14:38, Tom Hacohen wrote:
> Hey guys,
> 
> I've been writing a new tiling module for enlightenment, which I think 
> is an improvement over the current one. I've based it on the current 
> tiling module (thanks a lot billiob!), but redesigned some of the 
> internals and the behaviour. I like the result and would like to share 
> it here and see what you guys think.
> 
> TL;DR: It's e19 based, get it from the devs/tasn/e19_tiling2 branch on 
> enlightenment.git
> 
> I currently use it, so it's stable enough for that, but there might 
> still be bugs. It's e19 so you need latest elementary and watch out for 
> all of the things you need to watch out for if you are upgrading from e18.
> 
> So what does the module do?
> It's a tree-based tiling module, which means you can tile whatever and 
> wherever. When you create a window, it splits the currently focused 
> window according to the tile mode (can be toggled via key bindings). So 
> for example:
> 'O' will become '8' if you split vertically and 'OO' if you split 
> horizontally.
> 
> You can also swap windows using key bindings. Swapping is directional, 
> so you can only swap windows that share a border with the key bindings 
> (might add another swap mode in the future).
> 
> You can also toggle a window's floating state (either from the border 
> menu or a key binding) which will make a window float over the tiled 
> windows (behave like e would normally treat a window).
> 
> It shares the config with the tiling v1.0 module which is probably a bad 
> thing, but just makes it easier for new people to start using it. While 
> tiling v2.0 can load tiling v1.0 config, making changes might reset some 
> of the v1.0 config values when you switch back (hopefully never).
> 
> Please let me know if you encounter any issues or have any suggestions.
> 
> Many thanks to billiob for writing Tiling v1.0 and zmike for e related 
> advice.
> 
> What doesn't work:
> * Everything is not centred when using "don't show window borders" mode 
> (thanks to cippp for reporting).
> * Live loading of the module - You'd have to recreate the windows for 
> the tiling module to "catch them". (Should be easy to fix, will fix soon).
> * E restarts: the windows will be re-tiled :( and sometimes wouldn't be 
> "caught". The former issue is annoying to fix, the latter is easy and 
> will be fixed along with the live loading issue.
> * You can't "live change" the "show border" option. You'd need to 
> recreate the windows (super easy to fix, will do soon).
> * Moving a window from an untiled desktop to a tiled desktop doesn't 
> work. You'd need to disable/enable floating in order to refresh it (easy 
> to fix, found out while writing this email).
> * Some resizing cases have visual artefacts that solve themselves when 
> resizing ends.
> * Minimum/maximum size of windows is ignored. - I don't know what's the 
> best way to handle that. Awesome just closes the window if it can't fit 
> it, I just ignore it. I could potentially make it floating if I can't 
> fit it, but I'd rather just ignore the size hints. Ideas are welcome.
> * Code clean-ups and log clean-ups. Both are a mess as I was hacking 
> while learning the code.

I like the way this new tiling module goes.
However I have few concerns:
  • it is not on par (yet) with the original module feature-wise,
  • lacks a bit of stability, but that might also be related to e19
  itself.

The main feature I miss is to reorganize the screen by moving tiled
windows around (using the "move windows" under the tiling section in key
bindings). It is shown on the video on
http://billiob.net/blog/20110717_etiling.html .
For example I need to be able to do the following:
  • from "8", move the upper window to the left (or right) to have "OO";
• from "O8", move the lower window of 8 to the right to have "OOO";
• from "OO8", move the upper window of 8 the the left twice to have
"8OO";
  • more complex, from "O8", move the lower window down to have it below
the other 2 windows.

I'm sure that new tiling can replace the current one pretty soon.

Thank you Tom for working on it.
-- 
Boris Faure
Pointer Arithmetician

Attachment: pgpSufyBIHabx.pgp
Description: PGP signature

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to