forked from enlightenment/enlightenment
parent
4c7b29de44
commit
5efe075ba2
|
@ -810,6 +810,50 @@ e_container_border_list_free(E_Border_List *list)
|
|||
free(list);
|
||||
}
|
||||
|
||||
void
|
||||
e_container_all_freeze(void)
|
||||
{
|
||||
Evas_List *managers, *l;
|
||||
|
||||
managers = e_manager_list();
|
||||
for (l = managers; l; l = l->next)
|
||||
{
|
||||
Evas_List *ll;
|
||||
E_Manager *man;
|
||||
|
||||
man = l->data;
|
||||
for (ll = man->containers; ll; ll = ll->next)
|
||||
{
|
||||
E_Container *con;
|
||||
|
||||
con = ll->data;
|
||||
evas_event_freeze(con->bg_evas);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
e_container_all_thaw(void)
|
||||
{
|
||||
Evas_List *managers, *l;
|
||||
|
||||
managers = e_manager_list();
|
||||
for (l = managers; l; l = l->next)
|
||||
{
|
||||
Evas_List *ll;
|
||||
E_Manager *man;
|
||||
|
||||
man = l->data;
|
||||
for (ll = man->containers; ll; ll = ll->next)
|
||||
{
|
||||
E_Container *con;
|
||||
|
||||
con = ll->data;
|
||||
evas_event_thaw(con->bg_evas);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* local subsystem functions */
|
||||
static void
|
||||
_e_container_free(E_Container *con)
|
||||
|
|
|
@ -133,6 +133,9 @@ EAPI void e_container_border_lower(E_Border *bd);
|
|||
EAPI void e_container_border_stack_above(E_Border *bd, E_Border *above);
|
||||
EAPI void e_container_border_stack_below(E_Border *bd, E_Border *below);
|
||||
|
||||
EAPI void e_container_all_freeze(void);
|
||||
EAPI void e_container_all_thaw(void);
|
||||
|
||||
extern EAPI int E_EVENT_CONTAINER_RESIZE;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -352,6 +352,9 @@ main(int argc, char **argv)
|
|||
"failed. Perhaps another window manager is running?\n"));
|
||||
_e_main_shutdown(-1);
|
||||
}
|
||||
|
||||
e_container_all_freeze();
|
||||
|
||||
_e_main_shutdown_push(_e_main_screens_shutdown);
|
||||
/* init app system */
|
||||
if (!e_app_init())
|
||||
|
@ -441,6 +444,8 @@ main(int argc, char **argv)
|
|||
ecore_timer_add(16.0, _e_main_cb_startup_fake_end, NULL);
|
||||
}
|
||||
|
||||
e_container_all_thaw();
|
||||
|
||||
/* run any testing code now we are set up */
|
||||
e_test();
|
||||
|
||||
|
|
|
@ -1136,6 +1136,7 @@ _e_menu_realize(E_Menu *m)
|
|||
|
||||
ecore_evas_callback_resize_set(m->ecore_evas, _e_menu_cb_ecore_evas_resize);
|
||||
m->evas = ecore_evas_get(m->ecore_evas);
|
||||
evas_event_freeze(m->evas);
|
||||
/* move cursor out to avoid event cycles during setup */
|
||||
evas_event_feed_mouse_in(m->evas, NULL);
|
||||
evas_event_feed_mouse_move(m->evas, -1000000, -1000000, NULL);
|
||||
|
@ -1190,6 +1191,7 @@ _e_menu_realize(E_Menu *m)
|
|||
_e_menu_items_layout_update(m);
|
||||
e_box_thaw(o);
|
||||
evas_object_resize(m->bg_object, m->cur.w, m->cur.h);
|
||||
evas_event_thaw(m->evas);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -170,7 +170,7 @@ _cb_change(void *data, E_Gadman_Client *gmc, E_Gadman_Change change)
|
|||
break;
|
||||
}
|
||||
}
|
||||
#elif 0
|
||||
#elif 1
|
||||
static int
|
||||
_e_test_timer(void *data)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue