diff --git a/src/bin/e_actions.c b/src/bin/e_actions.c index c0bc9998f..bcef8392b 100644 --- a/src/bin/e_actions.c +++ b/src/bin/e_actions.c @@ -1213,7 +1213,7 @@ ACT_FN_GO(restart) ecore_main_loop_quit(); } -ACT_FN_GO(pointer_push) +ACT_FN_GO(pointer_resize_push) { E_Manager *man = NULL; @@ -1222,6 +1222,9 @@ ACT_FN_GO(pointer_push) { E_Border *bd; bd = (E_Border *)obj; + if ((bd->lock_user_size) || (bd->shaded) || (bd->shading) || + (bd->fullscreen) || (bd->maximized == E_MAXIMIZE_FULLSCREEN)) + return; if (bd->zone) man = bd->zone->container->manager; } @@ -1230,7 +1233,7 @@ ACT_FN_GO(pointer_push) e_pointer_type_push(man->pointer, obj, params); } -ACT_FN_GO(pointer_pop) +ACT_FN_GO(pointer_resize_pop) { E_Manager *man = NULL; @@ -1239,6 +1242,9 @@ ACT_FN_GO(pointer_pop) { E_Border *bd; bd = (E_Border *)obj; + if ((bd->lock_user_size) || (bd->shaded) || (bd->shading) || + (bd->fullscreen) || (bd->maximized == E_MAXIMIZE_FULLSCREEN)) + return; if (bd->zone) man = (E_Manager *)bd->zone->container->manager; } @@ -1337,8 +1343,8 @@ e_actions_init(void) ACT_GO(restart); ACT_GO(exit); - ACT_GO(pointer_push); - ACT_GO(pointer_pop); + ACT_GO(pointer_resize_push); + ACT_GO(pointer_resize_pop); return 1; } diff --git a/src/bin/e_bindings.c b/src/bin/e_bindings.c index 4f5f5880b..d69757b4d 100644 --- a/src/bin/e_bindings.c +++ b/src/bin/e_bindings.c @@ -59,9 +59,9 @@ e_bindings_init(void) char params[32]; snprintf(params, sizeof(params), "resize_%s", eb->params); e_bindings_signal_add(eb->context, "mouse,in", eb->source, eb->modifiers, - eb->any_mod, "pointer_push", params); + eb->any_mod, "pointer_resize_push", params); e_bindings_signal_add(eb->context, "mouse,out", eb->source, eb->modifiers, - eb->any_mod, "pointer_pop", params); + eb->any_mod, "pointer_resize_pop", params); } } diff --git a/src/bin/e_border.c b/src/bin/e_border.c index e178297c4..0ee4d8ff6 100644 --- a/src/bin/e_border.c +++ b/src/bin/e_border.c @@ -671,7 +671,9 @@ e_border_resize(E_Border *bd, int w, int h) E_OBJECT_CHECK(bd); E_OBJECT_TYPE_CHECK(bd, E_BORDER_TYPE); - if ((bd->fullscreen) || (bd->maximized == E_MAXIMIZE_FULLSCREEN)) return; + if ((bd->shaded) || (bd->shading) || (bd->fullscreen) || + (bd->maximized == E_MAXIMIZE_FULLSCREEN)) + return; if (bd->new_client) { E_Border_Pending_Move_Resize *pnd;