optimise rednering.; e17 was over-drawing too much! this just about doubles

the speed of initial window/menu/dialog shows :)


SVN revision: 14042
This commit is contained in:
Carsten Haitzler 2005-03-31 15:38:26 +00:00
parent 06c08c56fc
commit ce7f854ec7
3 changed files with 8 additions and 2 deletions

View File

@ -230,7 +230,6 @@ e_border_new(E_Container *con, Ecore_X_Window win, int first_map)
bd->bg_win = ecore_evas_software_x11_window_get(bd->bg_ecore_evas);
ecore_evas_name_class_set(bd->bg_ecore_evas, "E", "Frame_Window");
ecore_evas_title_set(bd->bg_ecore_evas, "Enlightenment Frame");
ecore_evas_show(bd->bg_ecore_evas);
bd->client.shell_win = ecore_x_window_override_new(bd->win, 0, 0, 1, 1);
ecore_x_window_container_manage(bd->client.shell_win);
ecore_x_window_client_manage(win);
@ -1074,6 +1073,7 @@ e_border_idler_before(void)
bd = l->data;
if ((bd->changes.visible) && (bd->visible))
{
ecore_evas_show(bd->bg_ecore_evas);
ecore_x_window_show(bd->win);
bd->changes.visible = 0;
}
@ -1087,6 +1087,7 @@ e_border_idler_before(void)
if ((bd->changes.visible) && (!bd->visible))
{
ecore_x_window_hide(bd->win);
ecore_evas_hide(bd->bg_ecore_evas);
bd->changes.visible = 0;
}
if (bd->changed) _e_border_eval(bd);
@ -3537,6 +3538,9 @@ _e_border_resize_begin(E_Border *bd)
if (resize_ee) ecore_evas_free(resize_ee);
resize_ee = ecore_evas_software_x11_new(NULL, bd->zone->container->manager->win,
0, 0, 10, 10);
ecore_evas_override_set(resize_ee, 1);
ecore_evas_software_x11_direct_resize_set(resize_ee, 1);
e_canvas_add(resize_ee);
ecore_evas_borderless_set(resize_ee, 1);
ecore_evas_layer_set(resize_ee, 999);
ecore_evas_show(resize_ee);

View File

@ -67,11 +67,13 @@ e_error_message_manager_show(E_Manager *man, char *title, char *txt)
x = (man->w - error_w) / 2;
y = (man->h - error_h) / 2;
ee = ecore_evas_software_x11_new(NULL, man->win, x, y, error_w, error_h);
ecore_evas_override_set(ee, 1);
ecore_evas_software_x11_direct_resize_set(ee, 1);
e_canvas_add(ee);
ecore_evas_name_class_set(ee, "E", "Low_Level_Dialog");
ecore_evas_title_set(ee, "Enlightenment: Low Level Dialog");
// ecore_evas_avoid_damage_set(ee, 1);
e = ecore_evas_get(ee);
e_pointer_ecore_evas_set(ee);

View File

@ -987,6 +987,7 @@ _e_menu_realize(E_Menu *m)
m->ecore_evas = ecore_evas_software_x11_new(NULL, m->zone->container->win,
m->cur.x, m->cur.y,
m->cur.w, m->cur.h);
ecore_evas_software_x11_direct_resize_set(m->ecore_evas, 1);
e_canvas_add(m->ecore_evas);
m->shape = e_container_shape_add(m->zone->container);
e_container_shape_move(m->shape, m->cur.x, m->cur.y);
@ -1000,7 +1001,6 @@ _e_menu_realize(E_Menu *m)
m->evas_win = ecore_evas_software_x11_window_get(m->ecore_evas);
ecore_evas_name_class_set(m->ecore_evas, "E", "_e_menu_window");
ecore_evas_title_set(m->ecore_evas, "E Menu");
ecore_evas_show(m->ecore_evas);
o = edje_object_add(m->evas);
m->bg_object = o;