EAPI void
e_menu_item_disabled_set(E_Menu_Item *mi, int disable)
Setting the menu item 'disabled' will gray it out and will make it unselectable.
SVN revision: 39802
* Add the new simple module fileman_opinfo
The module provide a gadget that show the efm operations in progress. It is just a button
with a dynamic label atm, a better interface to come...
To compile the module you need to add it to configure.ac and src/modules/Makefile.am ... I have those
files too much hacked atm to commit :P
k-s: can you commit the 2 files for me please? just add the new module.
Hope you like it
Dave
SVN revision: 39794
* e_fm_op : report sizes (done and total) now refer to the whole task, not the single file
* e_fwin : better operation monitor label (and add a delay on delete)
SVN revision: 39787
one of the most annoying problems while using bling is that when E
segfaults it will launch an alert window, but since composite manager
is using the same process/connection as e17, it will not die and e
will not compose as required, so you basically end with a black
screen.
this patch will forcely turn off manual redirection and you'll get the
white-screen-of-death, being able to restart e17.
future: if we really do composite in e18, then please handle this in a
better way.
SVN revision: 39741
* use edje_box instead of evas_box
* remove entry_del_handler (use the free_cb instead)
* sizeof(buf) instead of PATH_MAX in snprintf
Thanks gustavo for suggestions :)
SVN revision: 39687
The argument is the name of the config dialog to open, ex: 'advanced/engine'
So you can call:
enlightenment_remote -exec-action configuration "appearance/theme"
to open the theme congif dialog.
SVN revision: 39588
* h->active_type was referring to xdnd->type, that could be freed
already. Now it's a reference to that string.
* strcmp() are now direct pointer comparison since strings are shared.
* no more extra "types" allocated member, make it a variable array at
the end of the structure.
SVN revision: 39564
This huge commit will add e_fm2_op_registry, a central place that will
store all on-going operations. You will find that it will report when
operations are added, remove and when they change, for example when
they change progress.
Please notice that the recommended way to present information is to
add listener to specific entries, as opposed to use
E_EVENT_FM_OP_REGISTRY_CHANGED since it will be called immediately and
you do not have to filter which entry is being changed.
Entries will be associated with the e_fm object that originated
it. With that one can get the Ecore_X_Window and request the window to
be raised from somewhere else (ie: gadman/gadget). If object is
deleted (ie: window is closed), the pointer will be made NULL and it
will be a "windowless operation".
TO DO (I need someone to do those):
- e_fwin: windows should present on-going operations as an overlay,
Dave Andreolli already started such work, it's just a matter of
using the new infrastructure.
- create a new gadget that present all on-going operations and maybe
a history. It would be nice to show the e_fwin of if the entry is
clicked, as well as a cancel button and a progress bar. See
"places" module, make them similar.
SVN revision: 39541
- _e_fm2_typebuf_match has the new argument 'next'; one can now go to the prev/next match with up/down keys while typebuffer is active
SVN revision: 39534
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
be to propagate the delete operation to e_ilist.c and mark the selected entry to be
deleted and update code listing selected item to not return to be deleted item.
NOTE: Is it really usefull ? Doesn't evas/edje delay the destruction of Evas_Object anyway ?
SVN revision: 39445
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
All the graphics need to be done! For now just a red rectangle, 5 labels and
a really simple progress bar. ... (toma: ping)
You can change the position of the info box from e_fwin.c line 329. A configuration will come soon....
The configuration will also let you choose on witch window you want to see the info box
(every window, just on the source of copy operation, just on the dest or both)
SVN revision: 39416
e_util_icon_theme_set(Evas_Object *obj, const char *icon)
to use in place of e_util_edje_icon_set.
The new function (as it works for menu) search the icon in E theme and FDO themes
according to the config option.
SVN revision: 39371
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
while testing with no ~/.gtk-bookmarks and no volume, I was getting a
trailing separator. The new code should just add separators in correct
situations.
SVN revision: 39351
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
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
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
can use the same label and the same icon.
Atm the icons in the menu are taken from efreet and thus from
your icon theme...maybe icons found in the E17 theme should
override the system one?
SVN revision: 39337
* 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
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
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
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
* 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
* 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
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
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
This was added in a commit by cedric (r38185) saying it was doing efreet
and eina_hash changes, so I expect it to be erroneous change.
If view mode has any problems, let me know.
SVN revision: 39025
When e starts in systems under heavy load, it might not get reply from
HAL before we need it, so detect batteries that still do not have
filled properties and avoid calling _battery_update() if nothing is
known.
SVN revision: 38946
vanishing, like with e_shelf_locked_set. gadcon providers set their own lock
function with e_gadcon_util_lock_func_set, which is called by
e_gadcon_locked_set.
SVN revision: 38759
according to raster e_gadcon_canvas_zone_geometry_get() was supposed
to return zone-relative coordinates, but it was implemented
incorrectly and everything now depends on absolute coordinates, so
let's keep it absolute.
SVN revision: 38589
* 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
Some cases like not having o_base and o_frame are impossible, but I
added the cheap "else return;" just to keep it quiet. But some cases
were really bugs and were fixed.
SVN revision: 38556
It's nasty to have shelf auto-hided when you have a popup like mixer
or battery warning, so gadcon popups will now lock shelf while they're
visible.
Developers can go back to old behaviour setting the appropriate flag
with e_gadcon_popup_shelf_lock_set().
SVN revision: 38530
Anytime shelf appends its submenu, it will lock shelf so it's not
hidden automatically. Unlock happens as soon as the menu item is
deleted.
SVN revision: 38529
e_menu had this behaviour that submenus were not deleted
automatically, relying on the parent menu to hook to post_deactivate
and then delete them.
This was good because maybe you don't want to delete these children,
you might want to reuse them sometime.
But it ended that nobody was using this feature, and worse: most use
cases were failing to delete these children, causing memory leak.
This commit changes the default behaviour and thus remove all the
existing code that was replicating such work. If one want the old
behavior, just call e_menu_item_submenu_set(mi, NULL) and it will be
unbounded from the parent.
If you experience any problems with that, try adding some printf()
before _e_menu_free() and _e_menu_item_free() and print some relevant
information like m->category and m->header.title or mi->label in order
to figure out the problematic menu.
SVN revision: 38528
It's so annoying have to move mouse to screen border in order to show
shelfs. This way we can do a key bindings to do so.
One can use glob (uses fnmatch) to limit shelves by name.
SVN revision: 38527
might not have them - if the app is installed, and to allow the user to
select what goes in their ibar to start with. only .desktop files in
~/Desktop left to deal with.
SVN revision: 38473
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
* configure.ac:
- require C99 compiler;
- disable F77 and CXX checks;
- per-binary (program) flags, reduce linkage;
- every module can be optionally compiled;
* src/bin:
- Makefile.am: per-binary libs, reduce linkage;
- just add LIBS to LDADD and LIBADD, not LDFLAGS!
- e_sys_main.c: rewrite using proper eina, avoid linking with evas.
* src/modules:
- just add LIBS to LDADD and LIBADD, not LDFLAGS!
- every module can be optionally compiled;
SVN revision: 38009
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
EXPECT a configurenotify to match. this is wrong. wm's are free to ignore
configurerequests if they liek - and dont have to thus send
configurenotifies...
SVN revision: 37922
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