Commit Graph

302 Commits

Author SHA1 Message Date
Cedric BAIL 46e8efcd8c Let me introduce you to Ecore_Input. The idea is to share as much as possible event
between all ecore graphic engine to ease porting of application and reduce the amount of
specific code per engine. This patch does just that.
	All your application should continu to work has previously, if it's not the case
please report any new behaviour regarding mouse and keyboard.


SVN revision: 39505
2009-03-16 16:24:43 +00:00
Davide Andreoli eb2d1db1dc Icon rename finished. Now we have a fully compliant icon theme :)
now I'm going to fix E-MODULE-EXTRA...


SVN revision: 39495
2009-03-15 17:41:46 +00:00
Davide Andreoli 3d41cbb20d More icon works, this commit include changes to the icons on the desktop.
You will probably loose desktop icons until you get a fresh profile. Or you can edit the
.desktop files in .e/e/fileman/favorites (new icons name are: user-desktop, user-home, computer and user-temp)

Sorry for bothering... the next commit should be the last ;)



SVN revision: 39419
2009-03-08 23:09:48 +00:00
Davide Andreoli 3d669d1177 * Rename the new function:
e_util_menu_item_fdo_icon_set to e_util_menu_item_theme_icon_set
As it looks for icons in e theme AND in fdo icon themes.
* Use the new function everywere instead of e_util_menu_item_edje_icon_set,
that is now marked as DEPRECATED

You should not see any difference with this commit. With the next few commit I'm
going to rename all the icons in the theme following fdo standard. I will not change
any icons, just rename them to match fdo ones.



SVN revision: 39370
2009-03-04 20:46:05 +00:00
Gustavo Sverzut Barbieri 8e66ce8605 symlink icons back!
SVN revision: 39357
2009-03-04 03:25:40 +00:00
Gustavo Sverzut Barbieri cb629d5a56 More FDO icons work, now able to choose which one has precedence.
SVN revision: 39355
2009-03-04 02:56:27 +00:00
Gustavo Sverzut Barbieri beaf395663 fdo menu icons now scales.
SVN revision: 39353
2009-03-04 00:39:49 +00:00
Gustavo Sverzut Barbieri 43a27176be Fix edje thumbnails.
Please add the following to your /etc/mime.types:

   application/x-edje edj

And the following to your ~/.e/e/config/$PROFILE/e.cfg (see hint below):

   group "mime_icons" list {
     group "E_Config_Mime_Icon" struct {
       value "mime" string: "application/x-edje";
       value "icon" string: "THUMB";
     }
   }

or just remove your settings and choose a newly installed profile.

How to edit your ~/.e/e/config/$PROFILE/e.cfg:

   PROFILE=`eet -x ~/.e/e/config/profile.cfg config /dev/stdout`
   eet -d ~/.e/e/config/$PROFILE/e.cfg config ~/.e/e/config/$PROFILE/e.src
   $EDITOR ~/.e/e/config/$PROFILE/e.src
   eet -e ~/.e/e/config/$PROFILE/e.cfg config ~/.e/e/config/$PROFILE/e.src 1




SVN revision: 39348
2009-03-03 20:17:17 +00:00
Gustavo Sverzut Barbieri a9a0752791 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
Gustavo Sverzut Barbieri 9bc2ce0678 Invert view_flags logic, make it easier to use.
Now flags do not negate, rather specify if things should be used. This
will help us be compatible with original behavior and actually just
e_fwin is using that.



SVN revision: 39340
2009-03-03 04:40:58 +00:00
Davide Andreoli b19ee965ee First step to merge Places module with efm.
* Make the fileman menu as it is in Places module (still need to fix icons)

Just a doubt:
why efm was called using ecore_idle_enterer_add ? it is necessary ? I need to reenable it?

SVN revision: 39335
2009-03-02 22:46:40 +00:00
Gustavo Sverzut Barbieri ee2ab9506b fix problem with double directories in virtual devices.
oops, were using realpath and not path!

PS: still segfaults on some cases, related to mouse up callback being
called on already deleted icons, that should not happen as objects are
unrealized before being deleted. Need to investigate.



SVN revision: 39329
2009-03-02 11:55:57 +00:00
Gustavo Sverzut Barbieri 155495866f add e_fm2_view_flags_{get,set}
with these you can opt to ignore things like custom directory options,
very useful for widgets to choose files (e_widget_fsel) since you
don't want them to show your items as 128x128 :-)



SVN revision: 39322
2009-03-02 03:12:43 +00:00
Gustavo Sverzut Barbieri e88de35176 efm: use freedesktop icons from icon theme.
This almost remove need of e_fm_mime.c since it will use efreet, but
may bring some slowdowns due efreet. In this case let's try to
optimize efreet and improve everything.



SVN revision: 39315
2009-03-01 21:06:51 +00:00
Gustavo Sverzut Barbieri 82a8ab89df Major refactor of e_fm2_icon_get() and minor optimizations.
* split e_fm2_icon_get() to make it reuse more code paths.

 * lots of new internal functions with _e_fm2_icon_ prefix are born,
   try to reuse them as much as possible so we have less places to
   change if we move to something else (hint: using FreeDesktop.Org
   icons)

 * optimize e_fm2_icons_update() and few others to do not copy
   sd->realpath all the time, it is loop invariant there.

 * comparison of mime icon "DESKTOP" and "THUMB" are now fast pointer
   comparison since they're all eina_stringshare'd.

 * themes can now differentiate between file types, like 'fifo',
   'socket' or even 'executable'.

 * common extension comparisons are bit faster, not using glob pattern
   matching but rather reusing code to find out last '.' and then
   comparing them in optimal way. I added E_FM2_SIMPLE_STRCASE_FILES
   to make it even faster if one wants, left disabled by now.




SVN revision: 39313
2009-03-01 18:15:44 +00:00
Gustavo Sverzut Barbieri 5b0166b41e Enable per-dir theme of rubberband as well.
SVN revision: 39219
2009-02-25 21:06:21 +00:00
Cedric BAIL db419867dd * estickies,
* etk,
	* PROTO/exalt,
	* E-MODULES-EXTRA/diskio,
	* E-MODULES-EXTRA/drawer,
	* E-MODULES-EXTRA/penguins,
	* E-MODULES-EXTRA/slideshow,
	* E-MODULES-EXTRA/mail,
	* E-MODULES-EXTRA/forecasts,
	* E-MODULES-EXTRA/iiirk,
	* E-MODULES-EXTRA/places,
	* e,
	* ewl,
	* ecore,
	* elitaire,
	* entrance,
	* e_dbus,
	* efreet: Here we go, move from Ecore_List to Eina_List.

	NOTE: This patch is huge, I did test it a lot, and I hope nothing is
	broken. But if you think something change after this commit, please
	contact me ASAP.


SVN revision: 39200
2009-02-25 11:03:47 +00:00
Gustavo Sverzut Barbieri 59cde6a762 fm: handle symbolic links.
Symbolic links are handled similar to "paste". If you "Copy" you'll
get the "Link" menu item that will create a symbolic link instead of
real copying the file.

Drag and Drop works similarly, use "Alt" in order to get a popup and
select "Link" there.

Toma: we do miss icons for it!

Mekius & Ptomaine: please review as I'm not that familiar with e_fm_op.c



SVN revision: 39170
2009-02-24 05:22:14 +00:00
Gustavo Sverzut Barbieri ca8587a631 Oops, fix some bugs introduced with past commits.
SVN revision: 39032
2009-02-16 00:28:51 +00:00
Gustavo Sverzut Barbieri 815441ef2e e_fm: remember directory settings.
e_fm2_custom_file now remembers directory settings, it will save 
position on screen (horizontal and vertical pan percentage), view mode, 
icon size, if to remember ordering and if it should show hidden files.

There is a menu option to remove these settings and inherit settings 
from parent.



SVN revision: 39031
2009-02-15 23:09:09 +00:00
Gustavo Sverzut Barbieri b6e158989f Remove some warnings I introduced with past commits.
SVN revision: 39029
2009-02-15 17:06:49 +00:00
Gustavo Sverzut Barbieri df17ed3ca2 Minor refactor of interfaces, split code and menu callbacks.
Let's make real code interfaces to take a single Evas_Object and menu 
items callbacks should call them.



SVN revision: 39028
2009-02-15 15:25:27 +00:00
Gustavo Sverzut Barbieri 73ed3f89b3 keyboard shortcuts: ^X, ^C and ^V now works.
http://trac.enlightenment.org/e/wiki/Release



SVN revision: 39027
2009-02-15 14:50:30 +00:00
Gustavo Sverzut Barbieri 68461812b1 DONE: fm2 "delete" key needs to... delete.
http://trac.enlightenment.org/e/wiki/Release



SVN revision: 39026
2009-02-15 14:31:09 +00:00
Gustavo Sverzut Barbieri 78c70d7f94 fix sting bugs with e_fm and fileman.
* simplify eina_stringshare usage with _eina_stringshare_replace();
 * do not modify the string in stringshare as in e_fm2_parent_go();
 * use custom_theme_content instead of custom_theme in e_fm2_custom_theme_content_set().

Hopefully this will break nothing, but further analysis if it's
leaking strings in the stringshare should be done.



SVN revision: 38559
2009-01-12 19:52:35 +00:00
Carsten Haitzler 6beedeeda2 only use evdir.. if its there.
SVN revision: 38478
2009-01-06 07:55:03 +00:00
Carsten Haitzler 0c41ae041e move internal binaries to subdir - patch from albin
SVN revision: 38414
2009-01-02 01:08:14 +00:00
Cedric BAIL 773d102291 This commit is huge. I did test it a lot on my computer, and it run fine here.
But is so big i fear i could have broken some piece of code. So report any wrong
behaviour to me (cedric on #edevelop).

So moving e17 and efreet to eina_hash. With a little efreet API break so they
must come together.


SVN revision: 38185
2008-12-17 15:33:43 +00:00
Carsten Haitzler 81c91f034a char is used for numeric values... thus should be explicitly signed!
SVN revision: 37991
2008-12-07 21:57:11 +00:00
Gustavo Sverzut Barbieri 1d214683a9 e_fm2: view mode is back!
As I suspected it was not error on my code. At the end it was just a
missing theme.

For now I just aliased default to desktop, but I guess it's better to
come with something else transparent so we can see our
wallpaper. Themers?!

PS: for Illume I think it makes sense to have that menu, but for
desktop it does not, maybe we should add more flags to turn off just
view mode selection and keep icon size? Or just turn off lists... or
just let the user choose, there are many strange users out there, one
might like it.



SVN revision: 37983
2008-12-07 13:53:25 +00:00
Carsten Haitzler 99be358466 mark it with a comment
SVN revision: 37900
2008-12-02 03:46:50 +00:00
Carsten Haitzler c42fa8aa76 unfortunately disable.. breaks! need to find exactly why and fix though...
SVN revision: 37897
2008-12-02 02:29:50 +00:00
Gustavo Sverzut Barbieri 4ee50ae10c Dynamic change of icon size in EFM.
Still not persistent.


SVN revision: 37875
2008-12-01 04:38:27 +00:00
Gustavo Sverzut Barbieri ff06c79462 Enable changing view mode for a single directory.
So far no icon size changes, just mode between Grid Icons, Custom
Icons and List, one can choose to go back to default (global) setting.

TODO:
 - select icon size when !list
 - save state using e_fm_custom
 - child directory should inherit parent settings



SVN revision: 37873
2008-12-01 03:29:45 +00:00
Chidambar Zinnoury 4d2001bed6 While selecting using rubberband on file manager, select also when text is contained, not only icon.
SVN revision: 37844
2008-11-28 21:06:28 +00:00
ptomaine 75af5ecbe7 EFM: Make use of eina_stringshare_ref().
SVN revision: 37460
2008-11-04 17:12:01 +00:00
Gustavo Sverzut Barbieri 2d0f06ef7f Add and use eina_stringshare_ref().
This is a faster "add", if we know we're using a shared string we know
the node without any need to search it, just increment reference and
exit.



SVN revision: 37458
2008-11-04 16:25:12 +00:00
ptomaine 1c58b0e196 EFM: Make a copy of the dev argument, since eina_stringshare_del is called on
ic->sd->dev inside e_fm2_path_set() before anything is done and, thus, pointer
is no more valid.


SVN revision: 37457
2008-11-04 15:54:38 +00:00
Carsten Haitzler 17ff6255a1 thomas fix for single click dirs
SVN revision: 37436
2008-11-03 08:56:16 +00:00
Carsten Haitzler e5b58cdf3a profide a fso icon override for hdd's to use theme icon and code to use it.
SVN revision: 37266
2008-10-28 07:48:16 +00:00
Sebastian Dransfeld 10396e6085 Use strlcpy
SVN revision: 37237
2008-10-27 12:34:35 +00:00
Sebastian Dransfeld ab62c5ccf1 Fix if formatting.
SVN revision: 37207
2008-10-27 07:34:22 +00:00
Sebastian Dransfeld caa810894e Fix print formatting
SVN revision: 37205
2008-10-27 07:33:59 +00:00
Sebastian Dransfeld 4c36506ab1 Remove unused variables.
SVN revision: 37204
2008-10-27 07:33:45 +00:00
Sebastian Dransfeld 92ff3dab37 Fix callback for list sorting.
SVN revision: 37202
2008-10-27 07:33:21 +00:00
Gustavo Sverzut Barbieri e5c4d62fd4 Set member_{add,del} to NULL.
SVN revision: 37091
2008-10-25 03:13:33 +00:00
Cedric BAIL 1087de2397 Remove Evas list and replace them with Eina list.
No change for ->next and ->data access right now, as the patch is already
big enough.



SVN revision: 36962
2008-10-22 11:49:33 +00:00
Cedric BAIL 3d6749983b Switch to eina_stringshare.
This could also change the usage of string share in E17.



SVN revision: 36679
2008-10-15 15:12:56 +00:00
Carsten Haitzler b370f8315f remove/comment out printfs and remove fixme (to be removed) fake mouse up funcs
SVN revision: 36229
2008-09-25 01:34:39 +00:00
ptomaine 2f90f227ea Avoid using '/media/' as mount point.
Fixes http://trac.enlightenment.org/e/ticket/19


SVN revision: 36158
2008-09-22 07:20:22 +00:00