make (un)maximize_pre callbacks capable of rejecting the maximize operation

this is useful when subsystems need to know that a client wants to maximize
but need to delay that maximize for a later point
This commit is contained in:
Mike Blumenkrantz 2016-04-08 16:07:40 -04:00
parent a3da199685
commit 98934fb0e9
1 changed files with 3 additions and 2 deletions

View File

@ -3780,7 +3780,8 @@ e_client_maximize(E_Client *ec, E_Maximize max)
EC_CHANGED(ec);
return;
}
evas_object_smart_callback_call(ec->frame, "maximize_pre", NULL);
evas_object_smart_callback_call(ec->frame, "maximize_pre", &max);
if (!max) return;
override = ec->maximize_override;
if (ec->fullscreen)
e_client_unfullscreen(ec);
@ -3899,7 +3900,7 @@ e_client_unmaximize(E_Client *ec, E_Maximize max)
/* Remove directions not used */
max &= (ec->maximized & E_MAXIMIZE_DIRECTION);
evas_object_smart_callback_call(ec->frame, "unmaximize_pre", NULL);
evas_object_smart_callback_call(ec->frame, "unmaximize_pre", &max);
/* Can only remove existing maximization directions */
if (!max) return;
if (ec->maximized & E_MAXIMIZE_TYPE)