Bugfixes - restore avoid_damage call on new borders, move background blank
object to container level SVN revision: 12719
This commit is contained in:
parent
5e0e3ff840
commit
1a48844b7f
|
@ -151,7 +151,7 @@ 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_avoid_damage_set(bd->bg_ecore_evas, 1); */
|
||||
ecore_evas_avoid_damage_set(bd->bg_ecore_evas, 1);
|
||||
ecore_evas_show(bd->bg_ecore_evas);
|
||||
evas_font_path_append(bd->bg_evas, e_path_find(path_data, "fonts"));
|
||||
bd->client.shell_win = ecore_x_window_override_new(bd->win, 0, 0, 1, 1);
|
||||
|
@ -239,6 +239,7 @@ e_border_new(E_Container *con, Ecore_X_Window win, int first_map)
|
|||
|
||||
con->clients = evas_list_append(con->clients, bd);
|
||||
borders = evas_list_append(borders, bd);
|
||||
|
||||
return bd;
|
||||
}
|
||||
|
||||
|
|
|
@ -37,6 +37,7 @@ e_container_new(E_Manager *man)
|
|||
{
|
||||
E_Container *con;
|
||||
E_Zone *zone;
|
||||
Evas_Object *o;
|
||||
|
||||
con = E_OBJECT_ALLOC(E_Container, _e_container_free);
|
||||
if (!con) return NULL;
|
||||
|
@ -59,6 +60,16 @@ e_container_new(E_Manager *man)
|
|||
|
||||
ecore_evas_callback_resize_set(con->bg_ecore_evas, _e_container_cb_bg_ecore_evas_resize);
|
||||
|
||||
o = evas_object_rectangle_add(con->bg_evas);
|
||||
con->bg_blank_object = o;
|
||||
evas_object_layer_set(o, -100);
|
||||
evas_object_move(o, 0, 0);
|
||||
evas_object_resize(o, con->w, con->h);
|
||||
evas_object_color_set(o, 255, 255, 255, 255);
|
||||
evas_object_name_set(o, "desktop/background");
|
||||
evas_object_data_set(o, "e_container", con);
|
||||
evas_object_show(o);
|
||||
|
||||
e_pointer_container_set(con);
|
||||
|
||||
/* FIXME: Add ecore code to fetch xinerama screens for zones */
|
||||
|
@ -94,6 +105,7 @@ e_container_move(E_Container *con, int x, int y)
|
|||
con->x = x;
|
||||
con->y = y;
|
||||
ecore_x_window_move(con->win, con->x, con->y);
|
||||
evas_object_move(con->bg_blank_object, con->x, con->y);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -105,6 +117,7 @@ e_container_resize(E_Container *con, int w, int h)
|
|||
con->h = h;
|
||||
ecore_x_window_resize(con->win, con->w, con->h);
|
||||
ecore_evas_resize(con->bg_ecore_evas, con->w, con->h);
|
||||
evas_object_resize(con->bg_blank_object, con->w, con->h);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -118,6 +131,8 @@ e_container_move_resize(E_Container *con, int x, int y, int w, int h)
|
|||
con->h = h;
|
||||
ecore_x_window_move_resize(con->win, con->x, con->y, con->w, con->h);
|
||||
ecore_evas_resize(con->bg_ecore_evas, con->w, con->h);
|
||||
evas_object_move(con->bg_blank_object, con->x, con->y);
|
||||
evas_object_resize(con->bg_blank_object, con->w, con->h);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -19,6 +19,7 @@ e_desk_new(E_Zone *zone)
|
|||
desk = E_OBJECT_ALLOC(E_Desk, _e_desk_free);
|
||||
if (!desk) return NULL;
|
||||
|
||||
desk->clients = NULL;
|
||||
desk->zone = zone;
|
||||
desk->num = evas_list_count(zone->desks) + 1;
|
||||
snprintf(name, sizeof(name), "Desktop %d", desk->num);
|
||||
|
@ -44,12 +45,13 @@ e_desk_show(E_Desk *desk)
|
|||
Evas_List *l;
|
||||
|
||||
E_OBJECT_CHECK(desk);
|
||||
|
||||
if (desk->visible) return;
|
||||
|
||||
for (l = desk->zone->clients; l; l = l->next)
|
||||
{
|
||||
E_Border *bd = l->data;
|
||||
|
||||
if (desk->clients && evas_list_find(desk->clients, bd))
|
||||
if (bd->desk == desk)
|
||||
e_border_show(bd);
|
||||
else
|
||||
e_border_hide(bd);
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
/* OBJECT_CHECK is a simple null pointer and magic number check with no */
|
||||
/* debug output */
|
||||
|
||||
/* #define OBJECT_PARANOIA_CHECK */
|
||||
#define OBJECT_CHECK
|
||||
#define OBJECT_PARANOIA_CHECK
|
||||
//#define OBJECT_CHECK
|
||||
|
||||
#ifndef __GLIBC__
|
||||
# ifdef OBJECT_PARANOIA_CHECK
|
||||
|
|
|
@ -40,14 +40,6 @@ e_zone_new(E_Container *con, int x, int y, int w, int h)
|
|||
char name[40];
|
||||
Evas_Object *o;
|
||||
|
||||
o = evas_object_rectangle_add(con->bg_evas);
|
||||
zone->bg_blank_object = o;
|
||||
evas_object_layer_set(o, -100);
|
||||
evas_object_move(o, x, y);
|
||||
evas_object_resize(o, w, h);
|
||||
evas_object_color_set(o, 255, 255, 255, 255);
|
||||
evas_object_show(o);
|
||||
|
||||
o = edje_object_add(con->bg_evas);
|
||||
zone->bg_object = o;
|
||||
evas_object_layer_set(o, -1);
|
||||
|
@ -96,7 +88,6 @@ e_zone_move(E_Zone *zone, int x, int y)
|
|||
if ((x == zone->x) && (y == zone->y)) return;
|
||||
zone->x = x;
|
||||
zone->y = y;
|
||||
evas_object_move(zone->bg_blank_object, x, y);
|
||||
evas_object_move(zone->bg_object, x, y);
|
||||
evas_object_move(zone->bg_event_object, x, y);
|
||||
}
|
||||
|
@ -109,7 +100,6 @@ e_zone_resize(E_Zone *zone, int w, int h)
|
|||
if ((w == zone->w) && (h == zone->h)) return;
|
||||
zone->w = w;
|
||||
zone->h = h;
|
||||
evas_object_resize(zone->bg_blank_object, w, h);
|
||||
evas_object_resize(zone->bg_object, w, h);
|
||||
evas_object_resize(zone->bg_event_object, w, h);
|
||||
}
|
||||
|
@ -127,10 +117,8 @@ e_zone_move_resize(E_Zone *zone, int x, int y, int w, int h)
|
|||
zone->w = w;
|
||||
zone->h = h;
|
||||
|
||||
evas_object_move(zone->bg_blank_object, x, y);
|
||||
evas_object_move(zone->bg_object, x, y);
|
||||
evas_object_move(zone->bg_event_object, x, y);
|
||||
evas_object_resize(zone->bg_blank_object, w, h);
|
||||
evas_object_resize(zone->bg_object, w, h);
|
||||
evas_object_resize(zone->bg_event_object, w, h);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue