forked from enlightenment/enlightenment
call "maximize" smart callback before "maximize_pre"
this callback induces ssd changes which affect the resulting geometry and so it must be called before any size calculations are made
This commit is contained in:
parent
e3b3970b6e
commit
5c4f8a19a4
|
@ -4062,6 +4062,10 @@ e_client_maximize(E_Client *ec, E_Maximize max)
|
||||||
EC_CHANGED(ec);
|
EC_CHANGED(ec);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if ((max & E_MAXIMIZE_TYPE) == E_MAXIMIZE_FULLSCREEN)
|
||||||
|
evas_object_smart_callback_call(ec->frame, "fullscreen", NULL);
|
||||||
|
else
|
||||||
|
evas_object_smart_callback_call(ec->frame, "maximize", NULL);
|
||||||
evas_object_smart_callback_call(ec->frame, "maximize_pre", &max);
|
evas_object_smart_callback_call(ec->frame, "maximize_pre", &max);
|
||||||
if (!max) return;
|
if (!max) return;
|
||||||
override = ec->maximize_override;
|
override = ec->maximize_override;
|
||||||
|
@ -4095,10 +4099,7 @@ e_client_maximize(E_Client *ec, E_Maximize max)
|
||||||
ec->saved.frame = e_comp_object_frame_exists(ec->frame) || (!e_comp_object_frame_allowed(ec->frame));
|
ec->saved.frame = e_comp_object_frame_exists(ec->frame) || (!e_comp_object_frame_allowed(ec->frame));
|
||||||
|
|
||||||
ec->maximize_override = 1;
|
ec->maximize_override = 1;
|
||||||
if ((max & E_MAXIMIZE_TYPE) == E_MAXIMIZE_FULLSCREEN)
|
|
||||||
evas_object_smart_callback_call(ec->frame, "fullscreen", NULL);
|
|
||||||
else
|
|
||||||
evas_object_smart_callback_call(ec->frame, "maximize", NULL);
|
|
||||||
{
|
{
|
||||||
int x, y, w, h;
|
int x, y, w, h;
|
||||||
e_client_maximize_geometry_get(ec, max, &x, &y, &w, &h);
|
e_client_maximize_geometry_get(ec, max, &x, &y, &w, &h);
|
||||||
|
|
Loading…
Reference in New Issue