summaryrefslogtreecommitdiff
path: root/src/bin
diff options
context:
space:
mode:
Diffstat (limited to 'src/bin')
-rw-r--r--src/bin/e_container.c12
-rw-r--r--src/bin/e_shelf.c13
-rw-r--r--src/bin/e_shelf.h1
3 files changed, 19 insertions, 7 deletions
diff --git a/src/bin/e_container.c b/src/bin/e_container.c
index d83d119..e43bddc 100644
--- a/src/bin/e_container.c
+++ b/src/bin/e_container.c
@@ -1164,13 +1164,11 @@ _e_container_resize_handle(E_Container *con)
1164 zone = e_container_zone_number_get(con, scr->screen); 1164 zone = e_container_zone_number_get(con, scr->screen);
1165 if (zone) 1165 if (zone)
1166 { 1166 {
1167 e_zone_move(zone, scr->x, scr->y); 1167 e_zone_move_resize(zone, scr->x, scr->y, scr->w, scr->h);
1168 e_zone_resize(zone, scr->w, scr->h); 1168 e_shelf_zone_move_resize_handle(zone);
1169 } 1169 }
1170 else 1170 else
1171 { 1171 zone = e_zone_new(con, scr->screen, scr->x, scr->y, scr->w, scr->h);
1172 zone = e_zone_new(con, scr->screen, scr->x, scr->y, scr->w, scr->h);
1173 }
1174 /* FIXME: what if a zone exists for a screen that doesn't exist? 1172 /* FIXME: what if a zone exists for a screen that doesn't exist?
1175 * not sure this will ever happen... 1173 * not sure this will ever happen...
1176 */ 1174 */
@@ -1181,8 +1179,8 @@ _e_container_resize_handle(E_Container *con)
1181 E_Zone *zone; 1179 E_Zone *zone;
1182 1180
1183 zone = e_container_zone_number_get(con, 0); 1181 zone = e_container_zone_number_get(con, 0);
1184 e_zone_move(zone, 0, 0); 1182 e_zone_move_resize(zone, 0, 0, con->w, con->h);
1185 e_zone_resize(zone, con->w, con->h); 1183 e_shelf_zone_move_resize_handle(zone);
1186 } 1184 }
1187 1185
1188 e_gadman_container_resize(con->gadman); 1186 e_gadman_container_resize(con->gadman);
diff --git a/src/bin/e_shelf.c b/src/bin/e_shelf.c
index 3e4e471..7b45c9a 100644
--- a/src/bin/e_shelf.c
+++ b/src/bin/e_shelf.c
@@ -155,6 +155,19 @@ e_shelf_zone_new(E_Zone *zone, const char *name, const char *style, int popup, i
155} 155}
156 156
157EAPI void 157EAPI void
158e_shelf_zone_move_resize_handle(E_Zone *zone)
159{
160 Evas_List *l;
161 E_Shelf *es;
162
163 for (l = shelves; l; l = l->next)
164 {
165 es = l->data;
166 if (es->zone == zone) e_shelf_position_calc(es);
167 }
168}
169
170EAPI void
158e_shelf_populate(E_Shelf *es) 171e_shelf_populate(E_Shelf *es)
159{ 172{
160 E_OBJECT_CHECK(es); 173 E_OBJECT_CHECK(es);
diff --git a/src/bin/e_shelf.h b/src/bin/e_shelf.h
index 5f20b49..bf25678 100644
--- a/src/bin/e_shelf.h
+++ b/src/bin/e_shelf.h
@@ -39,6 +39,7 @@ EAPI int e_shelf_shutdown(void);
39EAPI void e_shelf_config_init(void); 39EAPI void e_shelf_config_init(void);
40EAPI Evas_List *e_shelf_list(void); 40EAPI Evas_List *e_shelf_list(void);
41EAPI E_Shelf *e_shelf_zone_new(E_Zone *zone, const char *name, const char *style, int popup, int layer, int id); 41EAPI E_Shelf *e_shelf_zone_new(E_Zone *zone, const char *name, const char *style, int popup, int layer, int id);
42EAPI void e_shelf_zone_move_resize_handle(E_Zone *zone);
42EAPI void e_shelf_populate(E_Shelf *es); 43EAPI void e_shelf_populate(E_Shelf *es);
43EAPI void e_shelf_show(E_Shelf *es); 44EAPI void e_shelf_show(E_Shelf *es);
44EAPI void e_shelf_hide(E_Shelf *es); 45EAPI void e_shelf_hide(E_Shelf *es);