Commit Graph

189 Commits

Author SHA1 Message Date
Tom Hacohen 07841a6b5e Tiling: start migrating the code to use smart callbacks.
Those are meant to be better than the e hooks.
2014-03-20 17:40:23 +00:00
Chris Michael 915f8f0613 @bugfix: Fix building for WAYLAND_ONLY by using the proper define
sed -i 's/WAYLAND_ONLY/HAVE_WAYLAND_ONLY/g'

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-03-18 07:43:04 +00:00
Carsten Haitzler 565faa1155 based on submission from Seunghun, Lee - dont access NULL desk
this effectively accepts D574 but is re-done with different formatting.
2014-03-05 15:27:15 +09:00
Tom Hacohen 652392beff Tiling2: Fix handling windows that become untilable after we've added them.
This fixes T946.
2014-02-21 09:15:18 +00:00
Tom Hacohen 5bf441960d Tiling2: Change all checks for ignored windows to check if tiled. 2014-02-21 09:15:18 +00:00
Tom Hacohen 6a7aeb7695 Tiling2: Cleaned up maximized check function a bit. 2014-02-21 09:15:18 +00:00
Tom Hacohen 555ac8c0d9 Tiling2: Fixed maximized windows handling.
This got broken with all the reshuffling. Another fix.
2014-02-21 09:15:18 +00:00
Tom Hacohen fbcd03c48a Tiling2: Merge back restore client and the non sizing variant. 2014-02-21 09:15:18 +00:00
Tom Hacohen baaad1c09a Tiling2: Fixed geometry restore for maximized and fullscreen windows. 2014-02-21 09:15:18 +00:00
Tom Hacohen 116045fb8c Tiling2: Merge all the tiling callbacks and checks to 1 place. 2014-02-21 09:15:18 +00:00
Tom Hacohen 2b778b2aea Tiling2: Added maximized to the is_tilable checks. 2014-02-21 09:15:18 +00:00
Tom Hacohen 5e25cddeb1 Tiling2: Fix handling of maximized windows.
This fixes T978.
2014-02-21 09:15:18 +00:00
Tom Hacohen 457271f167 Tiling2: Handle windows becoming fullscreen while tiled. 2014-02-21 09:15:18 +00:00
Tom Hacohen 249def581b Tiling2: Only restore maximized if different than current. 2014-02-21 09:15:18 +00:00
Tom Hacohen ce7da97d8e Tiling2: Ifdef out ecore_x specific stuff when in Wayland Only. 2014-02-21 09:15:18 +00:00
Tom Hacohen 59d428b6e6 Tiling2: Don't tile iconic windows when loading the module.
This fixes T976.
2014-02-21 09:15:18 +00:00
Tom Hacohen 8463b7af47 Tiling2: Del all callbacks when unloading module.
This fixes T971.
2014-02-21 09:15:18 +00:00
Tom Hacohen b4900203d5 Tiling2: reapply tree on frame's deletion, not client removal.
According to mike this should work better with animations.

Fixes T947.
2014-02-21 09:15:18 +00:00
Tom Hacohen 89881a0c50 Tiling2: Fixed coding conventions. 2014-02-21 09:15:17 +00:00
Tom Hacohen 4c846ca7fc Tiling2: Properly apply settings from the config dialog.
This fixes T911.
2014-02-21 09:15:17 +00:00
Tom Hacohen 555730c2bc Tiling2: Fixed setting of floating on non tiled desktops. 2014-02-21 09:15:11 +00:00
Tom Hacohen fe43bd7576 Tiling2: Store extra on more windows, including ones in non-tiling desktops. 2014-02-21 09:15:10 +00:00
Tom Hacohen 3294d8e562 Tiling2: Moved a function to a better location. 2014-02-21 09:15:10 +00:00
Tom Hacohen 08947d8220 Tiling2: Removed useless desk show hook. 2014-02-21 09:15:10 +00:00
Tom Hacohen 32e1ec2034 Tiling2: Fixed applying of desktop is tiled config.
This now changes things as we click apply.
2014-02-21 09:15:10 +00:00
Tom Hacohen 82e252fa71 Tiling2: Fixed tiling2 according to enlightenment's sticky event changes.
Changes in e were introduce in: 29cd45142a
2014-02-21 09:15:10 +00:00
Tom Hacohen f4a7b6512a Tiling2: Fixed formattign, again.
Fixes T919.
2014-02-21 09:15:10 +00:00
Tom Hacohen 92b0d0171c Tiling2: Fixed resize issues.
This fixes T913.
2014-02-21 09:15:10 +00:00
Tom Hacohen e48cd878ce Tiling2: Renamed space between windows -> padding. 2014-02-21 09:15:10 +00:00
Tom Hacohen d83e18f21e Tiling2: Implemented window padding.
Thanks to cippp for the feature request + some code.
2014-02-21 09:15:10 +00:00
Tom Hacohen b4df3d18a1 Tiling2: Use a define to set the max window padding. 2014-02-21 09:15:10 +00:00
Tom Hacohen 82fb13e6fa Tiling2: Get rid of a redundant define. 2014-02-21 09:15:10 +00:00
cippp 48c1cc947f Tiling2: Added config to set window spacing. 2014-02-21 09:15:10 +00:00
cippp f62fe4972f Tiling2: Added a link to the module's settings when right-clicking gadget. 2014-02-21 09:15:10 +00:00
Tom Hacohen 8254aa45b2 Tiling2: Added a config to disable floating mode. 2014-02-21 09:15:10 +00:00
Tom Hacohen 99e8b518f2 Tiling2: Added a gadget to indicate current tiling mode. 2014-02-21 09:15:10 +00:00
Tom Hacohen 651e627c4b Tiling2: Removed debug print that was causing segfaults. 2014-02-21 09:15:09 +00:00
Tom Hacohen ee587a37b0 Tiling2: Fixed coding conventions using efl_indent. 2014-02-21 09:15:09 +00:00
Tom Hacohen 1b4821155c Tiling2: Get rid of __UNUSED__ in favour of EINA_UNUSED. 2014-02-21 09:15:09 +00:00
Tom Hacohen bf69b855b3 Tiling2: E_Client already has a property for sticky, use it.
Before this change, I duplicated this in extra.
2014-02-21 09:15:09 +00:00
Tom Hacohen e2f4596ff7 Tiling2: Implemented mouse drag to swap.
This is a new mouse action that lets you swap window with mouse drag.
2014-02-21 09:15:09 +00:00
Tom Hacohen b48cd9c9f8 Tiling2: Fix bug with cleaning up actions when shutting down. 2014-02-21 09:15:09 +00:00
Tom Hacohen ea175537cf Tiling2: Removed redundant structure members. 2014-02-21 09:15:09 +00:00
Tom Hacohen 7aaf444ee8 Tiling2: Don't try to remove non-tiled windows from the tile tree. 2014-02-21 09:15:09 +00:00
Tom Hacohen 792022196f Tiling2: Add "floating" as a split mode.
This lets people just create floating windows, without the need to toggle.
2014-02-21 09:15:09 +00:00
Tom Hacohen ff078996ff Tiling2: Improved setting of client borders.
No need to have a special entry point for that.
This fixes the issues with persistant pixel border.
2014-02-21 09:15:09 +00:00
Tom Hacohen bb1d53614c Tiling2: Fixed issues with removing/restoring clients. 2014-02-21 09:15:09 +00:00
Tom Hacohen ca6f1e74f5 Tiling2: Fixed removing clients from extras hash. 2014-02-21 09:15:09 +00:00
Tom Hacohen f6fa07e812 Tiling2: Have a common entry func for most functions. 2014-02-21 09:15:09 +00:00
Tom Hacohen 55e669fae4 Tiling2: Simple logic cleanup. 2014-02-21 09:15:08 +00:00
Tom Hacohen 03c6fee356 Tiling2: Properly ignore e util clients.
This fixes all the error messages that are printed on e startup.
2014-02-21 09:15:08 +00:00
Tom Hacohen 21f30a1ac2 Tiling2: Update original information every time a client is added.
Even if it's not the first time that client is added.
2014-02-21 09:15:08 +00:00
Tom Hacohen b89709267d Tiling2: Fixed bug with client border menu.
This fixes duplicate entries.
2014-02-21 09:15:08 +00:00
Tom Hacohen 5b50d42521 Tiling2: Stop fiddling with stacking and layers. 2014-02-21 09:15:08 +00:00
Tom Hacohen 3114e63faf Tiling2: Don't set client layers.
This fixes some of the input region issues I was having.
The bug is still in e, but this solves some stuff.
2014-02-21 09:15:08 +00:00
Tom Hacohen e3fcc03152 Tiling2: Fixed extra hash cleanup for ignored users.
It should always be cleaned, now that we keep it for ignored windows as well.
2014-02-21 09:15:08 +00:00
Tom Hacohen 41ecdc1ebd Tiling2: Be more defensive about removing clients.
This will delete clients even in cases we didn't delete before.
2014-02-21 09:15:08 +00:00
Tom Hacohen 9adc5336c0 Tiling2: Style changes. 2014-02-21 09:15:08 +00:00
Tom Hacohen 86aa218cb2 Tiling2: Handle compositor resize hook. 2014-02-21 09:15:08 +00:00
Tom Hacohen 32c4da7f5e Tiling2: Have a desk walker function and use it. 2014-02-21 09:15:08 +00:00
Tom Hacohen 0b007b2ff6 Tiling2: Fixed re-tiling on e restart/module unload reload. 2014-02-21 09:15:08 +00:00
Tom Hacohen 39e17e96f8 Tiling2: Fixed desktop setting. 2014-02-21 09:15:08 +00:00
Tom Hacohen f0efa12921 Tiling2: Fixed error message. 2014-02-21 09:15:08 +00:00
Tom Hacohen 08b877fa1f Tiling2: Unmaximize windows when starting to tile them. 2014-02-21 09:15:08 +00:00
Tom Hacohen 6795380282 Tiling2: Added support for swapping windows. 2014-02-21 09:15:07 +00:00
Tom Hacohen d03fb0a0f8 Tiling2: Fixed error messages with ignored windows. 2014-02-21 09:15:07 +00:00
Tom Hacohen 2f80f460e4 Tiling2: Fixed moving non-tiled windows. 2014-02-21 09:15:07 +00:00
Tom Hacohen 5d044ecad3 Tiling2: Removed some redundant code. 2014-02-21 09:15:07 +00:00
Tom Hacohen df14cca8dd Tiling2: Remove the step restriction.
Enlightenment already enforces that, and using it makes things choppy.
2014-02-21 09:15:07 +00:00
Tom Hacohen b5434d1de5 Tiling2: Restrict allowed resizes of windows. 2014-02-21 09:15:07 +00:00
Tom Hacohen ae8acb24b2 Tiling2: Fixed resizing of clients at "forbidden" borders.
For example, leftmost window's left border.
2014-02-21 09:15:07 +00:00
Tom Hacohen 15a4ec0c40 Tiling2: Use resize_mode for detecting resize direction. 2014-02-21 09:15:07 +00:00
Tom Hacohen f5e96784be Tiling2: Better block of window moving. 2014-02-21 09:15:07 +00:00
Tom Hacohen dae37e1dea Tiling2: Added a menu item to toggle floating windows. 2014-02-21 09:15:07 +00:00
Tom Hacohen 5cec6d14cb Tiling2: Get rid of the use_rows config. 2014-02-21 09:15:07 +00:00
Tom Hacohen b092052297 Tiling2: Removed debug printfs. 2014-02-21 09:15:07 +00:00
Tom Hacohen 3804d5165a Tiling2: if can't find the parent, pass NULL, not the root. 2014-02-21 09:15:07 +00:00
Tom Hacohen 052a13b462 Tiling2: Cleaned up ignored windows support. 2014-02-21 09:15:07 +00:00
Tom Hacohen bfdb22b0b8 Tiling2: Added untested support for sticky windows.
Just don't tile them.
2014-02-21 09:15:07 +00:00
Tom Hacohen 8ab30821fb Tiling2: Remove client from floating window list when cleaning. 2014-02-21 09:15:06 +00:00
Tom Hacohen 5e209ea583 Tiling2: Remove things I don't need from config and config dialog. 2014-02-21 09:15:06 +00:00
Tom Hacohen 156f6ff984 Tiling2: Properly handle more than one desk. 2014-02-21 09:15:06 +00:00
Tom Hacohen 1b3500f31a Tiling2: Added an hack to workaround the stupid e resize bug.
The bug with the frame created after the first resize.
2014-02-21 09:15:06 +00:00
Tom Hacohen 6b606cde41 Tiling2: Added resizing support.
There are still some bugs.
2014-02-21 09:15:06 +00:00
Tom Hacohen 3aa597c4af Tiling2: Don't tile centred windows. 2014-02-21 09:15:06 +00:00
Tom Hacohen 3914926b13 Tiling2: Removed end_special_input. 2014-02-21 09:15:06 +00:00
Tom Hacohen 8dd65b90f3 Tiling2: Create a move/resize function that will update extra. 2014-02-21 09:15:06 +00:00
Tom Hacohen b0593cd939 Tiling2: Reapply tree when resizing/moving windows. 2014-02-21 09:15:06 +00:00
Tom Hacohen 1a2ffcd06e Tiling2: Changed add to return new root and fixed top-level vertical. 2014-02-21 09:15:06 +00:00
Tom Hacohen 21ac77185b Tiling2: Get rid of split_type, use levels instead and bug fixes. 2014-02-21 09:15:06 +00:00
Tom Hacohen aac439698b Tiling2: Removed more code. 2014-02-21 09:15:05 +00:00
Tom Hacohen da4212680a Tiling2: Completely get rid of the stacks concept. 2014-02-21 09:15:05 +00:00
Tom Hacohen dd7c25b506 Tiling2: Moved fullscreen check into 'is_tilable'. 2014-02-21 09:15:05 +00:00
Tom Hacohen 091eeb2df4 Tiling2: Removed more redundant code. 2014-02-21 09:15:05 +00:00
Tom Hacohen af06d8db25 Tiling2: More code cleanups. 2014-02-21 09:15:05 +00:00
Tom Hacohen 29693d93b3 Tiling2: Cleaned up some more code. 2014-02-21 09:15:05 +00:00
Tom Hacohen ea19439b72 Tiling2: Removed more redundant code. 2014-02-21 09:15:05 +00:00
Tom Hacohen 81eb74ca92 Tiling2: Make it possible to toggle split type from key bindings. 2014-02-21 09:15:05 +00:00
Tom Hacohen 76c4fb85d9 Tiling2: Moved more redundant code. 2014-02-21 09:15:05 +00:00
Tom Hacohen 96645931bd Tiling2: Added a mode toggle action. 2014-02-21 09:15:05 +00:00