discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=e3f4f0f9763a49ccdc28a0c56000bb3afb6a6ce0
commit e3f4f0f9763a49ccdc28a0c56000bb3afb6a6ce0 Author: Seunghun Lee <shiin....@samsung.com> Date: Fri Aug 29 13:46:25 2014 -0400 set the maximized valuable of E_Client before calling _e_client_frame_update when unmaximize the client. Summary: since maximized valuable is used in _e_client_frame_update, so the valuable should be updated. Test Plan: (1) run any application. (2) Maximize the app by key binding. (3) Change the border type. (4) Unmaximize the it by key binding. (5) try to maximize it again, but couldn't Reviewers: zmike Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D1357 --- src/bin/e_client.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/bin/e_client.c b/src/bin/e_client.c index 15349b5..ff8afe2 100644 --- a/src/bin/e_client.c +++ b/src/bin/e_client.c @@ -3674,8 +3674,15 @@ e_client_unmaximize(E_Client *ec, E_Maximize max) if ((ec->maximized & E_MAXIMIZE_TYPE) == E_MAXIMIZE_FULLSCREEN) { + E_Maximize tmp_max = ec->maximized; + + //un-set maximized state for updating frame. + ec->maximized = E_MAXIMIZE_NONE; _e_client_frame_update(ec); + // re-set maximized state for unmaximize smart callback. + ec->maximized = tmp_max; evas_object_smart_callback_call(ec->frame, "unmaximize", NULL); + // un-set maximized state. ec->maximized = E_MAXIMIZE_NONE; e_client_util_move_resize_without_frame(ec, ec->saved.x + ec->zone->x, --