Commit Graph

6961 Commits

Author SHA1 Message Date
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
Vincent Torri 5a8ce91119 fix warning when using some extensions defined in glext.h
SVN revision: 39341
2009-03-03 06:07:08 +00:00
Cedric BAIL 970a2eb7bd eet: Including two times the same header is useless in the best case.
SVN revision: 39334
2009-03-02 15:39:10 +00:00
Cedric BAIL 1d1335498c eet: Fix memleak during cipher.
SVN revision: 39331
2009-03-02 14:43:57 +00:00
Viktor Kojouharov 2b196bcc54 --oopsie in the min size calc of the flow layouts
SVN revision: 39330
2009-03-02 13:47:50 +00:00
Vincent Torri 3616db9aa6 optimize ddraw engine : when locking a surface, don't allow Windows
to suspend operations. expedite runs with around 7 points more than
without those flags on my computer


SVN revision: 39316
2009-03-01 21:09:39 +00:00
Viktor Kojouharov a5a7e167d9 more accurate min size calculation for flow layouts
SVN revision: 39310
2009-03-01 16:27:03 +00:00
Jorge Luis Zapata Muga 07235befaa + Fix the precision when multiplying two fixed point numbers
SVN revision: 39307
2009-03-01 12:35:30 +00:00
Gustavo Sverzut Barbieri 87d5d0a037 Mark as changed when smooth scale flag changes.
This allows us to change to non-smooth on animations and then back to
smooth after animation is done.



SVN revision: 39300
2009-02-28 20:09:03 +00:00
Gustavo Sverzut Barbieri 071ad5b4aa minor optimizations to box recalculation.
just recalculate when required, and just mark as required when layout
really changes.



SVN revision: 39299
2009-02-28 20:04:55 +00:00
Viktor Kojouharov 0a544a09d3 'box.min' for the edje box
SVN revision: 39298
2009-02-28 19:38:35 +00:00
Viktor Kojouharov 999e7c9c54 size min hints for the flow layouts
SVN revision: 39297
2009-02-28 19:33:30 +00:00
Gustavo Sverzut Barbieri 5be0dac611 Split files so we can avoid "defined but not used" warnings.
SVN revision: 39295
2009-02-28 18:47:17 +00:00
Gustavo Sverzut Barbieri 3fb821ca1d shutdown cache, hope it works like in common/32 engine.
SVN revision: 39294
2009-02-28 18:36:18 +00:00
Viktor Kojouharov 1b197b9542 it actually makes sense to have them overlap on justify, so go back
SVN revision: 39293
2009-02-28 18:06:37 +00:00
Viktor Kojouharov fee3b366bf and also for the vertical layout
SVN revision: 39291
2009-02-28 17:56:06 +00:00
Viktor Kojouharov 6554ab44d6 fix smaller-box-than-items problem for horizontal layout
SVN revision: 39289
2009-02-28 17:50:15 +00:00
Gustavo Sverzut Barbieri 0cd52d626b Fix flow layout if box size is smaller than required.
Reported and fix suggestion by Viktor Kojouharov.



SVN revision: 39286
2009-02-28 17:10:03 +00:00
Gustavo Sverzut Barbieri e46171ee07 box: remove unused parameters
SVN revision: 39285
2009-02-28 17:07:10 +00:00
Lars Munch 0ae6187dee Emotion fix after eina list changes
Fix emotion after eina list changes in commit r39195

Signed-off-by: Lars Munch <lars@segv.dk>



SVN revision: 39284
2009-02-28 16:12:13 +00:00
Lars Munch b7969a2861 emotion vlc disable fix
When vlc was disable HAVE_VLC was undefined

Signed-off-by: Lars Munch <lars@segv.dk>



SVN revision: 39283
2009-02-28 16:06:42 +00:00
Vincent Torri c5e64e50b7 fix comment
SVN revision: 39280
2009-02-28 13:02:17 +00:00
Vincent Torri 4e282b255e automatic detection according to the host
SVN revision: 39279
2009-02-28 11:47:43 +00:00
Vincent Torri 6696a9c87b * remove 'unused parameter' warnings
* i didn't touch glitz engine as it will certainly be disabled later
 * i'll update windows engines later


SVN revision: 39274
2009-02-28 10:08:45 +00:00
Carsten Haitzler 9911c70dff ECORE_EVAS_FPS_DEBUG now printfs useful data.
SVN revision: 39273
2009-02-28 07:54:47 +00:00
Gustavo Sverzut Barbieri 56e28f91b6 Remove last standing warnings.
SVN revision: 39269
2009-02-27 16:35:32 +00:00
Gustavo Sverzut Barbieri 59236beb8b Oops, missing file.
GIT would help me avoid this mess.



SVN revision: 39268
2009-02-27 16:33:50 +00:00
Gustavo Sverzut Barbieri e3cce7b79d New macros, documentation and consistency for iterators and accessors.
EINA_ITERATOR_FOREACH() and EINA_ACCESSOR_FOREACH() are new macros to
help us forget about nasty C details (like cast to (void **)).

Document most iterators and accessors.

All iterators now set EINA_ERROR_OUT_OF_MEMORY if it's the case.



SVN revision: 39267
2009-02-27 16:32:22 +00:00
Gustavo Sverzut Barbieri 9a3570bfb9 Create macros to help initialize class structures.
also defined evas_smart_new() as deprecated.



SVN revision: 39266
2009-02-27 15:30:32 +00:00
Cedric BAIL 488d1beafd * ecore_con_info: Fix typo preventing dns resolution,
fix error handling and use eina in one more place.


SVN revision: 39265
2009-02-27 14:53:57 +00:00
Gustavo Sverzut Barbieri 09f9cd39c5 Oops! forgot to test binaries and missed including config.h
SVN revision: 39261
2009-02-26 22:38:14 +00:00
Gustavo Sverzut Barbieri ab2e35127f Fix most compiler & clang warnings.
Left warnings regarding signed and unsigned comparison since
eina_list_count() returns unsigned, can use a cast in this return, but
not big deal for now.


By: Luis Felipe Strano Moraes & myself.



SVN revision: 39260
2009-02-26 22:35:38 +00:00
Gustavo Sverzut Barbieri b95c69d2f5 Fix problem reported by clang.
TODO: we should review sign of length attributes and make them
consistent whenever possible.

By: Luis Felipe Strano Moraes



SVN revision: 39258
2009-02-26 22:14:14 +00:00
Gustavo Sverzut Barbieri 4a5c489216 Fix problem reported by clang.
By: Luis Felipe Strano Moraes



SVN revision: 39256
2009-02-26 22:02:00 +00:00
Cedric BAIL 452695bd6c * efreet: Fix opening file.
SVN revision: 39246
2009-02-26 16:14:22 +00:00
Vincent Torri 7311be0ec4 fix some llvm reports
SVN revision: 39241
2009-02-26 07:46:57 +00:00
Carsten Haitzler 82bc9fb21d other typo
SVN revision: 39240
2009-02-26 07:33:55 +00:00
Carsten Haitzler 1d7083de96 fix typo
SVN revision: 39239
2009-02-26 07:27:08 +00:00
Vincent Torri 5ea28a9f21 add more keyboard support on Windows CE
SVN revision: 39238
2009-02-26 07:24:50 +00:00
Vincent Torri 648fa70e12 fix warning with mingw32ce (getenv not declared)
fix compilation with mingw32ce (EAPI not correctly defined)


SVN revision: 39237
2009-02-26 07:08:12 +00:00
Gustavo Sverzut Barbieri 2bcea93a7c Fix port to eina_list.
* efreet_desktop_command_build(): should consider the first
   run. Before had a "first" toggle variable, which vanished with eina
   port. I changed it to do {} while (), making it work again.

 * exec string is already freed by callback (in e_exec.c), to keep old
   behavior, just free the list with eina_list_free(). Just pay
   attention to ecore_list and double check if they had a free
   function set or not. If it didn't, then we should not free nodes!



SVN revision: 39228
2009-02-26 03:56:21 +00:00
Carsten Haitzler 7646b3e4af fix custom icon dirs api so u CAN add to the icon dirs!
SVN revision: 39226
2009-02-26 03:46:35 +00:00
Vincent Torri 389a006871 does not return a value in function returning void
SVN revision: 39224
2009-02-25 23:39:59 +00:00
Vincent Torri 7dd1e9e055 remove more 'unused parameter' warnings
SVN revision: 39223
2009-02-25 23:39:19 +00:00
Vincent Torri 4d1961ac59 remove 'unused parameter' warning
SVN revision: 39222
2009-02-25 23:18:15 +00:00
Gustavo Sverzut Barbieri aff2f5ebcf Add reverse iterator macros for eina list.
SVN revision: 39218
2009-02-25 20:19:32 +00:00
Cedric BAIL 7e64baf165 * efreet: Prevent crash when no Efreet_Desktop are found.
SVN revision: 39214
2009-02-25 17:40:40 +00:00
Cedric BAIL 6ab6dbca0d * edje: Remove snprintf("%i") for an eina itoa.
NOTE: When you just want to convert from an int to a string,
	better use eina for that.



SVN revision: 39213
2009-02-25 17:08:17 +00:00
Cedric BAIL 0b41f0e138 * efreet: Fix previously broken efreet cache.
SVN revision: 39211
2009-02-25 16:46:51 +00:00
Gustavo Sverzut Barbieri 27f001875b Fix EINA_INLIST_GET() macro.
now EINA_INLIST_GET(bla)->next will work, before it was like

 &bla->__in_list->next

which is wrong, since __in_list is not a pointer, rather the memory itself.



SVN revision: 39210
2009-02-25 16:24:00 +00:00