Commit Graph

356 Commits

Author SHA1 Message Date
Chidambar Zinnoury 94fe8e9020 EFM: on [↑] or [↓] key, use the same distance function for "normal" view modes as for "custom" view modes so that selection doesn't get jumpy.
SVN revision: 48542
2010-05-02 07:03:32 +00:00
Gustavo Sverzut Barbieri 4cd34cc5e8 NEVER, EVER should modify the stringshared pointer.
That is why stringshare returns "const char*".

ZMike, pay attention to these cases. I know this one was particularly
nasty to spot since you receive the "const char *path", but later on
you request strrchr(path..) and receive "char *p", the cast is done
implicitly by libC to make all the case works (C++ version fixed this
recently, but in C there is no way).

The crash that lead me to investigate it was spot by Lucas De Marchi
at advanced wallpaper dialog, but actually other places that uses efm
should be equaly broken.



SVN revision: 48508
2010-05-01 16:02:03 +00:00
Mike Blumenkrantz 9d40d66091 step 3: migrate all function and variable names to generic dbus naming
SVN revision: 48488
2010-04-30 19:14:20 +00:00
Mike Blumenkrantz 5c598d1a78 beginnings of the ukit migration. this time, in many many many small commits along the way to avoid breaking things! :)
step 1: migrate *hal* files to *dbus* files


SVN revision: 48463
2010-04-30 08:38:08 +00:00
Mike Blumenkrantz a6c5618f69 finish char* to const char* conversion
SVN revision: 48461
2010-04-30 08:17:53 +00:00
Mike Blumenkrantz 5aa48ed402 fix more broken stringshare stuff from ehal memory migration, including incredible lines such as
char *udi = eina_stringshare_del(udi);
my bad, I really fudged the bucket on this one guys.


SVN revision: 48416
2010-04-29 10:17:41 +00:00
Mike Blumenkrantz 97da075d67 ukit integration taking way longer than expected, so I'm fixing all the stringshares now. should be safe to use. hooray.
SVN revision: 48414
2010-04-29 08:58:38 +00:00
Carsten Haitzler aadcae0b20 be lenient on uri';s allow boring full paths.
SVN revision: 48380
2010-04-28 03:30:48 +00:00
Sebastian Dransfeld 02b6e4db39 Ecore_Str.h -> Eina
SVN revision: 45740
2010-01-30 22:11:11 +00:00
Sebastian Dransfeld c197d0c8a0 Only do "selected" cb when single_click_delay is 0
If single_click_delay is activated, _e_fm2_mouse_1_handler will handle
"selected" cb

SVN revision: 45631
2010-01-27 19:33:53 +00:00
Cedric BAIL 2fab25c3bb * ecore: Move ecore_job inside ecore.
Patch from Albin "Lutin" Tonnerre <albin.tonnerre@gmail.com>.


SVN revision: 45570
2010-01-25 21:59:21 +00:00
Sebastian Dransfeld 1715880d6a inplace open should not care whether we use single click or not, this is handeled by click handler
SVN revision: 45434
2010-01-22 07:21:03 +00:00
Sebastian Dransfeld 5109c0f8ea oops
SVN revision: 45365
2010-01-20 21:15:07 +00:00
Sebastian Dransfeld db6819ae2a Results from gettext aren't static
SVN revision: 45362
2010-01-20 19:49:39 +00:00
Sebastian Dransfeld 1526c18cd5 Desktop is localized
SVN revision: 45345
2010-01-19 21:19:38 +00:00
Sebastian Dransfeld 1271fb625d Desktop is localized
SVN revision: 45343
2010-01-19 21:11:36 +00:00
Sebastian Dransfeld b7f399d159 make clang happy
SVN revision: 45153
2010-01-14 23:48:59 +00:00
Sebastian Dransfeld 44b1509345 Fix "selected" emit
Only emit "selected" on mouse up if we are in single click mode and no
modifiers is set.
Need to check for single_click first, so that inplace_open isn't called
on doubleclick.

Fixes ticket 375

SVN revision: 45130
2010-01-14 20:55:04 +00:00
Christopher Michael a245fb11cf e_utils - Use PATH_MAX, not 4096.
e_fm.c - An idler is not a timer. Use proper variable type. Formatting.



SVN revision: 44700
2009-12-23 21:29:36 +00:00
Carsten Haitzler 672d1de1e3 fix more void * arith!
SVN revision: 44560
2009-12-19 00:15:16 +00:00
Christopher Michael d246d2e257 Fix some formatting problems.
SVN revision: 43320
2009-10-27 21:50:21 +00:00
Hannes Janetzek f682217fba e_fm:
- show theme folder icons again
- remove mime fallback function.this is already handled by efreets mime fallback


SVN revision: 42473
2009-09-14 00:26:56 +00:00
Hannes Janetzek ab9c3d8468 e_fm: find theme defined mime icons
SVN revision: 42436
2009-09-12 11:22:58 +00:00
Hannes Janetzek 47415c096d return icon.list size if icon.icon size is not set
SVN revision: 42392
2009-09-10 21:02:09 +00:00
Hannes Janetzek df0d471509 - show edje thumbnails in wallpaper and themes dialog again.
- use 48px for fdo icons in flist
- #if 0 unused code


SVN revision: 42389
2009-09-10 20:48:52 +00:00
Gustavo Sverzut Barbieri 58925e0232 Update to match new EINA init/shutdown.
SVN revision: 42301
2009-09-06 22:23:04 +00:00
Christopher Michael 6ab63682dd Fix API Inconsistency in regards to e_widget_min_size_* . Renamed to
e_widget_size_min_* . This Large commit should fix everything in svn that is
using those functions.



SVN revision: 42152
2009-09-01 13:34:42 +00:00
Cedric BAIL f8c05999e4 * e: Cleanup use of Eina data structure.
Patch from Peter van de Werken <pwerken-e@a-eskwadraat.nl>.


SVN revision: 41916
2009-08-21 15:08:49 +00:00
semernin 5d24f7948e 1. New field in E_Fm2_Op_Registry_Entry named dialog, that hold pointer
to error, abort or overwrite dialogs.
2. Glyph in fileman_opinfo theme that show have or not operation linked
   filemanager window.
3. When click on operation on fileman_opinfo, then linked efm window
   raised or attention dialog if error exist.


SVN revision: 41229
2009-07-01 18:35:26 +00:00
semernin 2f76dd5d99 List of changes:
1. Gadcon sities:
      -- 'E_Gadcon_Site' enum to list all available sities,
      -- added 'is_site' callback for distinguish gadcon sities,
      -- 'e_gadcon_site_is_*' helpers written to use in gadget modules,
      -- gadcon config dialogs modified to show only gadgets that appropriate
         to selected gadcon site,
      -- all gadget modules updated for using new callback.
      
      When callback is not provided in module, then gadget can be used in 
      any gadcon site.
      
   2. Filemanager:
      -- added error icon to unexisting path dialog,
      -- added callback 'func.abort' to 'E_Fm2_Op_Registry_Entry' to specify
         abort operation sequence (if not provided, then operation is not
         cancelable),
      -- added parameter to 'e_fm2_op_registry_entry_add' to specify abort
         method on construct 'E_Fm2_Op_Registry_Entry' or make non-cancelable
         operation if this function is not provided,
      -- added 'e_fm2_operation_abort' call to cancel efm2 operation,
      -- added method '_e_fm2_operation_abort_internal' that represent efm2
         default handler of operation cancelling,
      -- 'done' and 'total' fields of 'E_Fm2_Op_Registry_Entry' changed to
         off_t type, also all message handlers modified to work with it
         (to show progress for large files correctly),
      -- improved file operation progress processing,
      -- added cancel button to operation progress gadget in filemanager window,
      -- added delete file glyph to operation progress gadget,
      -- improved status message for efm2 operation progress.

   3. Filemanager slave:
      -- fixed critical bug in message handling via stdin/stdout,
      -- fixed critical bug in removing task from list,
      -- improved 'E_FM_OP_ABORT' handling,
      -- fix rollback counting on moving files.

   4. Fileman_opinfo module:
      -- a new theme writed: status string and gadget for view operation status
         in summary and detail modes,
      -- summary mode: operation glyph, state message, progressbar, abort button,
      -- detail mode: all for summary + from filename, to filename,
      -- summary/detailed button works as trigger,
      -- added source of module theme and used images.
      
   4. Pathbar module:
      -- non-critical fix, just for safety.

   Also patch contains several minor updates to serve main task.


SVN revision: 41224
2009-06-29 14:38:03 +00:00
Gustavo Sverzut Barbieri 00aa72ef47 e_fm2: avoid invalid mouse-up.
Here's another patch I've made for efm2 to fix an issue that I've
often experienced using it (in Illume) with a touch-screen
device (Freerunner).  It often happens a very strange thing: I
try to finger-scroll a bottom icon (it must be on the latest row)
moving my thumb up, well... The the scroller doesn't scroll, but
wherever and whenever I release my finger, the selected icon is
executed!

I don't really know to what is this due (the touchscreen seems to
perform correctly by the way), but I've never been able to
replicate it using a mouse in my PC.

Anyway to fix this issue, that could be specific, I've used a
workaround that I think that could be applied for all: it
basically checks if the mouse has been released in the area where
the clicked icon is, before sending a "selected" callback.

It needs the previously attached
e_fm2-single-click-delay-support.patch to be applied correctly.

Going deeply into the real issue I've made some tests, and I got
that this seems mostly due to an evas issue (I figure), since the
e_fm2's scrollframe never sets the evas event flag to:
EVAS_EVENT_FLAG_ON_HOLD
(that would avoid the un-wanted click).
After some debugging there, I've also seen that in this very
particular buggy case the _e_smart_event_mouse_up() and
_e_smart_event_mouse_move() callback functions are never
called (so I figure that evas doesn't add the callbacks at all
for the scrollframe, while they are added in the e_fm2).

Let me know what you think about this... I thing that the Om
users would need a fix like this.

By: Marco Trevisan (Treviño)



SVN revision: 41129
2009-06-20 15:54:52 +00:00
Gustavo Sverzut Barbieri 5fb986a05b avoid unwanted clicks on touch-screen.
avoiding the un-wanted clicks with touch-screen devices (especially if
they aren't so precise); it basically allows to set a time delay to be
awaited (pressing over an icon) before sending a "selected" callback.

Thanks to this, it could be needed a longer pressure to select an item
in the file-manager; useful for embedded/touch-based systems.

By: Marco Trevisan (Treviño)



SVN revision: 41127
2009-06-20 15:49:54 +00:00
Gustavo Sverzut Barbieri 2af9f44b4f efm2 hal handling API - full changes.
1. Added E_FM_OP_EJECT command to e_fm_main. It unmounts volume
   before eject, if it necessary.
2. Added timeouts of mounting/unmounting/ejecting media, and
   it's moved to slave e_fm_main.c. Each timeout will generate
   *_MOUNT_ERROR, *_UNMOUNT_ERROR and *_EJECT_ERROR message.
3. Added auto mount on insert media and auto showing efm2 window
   on mount volume options to filemanager config.
4. Added mounted/unmounted glyphs to efm2 icons and track state
   code. Now each removable device have "M" glyph on icon if mounted
   and "U" when unmounted.
5. Added mount/unmount/eject commands to icon dropdown menu.
6. Russian translation of mew messages.
7. Other bugfixes and improvements for co-operation.

Now, efm2 contains all code to mount/umnount/eject removable media and
all code to provide corresponding user interface.
It can working independently from 'places' or co-operate with it.

By: Sergey Semernin



SVN revision: 40928
2009-06-07 00:00:41 +00:00
Gustavo Sverzut Barbieri 97de98a66e Make fallback to parent dir when no permissions.
Now, when "open dirs in place" is active and user haven't permission to
open dir, efm2 fallback to parent directory. Also other events (for ex.
delete)
on dirs opened in efm will cause go to it's parents in efm windows.

Patch to ticket #273.

By Sergey Semernin.



SVN revision: 40711
2009-05-17 21:30:15 +00:00
Carsten Haitzler 87842cb5e7 several patches from sergey etc.
SVN revision: 40668
2009-05-15 11:47:28 +00:00
Carsten Haitzler 4fa7de4c9c 1. fm rename in-place patch. ok for now - probably should fix it up later
2. config module fix



SVN revision: 40508
2009-05-05 14:27:28 +00:00
Iván Briano 9dde4b37b2 White spaces
SVN revision: 40240
2009-04-19 20:18:36 +00:00
Gustavo Sverzut Barbieri 9cc29ad360 fix bug when there is no file extension.
This was spotted by a segmentation faults on systems where sprintf()
don't handle NULL as "%s" (Solaris, BSDs), but it makes no sense to
lookup "*(null)" as extension on Linux either.

Reported by: mcalamell



SVN revision: 40120
2009-04-16 22:17:50 +00:00
Gustavo Sverzut Barbieri e0040cefb9 major cleanup of path creation to $DATADIR and $HOME/.e/e
This cleanup replaces snprintf() usage with specific calls, they have
the benefit of being cleaner (so easier to grep), typing less and also
marginal speed up compared to the other (specially concat_static),
although those are rarely used in critical paths.

I'm testing it for some time and seems to not break anything, but let
me know of any problem. If you can review the patch and try to spot
incorrect names, please do.




SVN revision: 40014
2009-04-13 14:56:38 +00:00
Gustavo Sverzut Barbieri 619ed37fed eina_stringshare_replace() gets in!
I was replicating this code in many places, it should go into eina itself.

It's the right way to change strings that you don't know are
stringshared before, since it will first add a reference and then
remove, making it impossible to have references to go 0 and string
being released before adding new references, fixing the following
possible problem:

   x = eina_stringshare_add("x");
   replace(x, x);

   then:
   incorrect_replace(const char **b, const char *a) {
      eina_stringshare_del(*b); /* reference gets to 0 */
      eina_stringshare_add(a); /* BUG!!! */
      *b = a;
   }




SVN revision: 39903
2009-04-08 18:25:02 +00:00
Davide Andreoli ffd353ac39 * E_Fwin:
Ctrl+w -> close the window
Ctrl+a -> select all



SVN revision: 39865
2009-04-05 00:26:31 +00:00
Viktor Kojouharov 3805af7fcc files can now be dragged over destination files (not just subdirs). In that case, the source file will be sent to the directory that houses the dest file. No more seggies
SVN revision: 39829
2009-04-01 17:03:09 +00:00
Viktor Kojouharov e33ba2d5f0 ctrl+n duplicates the current fwin
SVN revision: 39826
2009-04-01 08:28:21 +00:00
Davide Andreoli 0f1775c8e8 Attach the fm object pointer to the menu generated from the efm.
So you can read the fm object if you hook into the menu.



SVN revision: 39803
2009-03-30 14:31:54 +00:00
Davide Andreoli 1bfc6fd633 * Better dialogs (rename, overwrite etc) for efm
SVN revision: 39788
2009-03-29 01:24:11 +00:00
Davide Andreoli 44883d6cf0 * e_fm_op_registry : rename duration to eta
* 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
2009-03-29 00:26:43 +00:00
Carsten Haitzler 2e36885899 nuke segv in fm and leaks in menus.
SVN revision: 39644
2009-03-23 09:36:11 +00:00
Gustavo Sverzut Barbieri 3a79d6a21e fix drag&drop of multiple files and reduce variables scopes.
SVN revision: 39568
2009-03-19 01:45:58 +00:00
Gustavo Sverzut Barbieri b382153c0f move loop invariant sprintf() outside loop.
SVN revision: 39567
2009-03-19 00:50:35 +00:00
Gustavo Sverzut Barbieri 9a882b5124 enjoy stringshare benefits.
SVN revision: 39566
2009-03-19 00:36:12 +00:00