perform client raise before triggering move/resize BEGIN client hook

hooks may further modify stacking, so ensure any changes are done before
that point
This commit is contained in:
Mike Blumenkrantz 2017-06-09 20:18:20 -04:00
parent f97b157bca
commit ba9c8ab2c1
1 changed files with 11 additions and 10 deletions

View File

@ -778,6 +778,12 @@ _e_client_move_begin(E_Client *ec)
if (!_e_client_action_input_win_new()) return 0;
ec->moving = 1;
ecmove = ec;
if (!ec->lock_user_stacking)
{
if (e_config->border_raise_on_mouse_action)
evas_object_raise(ec->frame);
}
_e_client_hook_call(E_CLIENT_HOOK_MOVE_BEGIN, ec);
if (!ec->moving)
{
@ -785,11 +791,6 @@ _e_client_move_begin(E_Client *ec)
_e_client_action_input_win_del();
return 0;
}
if (!ec->lock_user_stacking)
{
if (e_config->border_raise_on_mouse_action)
evas_object_raise(ec->frame);
}
return 1;
}
@ -4776,6 +4777,11 @@ e_client_resize_begin(E_Client *ec)
(ec->fullscreen) || (ec->lock_user_size))
goto error;
if (!_e_client_action_input_win_new()) goto error;
if (!ec->lock_user_stacking)
{
if (e_config->border_raise_on_mouse_action)
evas_object_raise(ec->frame);
}
ecresize = ec;
_e_client_hook_call(E_CLIENT_HOOK_RESIZE_BEGIN, ec);
if (!e_client_util_resizing_get(ec))
@ -4784,11 +4790,6 @@ e_client_resize_begin(E_Client *ec)
_e_client_action_input_win_del();
return EINA_FALSE;
}
if (!ec->lock_user_stacking)
{
if (e_config->border_raise_on_mouse_action)
evas_object_raise(ec->frame);
}
return EINA_TRUE;
error:
ec->resize_mode = E_POINTER_RESIZE_NONE;