If newly created window is needed rotate,
it must not show the window before getting rotation done.
Change-Id: Ibd84543433dc58459b123483aec213fb40ee7979
#ifdef _F_ZONE_WINDOW_ROTATION_
// newly created window that has to be rotated will be show after rotation done.
// so, skip at this time. it will be called again after GETTING ROT_DONE.
#ifdef _F_ZONE_WINDOW_ROTATION_
// newly created window that has to be rotated will be show after rotation done.
// so, skip at this time. it will be called again after GETTING ROT_DONE.
if ((bd->new_client) &&
(bd->client.e.state.rot.changes != -1))
{
if ((bd->new_client) &&
(bd->client.e.state.rot.changes != -1))
{
- // if this window is in withdrawn state, show this window right now.
+ ELB(ELBT_BD, "PENDING SHOW UNTIL GETTING ROT_DONE", bd->client.win);
+ // if this window is in withdrawn state, set the normal state
// that's because the window in withdrawn state can't render its canvas.
// eventually, this window will not send the message of rotation done,
// even if e17 request to rotation this window.
// that's because the window in withdrawn state can't render its canvas.
// eventually, this window will not send the message of rotation done,
// even if e17 request to rotation this window.
bd->client.e.state.rot.pending_show = 1;
return;
}
bd->client.e.state.rot.pending_show = 1;
return;
}
if ((e_config->wm_win_rotation) &&
(rot.vkbd_ctrl_win) && (rot.vkbd) &&
(bd == rot.vkbd) &&
if ((e_config->wm_win_rotation) &&
(rot.vkbd_ctrl_win) && (rot.vkbd) &&
(bd == rot.vkbd) &&
if ((int)e->data.l[1] == bd->client.e.state.rot.curr)
{
_e_border_rotation_list_remove(bd);
if ((int)e->data.l[1] == bd->client.e.state.rot.curr)
{
_e_border_rotation_list_remove(bd);
if (bd->client.e.state.rot.pending_show)
{
ELB(ELBT_BD, "SHOW_BD (PEND)", bd->client.win);
e_border_show(bd);
if (bd->client.e.state.rot.pending_show)
{
ELB(ELBT_BD, "SHOW_BD (PEND)", bd->client.win);
e_border_show(bd);
+#ifdef _F_FOCUS_WINDOW_IF_TOP_STACK_
+ if (e_config->focus_setting == E_FOCUS_NEW_WINDOW_IF_TOP_STACK)
+ _e_border_check_stack(bd);
+#endif
bd->client.e.state.rot.pending_show = 0;
}
bd->client.e.state.rot.pending_show = 0;
}
{
ELB(ELBT_ROT, "SHOW PEND(TIMEOUT)", info->bd->client.win);
e_border_show(info->bd);
{
ELB(ELBT_ROT, "SHOW PEND(TIMEOUT)", info->bd->client.win);
e_border_show(info->bd);
+#ifdef _F_FOCUS_WINDOW_IF_TOP_STACK_
+ if (e_config->focus_setting == E_FOCUS_NEW_WINDOW_IF_TOP_STACK)
+ _e_border_check_stack(info->bd);
+#endif
info->bd->client.e.state.rot.pending_show = 0;
}
info->bd->client.e.state.rot.wait_for_done = 0;
info->bd->client.e.state.rot.pending_show = 0;
}
info->bd->client.e.state.rot.wait_for_done = 0;