forked from enlightenment/enlightenment
Tiling2: Have a common entry func for most functions.
This commit is contained in:
parent
55e669fae4
commit
f6fa07e812
|
@ -338,6 +338,26 @@ tiling_e_client_move_resize_extra(E_Client *ec,
|
||||||
_e_client_move_resize(ec, x, y, w, h);
|
_e_client_move_resize(ec, x, y, w, h);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static Client_Extra *
|
||||||
|
tiling_entry_func(E_Client *ec)
|
||||||
|
{
|
||||||
|
if (!ec)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
if (!is_tilable(ec))
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
if (!desk_should_tile_check(ec->desk))
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
Client_Extra *extra = eina_hash_find(_G.client_extras, &ec);
|
||||||
|
|
||||||
|
if (!extra)
|
||||||
|
ERR("No extra for %p", ec);
|
||||||
|
|
||||||
|
return extra;
|
||||||
|
}
|
||||||
|
|
||||||
/* }}} */
|
/* }}} */
|
||||||
/* Reorganize Stacks {{{*/
|
/* Reorganize Stacks {{{*/
|
||||||
|
|
||||||
|
@ -501,14 +521,9 @@ _remove_client(E_Client *ec)
|
||||||
static void
|
static void
|
||||||
toggle_floating(E_Client *ec)
|
toggle_floating(E_Client *ec)
|
||||||
{
|
{
|
||||||
if (!ec)
|
Client_Extra *extra = tiling_entry_func(ec);
|
||||||
return;
|
|
||||||
if (!desk_should_tile_check(ec->desk))
|
|
||||||
return;
|
|
||||||
|
|
||||||
Client_Extra *extra = eina_hash_find(_G.client_extras, &ec);
|
|
||||||
if (!extra) {
|
if (!extra) {
|
||||||
ERR("No extra for %p", ec);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -652,32 +667,9 @@ _pre_client_assign_hook(void *data __UNUSED__,
|
||||||
|
|
||||||
static void _move_or_resize(E_Client *ec)
|
static void _move_or_resize(E_Client *ec)
|
||||||
{
|
{
|
||||||
Client_Extra *extra;
|
Client_Extra *extra = tiling_entry_func(ec);
|
||||||
|
|
||||||
if (!ec) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (!is_tilable(ec)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!desk_should_tile_check(ec->desk))
|
|
||||||
return;
|
|
||||||
|
|
||||||
DBG("Resize: %p / '%s' / '%s', (%d,%d), changes(size=%d, position=%d, client=%d)"
|
|
||||||
" g:%dx%d+%d+%d ecname:'%s' maximized:%s fs:%s",
|
|
||||||
ec, ec->icccm.title, ec->netwm.name,
|
|
||||||
ec->desk->x, ec->desk->y,
|
|
||||||
ec->changes.size, ec->changes.pos, ec->changes.border,
|
|
||||||
ec->w, ec->h, ec->x, ec->y, ec->bordername,
|
|
||||||
(ec->maximized & E_MAXIMIZE_DIRECTION) == E_MAXIMIZE_NONE ? "NONE" :
|
|
||||||
(ec->maximized & E_MAXIMIZE_DIRECTION) == E_MAXIMIZE_VERTICAL ? "VERTICAL" :
|
|
||||||
(ec->maximized & E_MAXIMIZE_DIRECTION) == E_MAXIMIZE_HORIZONTAL ? "HORIZONTAL" :
|
|
||||||
"BOTH", ec->fullscreen? "true": "false");
|
|
||||||
|
|
||||||
extra = eina_hash_find(_G.client_extras, &ec);
|
|
||||||
if (!extra) {
|
if (!extra) {
|
||||||
ERR("No extra for %p", ec);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -748,21 +740,9 @@ static void _move_or_resize(E_Client *ec)
|
||||||
static void
|
static void
|
||||||
_resize_begin_hook(void *data EINA_UNUSED, E_Client *ec)
|
_resize_begin_hook(void *data EINA_UNUSED, E_Client *ec)
|
||||||
{
|
{
|
||||||
Client_Extra *extra;
|
Client_Extra *extra = tiling_entry_func(ec);
|
||||||
|
|
||||||
if (!ec) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (!is_tilable(ec)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!desk_should_tile_check(ec->desk))
|
|
||||||
return;
|
|
||||||
|
|
||||||
extra = eina_hash_find(_G.client_extras, &ec);
|
|
||||||
if (!extra) {
|
if (!extra) {
|
||||||
ERR("No extra for %p", ec);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -861,19 +841,9 @@ static Eina_Bool
|
||||||
_move_hook(void *data __UNUSED__, int type __UNUSED__, E_Event_Client*event)
|
_move_hook(void *data __UNUSED__, int type __UNUSED__, E_Event_Client*event)
|
||||||
{
|
{
|
||||||
E_Client *ec = event->ec;
|
E_Client *ec = event->ec;
|
||||||
if (!ec) {
|
Client_Extra *extra = tiling_entry_func(ec);
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if (!is_tilable(ec)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!desk_should_tile_check(ec->desk))
|
|
||||||
return true;
|
|
||||||
|
|
||||||
Client_Extra *extra = eina_hash_find(_G.client_extras, &ec);
|
|
||||||
if (!extra) {
|
if (!extra) {
|
||||||
ERR("No extra for %p", ec);
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -936,18 +906,6 @@ _iconify_hook(void *data __UNUSED__, int type __UNUSED__, E_Event_Client *event)
|
||||||
if (ec->deskshow)
|
if (ec->deskshow)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if (!desk_should_tile_check(ec->desk))
|
|
||||||
return true;
|
|
||||||
|
|
||||||
Client_Extra *extra = eina_hash_find(_G.client_extras, &ec);
|
|
||||||
if (!extra) {
|
|
||||||
ERR("No extra for %p", ec);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (is_ignored_window(extra))
|
|
||||||
return true;
|
|
||||||
|
|
||||||
_remove_client(ec);
|
_remove_client(ec);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@ -961,13 +919,6 @@ _uniconify_hook(void *data __UNUSED__, int type __UNUSED__, E_Event_Client *even
|
||||||
if (ec->deskshow)
|
if (ec->deskshow)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if (!desk_should_tile_check(ec->desk))
|
|
||||||
return true;
|
|
||||||
|
|
||||||
if (!is_tilable(ec)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
_add_client(ec);
|
_add_client(ec);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@ -976,14 +927,9 @@ _uniconify_hook(void *data __UNUSED__, int type __UNUSED__, E_Event_Client *even
|
||||||
static void
|
static void
|
||||||
toggle_sticky(E_Client *ec)
|
toggle_sticky(E_Client *ec)
|
||||||
{
|
{
|
||||||
if (!ec)
|
Client_Extra *extra = tiling_entry_func(ec);
|
||||||
return;
|
|
||||||
if (!desk_should_tile_check(ec->desk))
|
|
||||||
return;
|
|
||||||
|
|
||||||
Client_Extra *extra = eina_hash_find(_G.client_extras, &ec);
|
|
||||||
if (!extra) {
|
if (!extra) {
|
||||||
ERR("No extra for %p", ec);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue