summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Makefile.am2
-rw-r--r--src/desktops.c3
-rw-r--r--src/e.h15
-rw-r--r--src/fs.c98
-rw-r--r--src/icons.c181
-rw-r--r--src/view.c22
6 files changed, 210 insertions, 111 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 635279fb2..8fb84f5a9 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -28,5 +28,5 @@ util.c \
28view.c \ 28view.c \
29e.h 29e.h
30 30
31enlightenment_LDADD = @evas_libs@ @edb_libs@ @ebits_libs@ @ecore_libs@ @efsd_libs@ -lm $(INTLLIBS) 31enlightenment_LDADD = @evas_libs@ @edb_libs@ @ebits_libs@ @ecore_libs@ @efsd_libs@ -lm $(INTLLIBS) $(LDADD_FLAGS)
32 32
diff --git a/src/desktops.c b/src/desktops.c
index 4f92a70ab..78b329bbb 100644
--- a/src/desktops.c
+++ b/src/desktops.c
@@ -10,6 +10,7 @@ static void e_idle(void *data);
10static void 10static void
11e_idle(void *data) 11e_idle(void *data)
12{ 12{
13 printf("idle...\n");
13 e_db_flush(); 14 e_db_flush();
14 return; 15 return;
15 UN(data); 16 UN(data);
@@ -166,7 +167,7 @@ e_desktops_init_file_display(E_Desktop *desk)
166 desk->view->bg->image = strdup(PACKAGE_DATA_DIR"/data/images/bg.jpg"); 167 desk->view->bg->image = strdup(PACKAGE_DATA_DIR"/data/images/bg.jpg");
167 /* fixme later */ 168 /* fixme later */
168 /* uncomment this and comment out the next line for some tress testing */ 169 /* uncomment this and comment out the next line for some tress testing */
169/* desk->view->dir = strdup("/dev");*/ 170/* desk->view->dir = strdup("/dev"); */
170 desk->view->dir = strdup(e_file_home()); 171 desk->view->dir = strdup(e_file_home());
171 e_view_realize(desk->view); 172 e_view_realize(desk->view);
172 if (desk->view->options.back_pixmap) e_view_update(desk->view); 173 if (desk->view->options.back_pixmap) e_view_update(desk->view);
diff --git a/src/e.h b/src/e.h
index c5387ab2a..2ba767e76 100644
--- a/src/e.h
+++ b/src/e.h
@@ -315,6 +315,14 @@ struct _E_View
315 struct { 315 struct {
316 Evas_Render_Method render_method; 316 Evas_Render_Method render_method;
317 int back_pixmap; 317 int back_pixmap;
318 struct {
319 int method;
320 struct {
321 int dir;
322 int w, h;
323 int next_pos;
324 } grid;
325 } arrange;
318 } options; 326 } options;
319 327
320 Evas evas; 328 Evas evas;
@@ -380,11 +388,16 @@ struct _E_Icon
380 char *selected; 388 char *selected;
381 char *clicked; 389 char *clicked;
382 } icon; 390 } icon;
391 struct {
392 int have;
393 int x, y;
394 } coord;
383 int ready; 395 int ready;
384 } info; 396 } info;
385 397
386 struct { 398 struct {
387 int x, y, w, h; 399 int x, y;
400 int ix, iy, tx, ty, iw, ih, tw, th, w, h;
388 struct { 401 struct {
389 int text_location; 402 int text_location;
390 int show_text; 403 int show_text;
diff --git a/src/fs.c b/src/fs.c
index 8ba10a513..e5554abc4 100644
--- a/src/fs.c
+++ b/src/fs.c
@@ -6,27 +6,27 @@ static Evas_List fs_handlers = NULL;
6static void _e_fs_fd_handle(int fd); 6static void _e_fs_fd_handle(int fd);
7 7
8static void 8static void
9_e_fs_fd_handle_a_la_cK(int fd) 9_e_fs_fd_handle(int fd)
10{ 10{
11 EfsdEvent ev; 11 Evas_List events = NULL;
12 Evas_List l; 12 double start, current;
13 13
14 printf("############## fs event...\n");
15 start = e_get_time();
14 while ((ec) && efsd_events_pending(ec)) 16 while ((ec) && efsd_events_pending(ec))
15 { 17 {
16 ZERO(&ev, EfsdEvent, 1); 18 EfsdEvent *ev;
19
20 ev = NEW(EfsdEvent, 1);
21 ZERO(ev, EfsdEvent, 1);
17 22
18 if (efsd_next_event(ec, &ev) >= 0) 23 if (efsd_next_event(ec, ev) >= 0)
19 { 24 {
20 for (l = fs_handlers; l; l = l->next) 25 events = evas_list_append(events, ev);
21 {
22 void (*func) (EfsdEvent *ev);
23
24 func = l->data;
25 func(&ev);
26 }
27 } 26 }
28 else 27 else
29 { 28 {
29 FREE(ev);
30 efsd_close(ec); 30 efsd_close(ec);
31 e_del_event_fd(fd); 31 e_del_event_fd(fd);
32 ec = NULL; 32 ec = NULL;
@@ -35,63 +35,37 @@ _e_fs_fd_handle_a_la_cK(int fd)
35 printf("EEEEEEEEEEK efsd went wonky\n"); 35 printf("EEEEEEEEEEK efsd went wonky\n");
36 } 36 }
37 37
38 efsd_event_cleanup(&ev); 38 /* spent more thna 1/20th of a second here.. get out */
39 current = e_get_time();
40 if ((current - start) > 0.05)
41 {
42 printf("fs... too much time spent..\n");
43 break;
44 }
39 } 45 }
40} 46 if (events)
41
42static void
43_e_fs_fd_handle(int fd)
44{
45 EfsdEvent ev;
46 int i = 1;
47
48 /* VERY nasty - sicne efas has no way of checkign If an event is in the */
49 /* event queue waiting to be picked up - i cant loop and get the events */
50 printf("_e_fs_fd_handle(%i)\n", fd);
51 while (i >= 0)
52 { 47 {
53 fd_set fdset; 48 Evas_List l;
54 struct timeval tv;
55 49
56 FD_ZERO(&fdset); 50 for (l = events; l; l = l->next)
57 FD_SET(fd, &fdset);
58 tv.tv_sec = 0;
59 tv.tv_usec = 0;
60 select(fd + 1, &fdset, NULL, NULL, &tv);
61 if (FD_ISSET(fd, &fdset))
62 { 51 {
63 i = efsd_next_event(ec, &ev); 52 Evas_List ll;
64 if (i < 0) 53 EfsdEvent *ev;
65 { 54
66 efsd_close(ec); 55 ev = l->data;
67 e_del_event_fd(fd); 56 for (ll = fs_handlers; ll; ll = ll->next)
68 /* FIXME: need to queue a popup dialog here saying */
69 /* efsd went wonky */
70 printf("EEEEEEEEEEK efsd went wonky\n");
71/*
72 ec = efsd_open();
73 if (ec)
74 e_add_event_fd(efsd_get_connection_fd(ec),
75 _e_fs_fd_handle);
76*/
77 }
78 if (i >= 0)
79 { 57 {
80 Evas_List l; 58 void (*func) (EfsdEvent *ev);
81 59
82 for (l = fs_handlers; l; l = l->next) 60 func = ll->data;
83 { 61 func(ev);
84 void (*func) (EfsdEvent *ev);
85
86 func = l->data;
87 func(&ev);
88 }
89 efsd_event_cleanup(&ev);
90 } 62 }
63 efsd_event_cleanup(ev);
64 FREE(ev);
91 } 65 }
92 else 66 evas_list_free(events);
93 i = -1;
94 } 67 }
68 printf("############## fs done\n");
95} 69}
96 70
97void 71void
@@ -125,7 +99,7 @@ e_fs_init(void)
125 fprintf(stderr, "efsd is not running - please run efsd.\n"); 99 fprintf(stderr, "efsd is not running - please run efsd.\n");
126 exit(-1); 100 exit(-1);
127 } 101 }
128 e_add_event_fd(efsd_get_connection_fd(ec), _e_fs_fd_handle_a_la_cK); 102 e_add_event_fd(efsd_get_connection_fd(ec), _e_fs_fd_handle);
129} 103}
130 104
131EfsdConnection * 105EfsdConnection *
diff --git a/src/icons.c b/src/icons.c
index ed8da7a25..1e46d9426 100644
--- a/src/icons.c
+++ b/src/icons.c
@@ -80,9 +80,112 @@ e_icon_new(void)
80} 80}
81 81
82void 82void
83e_icon_place_grid(E_Icon *icon)
84{
85 int x, y;
86
87 if (icon->view->options.arrange.grid.dir == 0) /* h */
88 {
89 int gw;
90
91 if (icon->view->options.arrange.grid.w > 0)
92 gw = icon->view->size.w / icon->view->options.arrange.grid.w;
93 else gw = 1;
94 y = icon->view->options.arrange.grid.next_pos / gw;
95 x = icon->view->options.arrange.grid.next_pos - (y * gw);
96 x *= icon->view->options.arrange.grid.w;
97 y *= icon->view->options.arrange.grid.h;
98 e_icon_set_xy(icon, x, y);
99 printf("GRID PLACE at %i %i\n", x, y);
100 icon->view->options.arrange.grid.next_pos++;
101 }
102 else /* v */
103 {
104 }
105}
106
107void
108e_icon_pre_show(E_Icon *icon)
109{
110 int x, y;
111
112 if (icon->info.ready) return;
113 printf("*********!!!!!!!!!!!!!!!********* update from e_icon_pre_show()\n");
114 e_icon_update(icon);
115 icon->info.ready = 1;
116 if (icon->info.coord.have)
117 {
118 x = icon->info.coord.x;
119 y = icon->info.coord.y;
120 e_icon_set_xy(icon, x, y);
121 }
122 else
123 {
124 if (icon->view->options.arrange.method == 0) /* grid */
125 {
126 /* need to redo whole grid... */
127 if ((icon->current.w > icon->view->options.arrange.grid.w) ||
128 (icon->current.h > icon->view->options.arrange.grid.h))
129 {
130 Evas_List l;
131
132 icon->view->options.arrange.grid.next_pos = 0;
133 icon->view->options.arrange.grid.w = icon->current.w;
134 icon->view->options.arrange.grid.h = icon->current.h;
135 for (l = icon->view->icons; l; l = l->next)
136 {
137 E_Icon *ic;
138
139 ic = l->data;
140 if (ic->info.ready)
141 e_icon_place_grid(ic);
142 }
143 }
144 else
145 e_icon_place_grid(icon);
146 }
147 }
148 e_icon_show(icon);
149}
150
151void
83e_icon_calulcate_geometry(E_Icon *icon) 152e_icon_calulcate_geometry(E_Icon *icon)
84{ 153{
154 int iw, ih, tw, th;
155 double dtw, dth;
156
85 if (!icon->view) return; 157 if (!icon->view) return;
158 dtw = 0; dth = 0; iw = 0; ih = 0;
159 evas_get_geometry(icon->view->evas, icon->obj.filename, NULL, NULL, &dtw, &dth);
160 tw = (int)dtw;
161 th = (int)dth;
162 evas_get_image_size(icon->view->evas, icon->obj.icon, &iw, &ih);
163 if (tw < iw)
164 {
165 icon->current.ix = icon->current.x;
166 icon->current.iy = icon->current.y;
167 icon->current.tx = icon->current.x + ((iw - tw) / 2);
168 icon->current.ty = icon->current.y + ih;
169 icon->current.w = iw;
170 icon->current.h = ih + th;
171 icon->current.iw = iw;
172 icon->current.ih = ih;
173 icon->current.tw = tw;
174 icon->current.th = th;
175 }
176 else
177 {
178 icon->current.ix = icon->current.x + ((tw - iw) / 2);
179 icon->current.iy = icon->current.y;
180 icon->current.tx = icon->current.x;
181 icon->current.ty = icon->current.y + ih;
182 icon->current.w = tw;
183 icon->current.h = ih + th;
184 icon->current.iw = iw;
185 icon->current.ih = ih;
186 icon->current.tw = tw;
187 icon->current.th = th;
188 }
86} 189}
87 190
88void 191void
@@ -90,10 +193,10 @@ e_icon_realize(E_Icon *icon)
90{ 193{
91 icon->obj.sel1 = evas_add_rectangle(icon->view->evas); 194 icon->obj.sel1 = evas_add_rectangle(icon->view->evas);
92 icon->obj.sel2 = evas_add_rectangle(icon->view->evas); 195 icon->obj.sel2 = evas_add_rectangle(icon->view->evas);
93 evas_set_layer(icon->view->evas, icon->obj.sel1, 11);
94 evas_set_layer(icon->view->evas, icon->obj.sel2, 11);
95 evas_set_color(icon->view->evas, icon->obj.sel1, 0, 0, 0, 0); 196 evas_set_color(icon->view->evas, icon->obj.sel1, 0, 0, 0, 0);
96 evas_set_color(icon->view->evas, icon->obj.sel2, 0, 0, 0, 0); 197 evas_set_color(icon->view->evas, icon->obj.sel2, 0, 0, 0, 0);
198 evas_set_layer(icon->view->evas, icon->obj.sel1, 11);
199 evas_set_layer(icon->view->evas, icon->obj.sel2, 11);
97 evas_callback_add(icon->view->evas, icon->obj.sel1, CALLBACK_MOUSE_IN, e_icon_in_cb, icon); 200 evas_callback_add(icon->view->evas, icon->obj.sel1, CALLBACK_MOUSE_IN, e_icon_in_cb, icon);
98 evas_callback_add(icon->view->evas, icon->obj.sel1, CALLBACK_MOUSE_OUT, e_icon_out_cb, icon); 201 evas_callback_add(icon->view->evas, icon->obj.sel1, CALLBACK_MOUSE_OUT, e_icon_out_cb, icon);
99 evas_callback_add(icon->view->evas, icon->obj.sel1, CALLBACK_MOUSE_DOWN, e_icon_down_cb, icon); 202 evas_callback_add(icon->view->evas, icon->obj.sel1, CALLBACK_MOUSE_DOWN, e_icon_down_cb, icon);
@@ -169,7 +272,6 @@ void
169e_icon_set_filename(E_Icon *icon, char *file) 272e_icon_set_filename(E_Icon *icon, char *file)
170{ 273{
171 IF_FREE(icon->file); 274 IF_FREE(icon->file);
172 printf("e_icon_set_filename(%s)\n", file);
173 icon->file = strdup(file); 275 icon->file = strdup(file);
174 icon->changed = 1; 276 icon->changed = 1;
175 if (icon->view) icon->view->changed = 1; 277 if (icon->view) icon->view->changed = 1;
@@ -181,6 +283,7 @@ e_icon_update(E_Icon *icon)
181 int obj_new = 0; 283 int obj_new = 0;
182 284
183 if (!icon->changed) return; 285 if (!icon->changed) return;
286 printf("icon (%s).. update\n", icon->file);
184 if (icon->current.state.clicked) 287 if (icon->current.state.clicked)
185 { 288 {
186 if (icon->info.icon.clicked) 289 if (icon->info.icon.clicked)
@@ -203,15 +306,19 @@ e_icon_update(E_Icon *icon)
203 } 306 }
204 if ((!icon->current.state.selected) && (icon->obj.sel_icon)) 307 if ((!icon->current.state.selected) && (icon->obj.sel_icon))
205 { 308 {
206 printf("no\n");
207 ebits_hide(icon->obj.sel_icon); 309 ebits_hide(icon->obj.sel_icon);
208 ebits_free(icon->obj.sel_icon); 310 ebits_free(icon->obj.sel_icon);
209 icon->obj.sel_icon = NULL; 311 icon->obj.sel_icon = NULL;
210 } 312 }
211 if (icon->obj.icon) 313 if ((icon->obj.icon) &&
314 (icon->current.icon) &&
315 ((!icon->previous.icon) ||
316 ((icon->previous.icon) &&
317 (!strcmp(icon->current.icon, icon->previous.icon)))))
212 { 318 {
213 int iw, ih; 319 int iw, ih;
214 320
321 printf("set file etc.\n");
215 evas_set_image_file(icon->view->evas, icon->obj.icon, icon->current.icon); 322 evas_set_image_file(icon->view->evas, icon->obj.icon, icon->current.icon);
216 evas_get_image_size(icon->view->evas, icon->obj.icon, &iw, &ih); 323 evas_get_image_size(icon->view->evas, icon->obj.icon, &iw, &ih);
217 evas_set_image_fill(icon->view->evas, icon->obj.icon, 0, 0, iw, ih); 324 evas_set_image_fill(icon->view->evas, icon->obj.icon, 0, 0, iw, ih);
@@ -257,50 +364,50 @@ e_icon_update(E_Icon *icon)
257 } 364 }
258 } 365 }
259 if ((icon->previous.x != icon->current.x) || 366 if ((icon->previous.x != icon->current.x) ||
260 (icon->previous.y != icon->current.y)) 367 (icon->previous.y != icon->current.y) ||
368 (icon->current.visible != icon->previous.visible) ||
369 (obj_new))
261 { 370 {
262 int fx, fy; 371 e_icon_calulcate_geometry(icon);
263 int iw, ih; 372/* HRRRM - must optimize this*/
264 double tw, th; 373 evas_move(icon->view->evas, icon->obj.icon, icon->current.ix, icon->current.iy);
265 374 evas_move(icon->view->evas, icon->obj.filename, icon->current.tx, icon->current.ty);
266 evas_get_geometry(icon->view->evas, icon->obj.filename, NULL, NULL, &tw, &th); 375 evas_move(icon->view->evas, icon->obj.sel1, icon->current.ix, icon->current.iy);
267 evas_get_image_size(icon->view->evas, icon->obj.icon, &iw, &ih); 376 evas_resize(icon->view->evas, icon->obj.sel1, icon->current.iw, icon->current.ih);
268 fx = icon->current.x + ((iw - tw) / 2); 377 evas_move(icon->view->evas, icon->obj.sel2, icon->current.tx, icon->current.ty);
269 fy = icon->current.y + ih; 378 evas_resize(icon->view->evas, icon->obj.sel2, icon->current.tw, icon->current.th);
270 evas_move(icon->view->evas, icon->obj.icon, icon->current.x, icon->current.y);
271 evas_move(icon->view->evas, icon->obj.filename, fx, fy);
272 evas_move(icon->view->evas, icon->obj.sel1, icon->current.x, icon->current.y);
273 evas_resize(icon->view->evas, icon->obj.sel1, iw, ih);
274 evas_move(icon->view->evas, icon->obj.sel2, fx, fy);
275 evas_resize(icon->view->evas, icon->obj.sel2, tw, th);
276 evas_set_color(icon->view->evas, icon->obj.filename, 0, 0, 0, 255); 379 evas_set_color(icon->view->evas, icon->obj.filename, 0, 0, 0, 255);
277 if (icon->obj.sel_icon) 380/**/ if (icon->obj.sel_icon)
278 { 381 {
279 int pl, pr, pt, pb; 382 int pl, pr, pt, pb;
280 383
281 pl = pr = pt = pb = 0; 384 pl = pr = pt = pb = 0;
282 ebits_get_insets(icon->obj.sel_icon, &pl, &pr, &pt, &pb); 385 ebits_get_insets(icon->obj.sel_icon, &pl, &pr, &pt, &pb);
283 ebits_move(icon->obj.sel_icon, icon->current.x - pl, icon->current.y - pt); 386 ebits_move(icon->obj.sel_icon, icon->current.ix - pl, icon->current.iy - pt);
284 ebits_resize(icon->obj.sel_icon, iw + pl + pr, ih + pt + pb); 387 ebits_resize(icon->obj.sel_icon, icon->current.iw + pl + pr, icon->current.ih + pt + pb);
285 } 388 }
286 389
287 } 390 }
288 if (icon->current.visible) 391 if (icon->current.visible != icon->previous.visible)
289 { 392 {
290 evas_show(icon->view->evas, icon->obj.icon); 393 if (icon->current.visible)
291 evas_show(icon->view->evas, icon->obj.filename); 394 {
292 evas_show(icon->view->evas, icon->obj.sel1); 395 evas_show(icon->view->evas, icon->obj.icon);
293 evas_show(icon->view->evas, icon->obj.sel2); 396 evas_show(icon->view->evas, icon->obj.filename);
294 if (icon->obj.sel_icon) ebits_show(icon->obj.sel_icon); 397 evas_show(icon->view->evas, icon->obj.sel1);
295 } 398 evas_show(icon->view->evas, icon->obj.sel2);
296 else 399 if (icon->obj.sel_icon) ebits_show(icon->obj.sel_icon);
297 { 400 }
298 evas_hide(icon->view->evas, icon->obj.icon); 401 else
299 evas_hide(icon->view->evas, icon->obj.filename); 402 {
300 evas_hide(icon->view->evas, icon->obj.sel1); 403 evas_hide(icon->view->evas, icon->obj.icon);
301 evas_hide(icon->view->evas, icon->obj.sel2); 404 evas_hide(icon->view->evas, icon->obj.filename);
302 if (icon->obj.sel_icon) ebits_hide(icon->obj.sel_icon); 405 evas_hide(icon->view->evas, icon->obj.sel1);
406 evas_hide(icon->view->evas, icon->obj.sel2);
407 if (icon->obj.sel_icon) ebits_hide(icon->obj.sel_icon);
408 }
303 } 409 }
304 icon->previous = icon->current; 410 icon->previous = icon->current;
305 icon->changed = 0; 411 icon->changed = 0;
412 printf("... done\n");
306} 413}
diff --git a/src/view.c b/src/view.c
index 9ccfe2058..e7eed2c3e 100644
--- a/src/view.c
+++ b/src/view.c
@@ -415,8 +415,6 @@ e_view_file_added(int id, char *file)
415 if (!e_view_filter_file(v, file)) return; 415 if (!e_view_filter_file(v, file)) return;
416 icon = e_icon_new(); 416 icon = e_icon_new();
417 e_icon_set_filename(icon, file); 417 e_icon_set_filename(icon, file);
418 e_icon_set_xy(icon, rand()%(v->size.w - 60), rand()%(v->size.h - 60));
419 e_icon_show(icon);
420 e_view_add_icon(v, icon); 418 e_view_add_icon(v, icon);
421 sprintf(buf, "%s/%s", v->dir, file); 419 sprintf(buf, "%s/%s", v->dir, file);
422 if (efsd_ready(e_fs_get_connection())) 420 if (efsd_ready(e_fs_get_connection()))
@@ -426,7 +424,7 @@ e_view_file_added(int id, char *file)
426 } 424 }
427 else 425 else
428 { 426 {
429 printf("Efsd not ready.\n"); 427 printf("*********** EEEEEEEEEEEEEEEEEK Efsd not ready.\n");
430 } 428 }
431 v->changed = 1; 429 v->changed = 1;
432} 430}
@@ -616,7 +614,8 @@ e_view_handle_fs(EfsdEvent *ev)
616 } 614 }
617 icon->changed = 1; 615 icon->changed = 1;
618 icon->view->changed = 1; 616 icon->view->changed = 1;
619 if (!icon->info.link_get_id) icon->info.ready = 1; 617 if (!icon->info.link_get_id)
618 e_icon_pre_show(icon);
620 } 619 }
621 } 620 }
622 break; 621 break;
@@ -646,7 +645,8 @@ e_view_handle_fs(EfsdEvent *ev)
646 memcpy(icon->info.link, (char*)ev->efsd_reply_event.data, ev->efsd_reply_event.data_len); 645 memcpy(icon->info.link, (char*)ev->efsd_reply_event.data, ev->efsd_reply_event.data_len);
647 icon->info.link[ev->efsd_reply_event.data_len] = 0; 646 icon->info.link[ev->efsd_reply_event.data_len] = 0;
648 icon->info.link_get_id = 0; 647 icon->info.link_get_id = 0;
649 if (!icon->info.link_get_id) icon->info.ready = 1; 648 if (!icon->info.link_get_id)
649 e_icon_pre_show(icon);
650 icon->changed = 1; 650 icon->changed = 1;
651 icon->view->changed = 1; 651 icon->view->changed = 1;
652 printf("link_to = %s\n", icon->info.link); 652 printf("link_to = %s\n", icon->info.link);
@@ -726,7 +726,8 @@ e_view_new(void)
726#endif 726#endif
727#endif 727#endif
728 views = evas_list_append(views, v); 728 views = evas_list_append(views, v);
729 729
730 /*
730 { 731 {
731 E_Shelf *sh; 732 E_Shelf *sh;
732 733
@@ -738,7 +739,7 @@ e_view_new(void)
738 e_shelf_resize(sh, 500, 350); 739 e_shelf_resize(sh, 500, 350);
739 v->shelves = evas_list_append(v->shelves, sh); 740 v->shelves = evas_list_append(v->shelves, sh);
740 } 741 }
741 742 */
742 return v; 743 return v;
743} 744}
744 745
@@ -785,14 +786,14 @@ e_view_add_icon(E_View *v, E_Icon *icon)
785 e_icon_realize(icon); 786 e_icon_realize(icon);
786 v->changed = 1; 787 v->changed = 1;
787 v->icons = evas_list_append(v->icons, icon); 788 v->icons = evas_list_append(v->icons, icon);
788 e_shelf_add_icon(v->shelves->data, icon); 789/* e_shelf_add_icon(v->shelves->data, icon); */
789} 790}
790 791
791void 792void
792e_view_del_icon(E_View *v, E_Icon *icon) 793e_view_del_icon(E_View *v, E_Icon *icon)
793{ 794{
794 if (!icon->view) return; 795 if (!icon->view) return;
795 e_shelf_del_icon(v->shelves->data, icon); 796/* e_shelf_del_icon(v->shelves->data, icon); */
796 e_icon_unrealize(icon); 797 e_icon_unrealize(icon);
797 OBJ_UNREF(icon); 798 OBJ_UNREF(icon);
798 icon->view = NULL; 799 icon->view = NULL;
@@ -823,6 +824,7 @@ e_view_realize(E_View *v)
823 image_cache, 824 image_cache,
824 font_dir); 825 font_dir);
825 v->win.main = evas_get_window(v->evas); 826 v->win.main = evas_get_window(v->evas);
827 evas_event_move(v->evas, -999999, -999999);
826 e_add_child(v->win.base, v->win.main); 828 e_add_child(v->win.base, v->win.main);
827 if (v->options.back_pixmap) 829 if (v->options.back_pixmap)
828 { 830 {
@@ -905,6 +907,7 @@ e_view_update(E_View *v)
905{ 907{
906 Evas_List l; 908 Evas_List l;
907 909
910 printf("view update\n");
908 if (v->changed) 911 if (v->changed)
909 { 912 {
910 for (l = v->icons; l; l = l->next) 913 for (l = v->icons; l; l = l->next)
@@ -915,6 +918,7 @@ e_view_update(E_View *v)
915 e_icon_update(icon); 918 e_icon_update(icon);
916 } 919 }
917 } 920 }
921 printf("done\n");
918 if (v->options.back_pixmap) 922 if (v->options.back_pixmap)
919 { 923 {
920 Imlib_Updates up; 924 Imlib_Updates up;