making notes in fm - and e_apps. jerkiness on startup identified.

SVN revision: 26607
This commit is contained in:
Carsten Haitzler 2006-10-15 01:35:07 +00:00
parent d05e60f803
commit 2a16d00cf8
2 changed files with 25 additions and 4 deletions

View File

@ -177,7 +177,13 @@ _e_apps_hash_idler_cb(void *data)
* since we last looked at it, so iterate through them again. Doesn't seem to
* slow the process down much.
*/
/* FIXME: on a slow enough system this will never complete. the hash walk
* may abort before scanning anything t all (entries walked in hash all
* already filled but further entries later in the hash walk will never
* be reashed as timeout happens before getting there)
*/
evas_hash_foreach(_e_apps_every_app, _e_apps_hash_idler_cb_init, idler);
printf("\nIDLE APP FILLING PASS %3.3f\n", ecore_time_get() - idler->pass);
if (idler->all_done)
{
printf("\nIDLE APP FILLING SCAN %3.3f\n", ecore_time_get() - idler->begin);
@ -196,6 +202,7 @@ _e_apps_hash_idler_cb_init(Evas_Hash *hash, const char *key, void *data, void *f
{
E_App *a;
struct _E_App_Hash_Idler *idler;
double t;
a = data;
idler = fdata;
@ -210,6 +217,8 @@ _e_apps_hash_idler_cb_init(Evas_Hash *hash, const char *key, void *data, void *f
a->idle_fill = 1;
if (stat(a->path, &st) >= 0)
a->mtime = st.st_mtime;
/* FIXME: the main problem is this call - when it does get run it can
* sometimes take 0.2 or 0.3 seconds, causing much jerkiness */
e_app_fields_fill(a, a->path);
}
#if IDLE_ICONS
@ -224,7 +233,8 @@ _e_apps_hash_idler_cb_init(Evas_Hash *hash, const char *key, void *data, void *f
/* FIXME: This time should be since the beginnig of all idler processing,
* and the time limit should be tied to the frame rate.
*/
if ((ecore_time_get() - idler->pass) < 0.07) return 1;
t = ecore_time_get() - idler->pass;
if (t < 0.02) return 1;
idler->all_done = 0;
return 0;
}

View File

@ -2805,7 +2805,9 @@ _e_fm2_cb_dnd_drop(void *data, const char *type, void *event)
free(d);
}
}
refresh = 1; /* refresh src fm */
/* FIXME: disable refresh - modify icons in-place */
refresh = 1; /* refresh src fm */
/* FIXME: disable refresh - modify icons in-place */
e_fm2_refresh(sd->obj); /* refresh dst fm */
}
else if (sd->drop_icon) /* inot or before/after an icon */
@ -2882,7 +2884,9 @@ _e_fm2_cb_dnd_drop(void *data, const char *type, void *event)
ecore_file_mv(ll->data, buf);
}
}
refresh = 1; /* refresh src fm */
/* FIXME: disable refresh - modify icons in-place */
refresh = 1; /* refresh src fm */
/* FIXME: disable refresh - modify icons in-place */
e_fm2_refresh(sd->obj); /* refresh dst fm */
}
else
@ -2939,6 +2943,7 @@ _e_fm2_cb_dnd_drop(void *data, const char *type, void *event)
free(d);
}
}
/* FIXME: disable refresh - modify icons in-place */
e_fm2_refresh(sd->obj); /* refresh dst fm */
}
else /* no order file */
@ -2957,7 +2962,9 @@ _e_fm2_cb_dnd_drop(void *data, const char *type, void *event)
else
ecore_file_mv(ll->data, buf);
}
refresh = 1; /* refresh src fm */
/* FIXME: disable refresh - modify icons in-place */
refresh = 1; /* refresh src fm */
/* FIXME: disable refresh - modify icons in-place */
e_fm2_refresh(sd->obj); /* refresh dst fm */
}
}
@ -2965,6 +2972,7 @@ _e_fm2_cb_dnd_drop(void *data, const char *type, void *event)
}
_e_fm2_dnd_drop_hide(sd->obj);
_e_fm2_dnd_drop_all_hide(sd->obj);
/* FIXME: disable refresh */
for (l = _e_fm2_list; l; l = l->next)
_e_fm2_dnd_finish(l->data, refresh);
}
@ -4388,6 +4396,7 @@ _e_fm2_new_directory_yes_cb(char *text, void *data)
fclose(f);
}
}
/* FIXME: disable refresh - modify icons in-place */
if (sd->refresh_job) ecore_job_del(sd->refresh_job);
sd->refresh_job = ecore_job_add(_e_fm2_refresh_job_cb, sd->obj);
}
@ -4487,6 +4496,7 @@ _e_fm2_file_rename_yes_cb(char *text, void *data)
}
if (ic->sd->order_file) _e_fm2_order_file_rewrite(ic->sd->obj);
/* FIXME: disable refresh - modify icons in-place */
if (ic->sd->refresh_job) ecore_job_del(ic->sd->refresh_job);
ic->sd->refresh_job = ecore_job_add(_e_fm2_refresh_job_cb, ic->sd->obj);
}
@ -4643,6 +4653,7 @@ _e_fm2_file_delete_yes_cb(void *data, E_Dialog *dialog)
}
if (ic->sd->order_file) _e_fm2_order_file_rewrite(ic->sd->obj);
/* FIXME: disable refresh - modify icons in-place */
if (ic->sd->refresh_job) ecore_job_del(ic->sd->refresh_job);
ic->sd->refresh_job = ecore_job_add(_e_fm2_refresh_job_cb, ic->sd->obj);