Commit Graph

14 Commits

Author SHA1 Message Date
Vincent Torri 285297dcdd * API break: _shutdown() functions return an int, now
* simplify a bit and fix init/shutdown functions



SVN revision: 42996
2009-10-10 06:19:13 +00:00
Vincent Torri 1bf086809e * move header files in efree_provate.h to the source files
* fix compilation on Windows XP (not sure that Windows CE port is needed...)

note that, as ecore_exe is not available on Windows, some code have
been disables for that platform in src/lib/efreet_desktop.c. Also, a new Evil
version should be used (not in svn yet)

The compilation on Windows is needed for Ewl (icon and mime)



SVN revision: 40257
2009-04-20 23:20:40 +00:00
Gustavo Sverzut Barbieri 200c92f82a efreet mime types icon cache.
This cache is very simple and should work fine when system does not
change, it keeps a direct association of mime-types and found icons,
remembering theme and icon size. Search is very fast since it uses
stringshared strings and thus direct pointer comparison in hash
search. We could optimize it even more if we assumed stringshared
strings to come in, so no need to eina_stringshare_add() (which is a
hash per se), using just eina_stringshare_ref().

Cache population is limited to compile-time value and just values
older than a given threshold are deleted. I do not keep a LRU explicit
list, so you might have some old but unused items always alive. I
don't find this too bad, sure it will consume more memory, but will
not hurt performance. We can change this to purge all expired items by
not checking for number of items to remove, removing all that match.

Next I plan to find out a good way to cache and speed up file->mime
discovery. I plan to do auto-generated state-machine to match
extensions, so you don't need to check the same extension character
more than once. Example:

   Input: bla.edc
   Extensions: edc edj eps png bmp

It would first try to match against 'e', 'p' and 'b'. It will match
'e' and then check for 'd' (edc or edj) or 'p' (eps). It will match
'd' and then check for 'c' or 'j'. This will reduce number of
comparisons considerably.

As I'm running out of time (4am, not much time left on this month), I
could use some help here.



SVN revision: 39343
2009-03-03 07:20:21 +00:00
Sebastian Dransfeld bfb18778e2 Pass icon size as unsigned int.
SVN revision: 35490
2008-08-14 20:48:41 +00:00
Davide Andreoli f438c7eb9a * Fix Doxy warnings
SVN revision: 35307
2008-08-02 21:48:44 +00:00
Sebastian Dransfeld 3070ebe721 define EAPI
SVN revision: 32347
2007-11-04 11:19:55 +00:00
Sebastian Dransfeld d15dcd181c EAPI
SVN revision: 32339
2007-11-04 09:32:35 +00:00
doursse 6a7494bba7 remove trailing spaces
SVN revision: 31638
2007-09-06 16:15:10 +00:00
Sebastian Dransfeld 3b116f3a2b Remove the icon cache.
This means that users of efreet_icon_list_find, efreet_icon_path_find and
efreet_icon_find must clean up after themselves!


SVN revision: 30986
2007-07-26 11:30:10 +00:00
Nicholas Hughart 0a4d1e3605 Added efreet_mime_type_icon_get which will retrieve a mimetype icon. This follows the loose specification described in the fdo icon spec. Also added efreet_icon_list_find which will search for a list of icons in a theme before falling back to inherited themes. Also made a slight modification to the fallback detection for efreet_mime. Tabs will no longer trigger the return of application/octet-stream.
SVN revision: 30875
2007-07-17 19:21:20 +00:00
Nicholas Hughart 5f4e0e936e API update. Now you have more control over which methods are used to check for a type by using the efreet_mime_*_type_get functions. Also vastly increased the speed of the glob checking.
SVN revision: 30612
2007-07-06 03:01:21 +00:00
Nicholas Hughart f9727d47ae Updated quite a bit. API break: efreet_mime_get is now efreet_mime_type_get and it no longer accepts methods as a parameter. It will do the full check of the magic and glob rules based on recommendations in the spec. Also fixed the major leaks, still a few minor ones left.
SVN revision: 30553
2007-07-03 04:47:29 +00:00
Dan Sinclair 5e87a2a846 - cleanup
SVN revision: 30520
2007-07-01 16:32:34 +00:00
Nicholas Hughart fe2842a58f Everything is working except the file monitors to look for new/modified files. This is going up in hopes that someone can find the bug in my code pertaining to this as I haven't been able to.
If you find the bug and fix it, don't hesitate to commit the code :)
Have Fun\!


SVN revision: 30515
2007-07-01 05:10:14 +00:00