Commit Graph

305 Commits

Author SHA1 Message Date
Rafael Fonseca 37e9d6c757 Use default theme for gengrid items.
Some of the gengrid items from ephoto were merged into elm default theme.

SVN revision: 54696
2010-11-18 18:10:21 +00:00
Viktor Kojouharov 7a5d4c6437 loop the list when navigating
SVN revision: 54544
2010-11-14 02:20:57 +00:00
Viktor Kojouharov ae7ffbd809 allow for the commonly used space and backspace for navigation as well
SVN revision: 54543
2010-11-14 02:19:10 +00:00
Viktor Kojouharov 0d37c8668e use the entries, rather than the grid items to navigate in flow mode
SVN revision: 54542
2010-11-14 02:14:05 +00:00
Viktor Kojouharov a9a783385d Move the entry list building to the main file, since it is used by both the thumb and flow views.
Inform the relevant parties when the list starts and stops getting populated, and when an entry is created, via ecore events.
Remove the pending path stuff from the thumb browser, as it is not for it.
Remove the ability to set the currently viewed file by path alone, always rely on an entry.
Correctly set the disable states on the navigation toolbar buttons when starting ephoto directly in flow mode

SVN revision: 54541
2010-11-14 01:51:16 +00:00
Cedric BAIL 6f67f63c79 * eio: fix API to match the rest of the EFL API.
SVN revision: 54504
2010-11-12 14:08:01 +00:00
Cedric BAIL 8c554a6ea8 * ephoto: use eio_file_stat_ls.
SVN revision: 54107
2010-11-02 17:08:49 +00:00
Cedric BAIL edd9068f2b * eina: remove dirent so apps don't rely on non portable code.
SVN revision: 54103
2010-11-02 15:11:05 +00:00
Gustavo Sverzut Barbieri c4cf3f9be4 always force focus to parent.
viewer object (child) may have the focus and it would die, then there
is no focused object anymore (we should have a way to revert focus to
parent when children die).

SVN revision: 54058
2010-10-31 02:56:13 +00:00
Gustavo Sverzut Barbieri 89aa7a1991 annoyances--: proper zoom changes, add auto-fit.
after actually using it to browse a directory of pictures I realized
auto-fit is something we need, and need it by default.

as we auto-fit, the zoom range makes no sense anymore... and zoom
should be percentual changes, not absolute. So now zoom increments and
decrements of 20% of the previous value, and there is no lower/upper
limits anymore.

SVN revision: 54057
2010-10-31 02:50:05 +00:00
Gustavo Sverzut Barbieri 9d02b17892 annoyances--: comment rotation/flip as it was broken.
Raster had his word "it is broken that way, either fix it or remove"
and thus removed it is as fixing it properly takes much more time than
I have now.

SVN revision: 54056
2010-10-31 02:04:36 +00:00
Carsten Haitzler d113da0a6c use new type member. dont depend on bsd extensions.
SVN revision: 54017
2010-10-30 05:57:08 +00:00
Cedric BAIL 063248da8f * eio: break Eio error callback API to match the rest of the API.
SVN revision: 53986
2010-10-29 12:36:43 +00:00
Bruno Dilly 11487fbdb5 Fix elm_toolbar usage on several projects
SVN revision: 53896
2010-10-26 10:34:07 +00:00
titan c589ea128f Make sure to leave fullscreen mode when exiting the slideshow.
SVN revision: 53838
2010-10-24 19:10:20 +00:00
Tiago Rezende Campos Falcao 801c22f21c Force focus to scroller in flow mode.
The back action can be did with keybindings.

SVN revision: 53737
2010-10-21 19:21:15 +00:00
Tiago Rezende Campos Falcao 99aa09f9db Remove focus hard management.
Delay windows show to after criation and show of sub-objects. So, when
show windows, it give focus correctly.

SVN revision: 53736
2010-10-21 19:21:13 +00:00
Sebastian Dransfeld a1fddb6891 Only check hash if it exists
SVN revision: 53692
2010-10-20 20:46:53 +00:00
Tiago Rezende Campos Falcao 40b9a71963 Fix focus in flow mode.
You only can give focus to visible objects, hidden objects are

SVN revision: 53655
2010-10-20 12:08:42 +00:00
Tiago Rezende Campos Falcao 3e1a7b64eb Do nothing when used cancel button
SVN revision: 53654
2010-10-20 12:08:39 +00:00
Lucas De Marchi ab56887638 Fix typo
opt needs some love though

SVN revision: 53465
2010-10-15 18:12:29 +00:00
Leandro Pereira efe017db8b [Ephoto] Update toolbar stuff to suit recent API changes
SVN revision: 53464
2010-10-15 17:54:28 +00:00
Tiago Rezende Campos Falcao ef5dd761e0 Elm_Layout isn't broken
SVN revision: 53463
2010-10-15 17:40:07 +00:00
Tiago Rezende Campos Falcao 0072df5d63 If use Ethumb_Client, include it
SVN revision: 53462
2010-10-15 17:40:03 +00:00
Gustavo Sverzut Barbieri 73a50e088b use elm goodies!
use elm_layout_box_append() + elm_fileselector_entry_add() to choose

SVN revision: 53386
2010-10-14 02:37:37 +00:00
Gustavo Sverzut Barbieri 8679562a81 and work nicely with empty directories
SVN revision: 53381
2010-10-13 22:32:41 +00:00
Gustavo Sverzut Barbieri 4802d3e2ef queue items to process from animators, save cpu and less flickering.
just add items from an animator so we give time to have a good queue
and do the insert in a batch. It will change the grid population less
often, and will trigger the grid recalc less often as well.

SVN revision: 53380
2010-10-13 22:28:23 +00:00
Gustavo Sverzut Barbieri c847e90429 init eio, as we use it
SVN revision: 53343
2010-10-13 06:15:16 +00:00
Gustavo Sverzut Barbieri dae342bc7d damn async things, they're always more complex than what you want.
in few cases we could quickly change directories and views would still
be populating, then they could access dt->entry
(ephoto_directory_thumb.c), so we need notifiers to know it is gone
and not mess with it any further.

Then ephoto_entry_free_listener_add() is born, added it to
flow_browser and slideshow for the sake of it... it shouldn't be

SVN revision: 53341
2010-10-13 06:11:06 +00:00
Gustavo Sverzut Barbieri 8756234b66 comment this as it seems to not play well with threads.
probably this is an eina issue with last optimizations from cedric,
but I'm commenting these out for now. (if efreet_mime is no-go from
threads, must remove it from enjoy as well).

SVN revision: 53339
2010-10-13 05:23:31 +00:00
Gustavo Sverzut Barbieri b4f63379b5 do not show up when we're at /
SVN revision: 53338
2010-10-13 05:21:45 +00:00
Gustavo Sverzut Barbieri 8bd148fa72 eio_file_cancel() is async and will run on future main loop iteration.
damn beast hard to find, but i guess ephoto is now ready (/me hides...)

SVN revision: 53337
2010-10-13 05:06:18 +00:00
Gustavo Sverzut Barbieri feba790912 some less valgrind errors.
I guess I've spotted the main problem with eio usage, will commit in
another revision.

SVN revision: 53335
2010-10-13 03:24:22 +00:00
Gustavo Sverzut Barbieri f5e062c676 handle no parameter without previous directory.
SVN revision: 53321
2010-10-12 23:46:36 +00:00
Gustavo Sverzut Barbieri 81d47b1344 ephoto is mostly ready again!
Well, at least that was what I had time and stamina to do. Please join
the development with your ideas and requirements.

The toolbar is now placed on top, because default.edc (from
elementary) says so. We better use elementary's profile to define the
theme to use, and a theme could have it at the bottom (mobiles?).

I've added all options to toolbar, which makes it very wide on single
image viewer. We'll later introduce toolbar item "visibility priority"
to auto-hide items and add a "More" menu if the elementary's profile
says so, other options will be to make it scrollable (as it is now).

EXIF rotation support is not right in my opinion. We're using map to
rotate, but it is not doing fine, as I said in another bug. We should
have code to request evas to load the image rotated, then we re-load
the image and it should work better (need to check how that would work
with region load from JPEG, used by elm_photocam).

Preferences are out as I ran out of time.

SVN revision: 53319
2010-10-12 22:54:20 +00:00
Gustavo Sverzut Barbieri ad73446df7 support more exif orientation modes.
Raster, this exposes some problems with map as well. At least flipping
seems to not work properly sometimes. In my case I just use Shift+[ to
flip horizontally and it does not work.

SVN revision: 53312
2010-10-12 18:16:42 +00:00
Gustavo Sverzut Barbieri d74d0ff7c9 alt-up for thumb browser, make orient get visible outside.
I tried to apply the orient rotation using map on the elm_photo, but
it does not work :-( If you know how to fix it, take a look.

SVN revision: 53311
2010-10-12 17:26:23 +00:00
Gustavo Sverzut Barbieri 3b4f4d0f25 remove error message, fix message and add debug.
SVN revision: 53294
2010-10-12 05:19:56 +00:00
Gustavo Sverzut Barbieri 717c438a0e ephoto autotools overhaul.
* added Vincent recommended warnings (ie: -Wshadow) and also -Wextra;
 * uses ac_attribute.m4 to define __UNUSED__;
 * uses -Wl,--as-needed
 * uses -fvisibility=hidden by default, if supported
 * uses -ffunction-sections -fdata-sections + -Wl,--gc-sections
 * added gettext (not tested yet, but should work)
 * added quicklaunch support (not tested yet, but should work)
 * make it pass make distcheck

with the optimization flags, on my 32bits machine ephoto is amazingly
44Kb binary! Of course it loads super-fast even without quicklaunch,
amazing what we can do with 44kb binary + 188kb theme (mostly about
images I'm shipping in 128x128 + 256x256 + 512x512 and other images
that should be in elementary's theme).

SVN revision: 53293
2010-10-12 04:58:04 +00:00
Gustavo Sverzut Barbieri 5064e7bf6e remember_directory is not an option anymore.
useless to have it as an option as user may already override with
command line what to show.

SVN revision: 53283
2010-10-12 03:44:17 +00:00
Gustavo Sverzut Barbieri 770baf199e slideshow is back.
toolbars still missing, will return them back tomorrow.

SVN revision: 53281
2010-10-12 03:40:14 +00:00
Gustavo Sverzut Barbieri e5c722abb2 insert thumbnails sorted.
SVN revision: 53255
2010-10-11 02:54:49 +00:00
Gustavo Sverzut Barbieri c0537216c5 load orient from jpeg, remove former code that was ifdef'ed.
maybe the code is complaining is complaining too loud of lack of exif,
we can change that later if required.

remove the rotation animation as the case 270->0 is too confusing! it
would need some logic to rotate 270->360 then make it 0.

SVN revision: 53254
2010-10-11 02:30:51 +00:00
Gustavo Sverzut Barbieri b44a686b53 one more day of work on ephoto, still not complete.
flow browser (why that name?!) is back, with the my traditional
combination of 255,0 in rgb colored buttons in edje.

tomorrow will work on slideshow and make it work.

NOTE: ProFUSION team will work on a solution to have elm_toolbar +
elm_menu to be good and provide what we have in eve/enjoy in a more
generic way without thousand lines of macros in EDC. The goal is to
have configurable implementation that would provide some UI on desktop
and another on embedded, also showing buttons as we have space, and
hidding them with an automatic "more" entry if there is no space for
all items. That should improve eve, enjoy, ephoto and possibly others.

SVN revision: 53250
2010-10-11 01:10:27 +00:00
Gustavo Sverzut Barbieri 47da8cd526 zoom actions, still barebones.
I was about to move to efenniht theme, but it will be some work I'd
not be able to finish in time... given that we'll have enjoy, eve,
envision and ephoto using the same things, it is time to consider a
better replicable solution.

SVN revision: 53240
2010-10-10 18:57:48 +00:00
Gustavo Sverzut Barbieri 9652a108bf ouch, refactor part 2 -- less is more, so get nothing ;-)
okay, still yet another partial code, it's far from ready, don't even
checkout until you're ready to code.

preferences, flow_browser, slideshow are temporarily gone.

still no toolbar in main window, layout redone using EXTERNAL... when
it go back, it will be in the same form as eve/enjoy.

SVN revision: 53238
2010-10-10 01:13:53 +00:00
Gustavo Sverzut Barbieri e21422bf65 ephoto core simplification - part 1 (UNFINISHED!!!!)
I'm rewriting parts of ephoto to simplify it, one of the things is to
avoid lots of nesting of layouts to get a simple preview

So far just the thumb directory is done to the point it shows the
contents of a directory, it will do nothing on selection and
clicks. There is no toolbar either, as this is going to be replaced
later on.

EFL bugs so far:
 * eio_file_cancel() is not playing nice with ecore_pipe, with errors like: "ecore_pipe.c:517 _ecore_pipe_read() An unhandled error (ret: -1 errno: 9)occurred while reading from the pipe the length"

 * evas/edje map is broken WRT clipping! if I have map { on: 1;
   rotation.z: 10;} and this part is clipped to some other part, the
   clipper will be ignored!

Sorry, but I couldn't finish it now, trying to do it later today and
tomorrow. I still need to add the elm_genlist_item_prepend(),
elm_genlist_item_insert_before() and elm_genlist_item_insert_after()
to get the sorted insert to work.

SVN revision: 53237
2010-10-09 19:13:35 +00:00
Gustavo Sverzut Barbieri 73d91bfa90 usual paradigm is vertical scroll, let's stick to it.
SVN revision: 53226
2010-10-09 01:45:32 +00:00
Gustavo Sverzut Barbieri 20df19562f use noframe style... yeah! get ride of that annoying border inside the border!
SVN revision: 53222
2010-10-08 23:18:41 +00:00
Gustavo Sverzut Barbieri 840b2e8574 faster and better: png or jpeg, crop.
if source file is a jpeg, then speed up and generate thumbnails in
format "JPEG" that are smaller and faster to load.

also define the aspect to be cropped rather than keep aspect as we're
showing the images in a fixed square. The aspect one would be good if
we did not use a grid, rather a flow layout.

SVN revision: 53218
2010-10-08 23:03:22 +00:00
Gustavo Sverzut Barbieri e3a1481bb9 what about generating thumbnails that match the expected view size?
now generating thumbnails at 128, 256 and 512, the generation is
delayed to avoid unnecessary work for ethumbd.

SVN revision: 53217
2010-10-08 22:48:12 +00:00
Gustavo Sverzut Barbieri 2fd24ddbac hack not needed anymore.
SVN revision: 53213
2010-10-08 21:47:40 +00:00
Gustavo Sverzut Barbieri e434b9aaee refactor, improve sizing of icons.
use super-duper-nice edje features to choose image based on the
current object size and provide icons at 128, 256 and 512 so we're
always high quality.

SVN revision: 53212
2010-10-08 21:43:57 +00:00
Gustavo Sverzut Barbieri dc2f3c47c9 avoid directories starting with '.' and faster check for directory.
SVN revision: 53210
2010-10-08 20:31:04 +00:00
Gustavo Sverzut Barbieri ccaa92a949 better min/max values.
SVN revision: 53209
2010-10-08 20:25:18 +00:00
Gustavo Sverzut Barbieri 50c67f7ad6 simplify, move thumb count to theme, min limit to contents.
If we used such a large border with small item sizes, the content size
would be zero and thus icons did turn invisible. Limit that to 16x16.

"thumbs" in group will say how many thumbnails are desired, instead of
hardcoding it to 3.

countless code simplifications.

SVN revision: 53207
2010-10-08 20:21:29 +00:00
Gustavo Sverzut Barbieri 5637a4879f oops, remaining shutdowns that should die.
SVN revision: 53201
2010-10-08 19:48:32 +00:00
Gustavo Sverzut Barbieri 2e88dacb27 whitespace cleanup, log domain to lowercase.
SVN revision: 53200
2010-10-08 19:04:34 +00:00
Gustavo Sverzut Barbieri 844d8b6529 simplify, just init efreet_mime once, etc.
make code simpler, just init efreet_mime at startup, just need ethumb
once as well.

SVN revision: 53199
2010-10-08 19:03:21 +00:00
Gustavo Sverzut Barbieri cc899e3325 couple of minor improvements to ephoto.
* fix a bit of coding style (damn, it's totally off with SVN coding style!)

 * save basename to avoid calculating it over and over again.

 * ignore hidden files and folders (those that start with ".")

 * rename "top" to "Up" as we just go one level.

 * add TODO that requires adding eio_file_ls_direct()... the current
   version is not that useful, we really could use dirent, basename
   and lengths while filtering.

 * add TODO to speed up matches of JPG, PNG, and like... these will
   account for most of the files we browse, thus they should be fast
   and not rely on efreet (which may not be that good to use from
   threads... if it is, then it's more expensive as we need to lock)

SVN revision: 53198
2010-10-08 18:51:19 +00:00
Nicolas Aguirre f83df173c9 Add missing file
SVN revision: 52999
2010-10-03 14:45:53 +00:00
Nicolas Aguirre 53a83a021f Apply Otavio Pontes patch about displaying directories and modify it to display thumbnails when photos are present into this directory.
Author: Otavio Pontes <>
Date:   Mon Sep 27 15:26:55 2010 -0300

    Displaying directories in thumb browser
    It is possible also to open an directory to see images in it.

SVN revision: 52994
2010-10-03 09:50:00 +00:00
Viktor Kojouharov 1a73a71d36 add an option to sort the images before displaying them.
SVN revision: 52989
2010-10-03 00:13:02 +00:00
Nicolas Aguirre 1c512b83f8 Avoid photocam zoom effect on picture load.
SVN revision: 52956
2010-10-01 18:06:05 +00:00
Cedric BAIL 7a3e11d737 * ephoto: call exif only on jpeg file.
SVN revision: 52927
2010-09-30 16:23:54 +00:00
Nicolas Aguirre 153e9d89d6 commit c0d355a3438ba4e9c731d190fa292c0eb9acde23
Author: Otavio Pontes <>
Date:   Mon Sep 27 11:32:34 2010 -0300

    Fixing some bugs in image exibition.
    Using photocan to show png files in flow browser and using elm_image
    instead of elm_bg to display thumbs in thumb_browser. elm_bg was
    creating a strange border in images with white(or transparent)

SVN revision: 52902
2010-09-29 17:57:43 +00:00
Otavio Pontes ad063ce60e From: Otavio Pontes <>
Date: Thu, 23 Sep 2010 16:39:58 -0300
Subject: [PATCH 4/5] Adding new keyboard shortcuts to ephoto.

Also adds:
 - zoom in/out function to flow_browser and buttons in toolbar
for zoom and rotation.
 - Fullscreen mode to slideshow.

SVN revision: 52899
2010-09-29 17:34:35 +00:00
Nicolas Aguirre 4da0ca1b85 The second patch fixes on bug related to an invalid memory access that was
causing segmentation fault in my computer (valgrind was complaining
about it too).

patch from Otávio Pontes.

SVN revision: 52898
2010-09-29 17:09:42 +00:00
Nicolas Aguirre 7e44cd9256 First patch fixes one warning about integer comparison.
patch from Otávio Pontes

SVN revision: 52897
2010-09-29 17:06:32 +00:00
Viktor Kojouharov d9c7cfd80e add the external editor support (currently by pressing "e" in the flow browser)
SVN revision: 52820
2010-09-27 22:02:10 +00:00
Viktor Kojouharov 5d473ea800 fix a few segfaults that happened on a specific computer
SVN revision: 52483
2010-09-20 09:06:53 +00:00
titan e2fed73485 Fix toolbar items.
SVN revision: 52481
2010-09-19 22:32:56 +00:00
titan e5cee3de65 Don't swallow the toolbar twice.
SVN revision: 52479
2010-09-19 21:59:05 +00:00
titan 19243a1ae1 Swallow the toolbar in the correct place.
SVN revision: 52478
2010-09-19 21:54:58 +00:00
Viktor Kojouharov ca05627df0 Preferences dialog. Users can change the slideshow parameters, and tell ephoto to start from the last remembered dir, if it was started with no arguments
SVN revision: 52464
2010-09-19 15:30:36 +00:00
titan 574483bb47 Remove a lot of warnings.
SVN revision: 52424
2010-09-18 20:18:43 +00:00
Viktor Kojouharov 35c4b294bd optional libexif support.
initial rotation support with edje map (the swallow still needs to be refitted in the available space after the rotation)

SVN revision: 52238
2010-09-14 08:35:42 +00:00
Viktor Kojouharov 1dcf8aef39 always save the config on exit
SVN revision: 52236
2010-09-14 07:02:04 +00:00
Viktor Kojouharov cbdc82096b limit thumb scrolling to the horizontal axis, since it doesn't overflow vertically
SVN revision: 52202
2010-09-13 22:27:00 +00:00
Viktor Kojouharov cdb8b51c3f eet configuration. only stores the slider value for now. eina log domain macros
SVN revision: 52201
2010-09-13 22:24:59 +00:00
Nicolas Aguirre 368ed28cce remove debug messages and formatting
SVN revision: 52194
2010-09-13 17:36:16 +00:00
Nicolas Aguirre bd1ed51ead Add a callback when a new directory is selected : "directory,changed".
SVN revision: 52193
2010-09-13 17:02:32 +00:00
Nicolas Aguirre ea18ee503b Use evas_smart objects for flow and thumb browsers, we can now use them as regular evas smart objects with evas_object_show/del/hide ...
SVN revision: 52192
2010-09-13 16:40:33 +00:00
Nicolas Aguirre a13304ff1d Change ephoto to use an edje layout instead of elm boxes.
SVN revision: 52191
2010-09-13 16:29:39 +00:00
Cedric BAIL fc3497295d * ephoto: no need to destroy window at that point.
SVN revision: 52137
2010-09-10 12:30:59 +00:00
Cedric BAIL 11ee1079e1 * ephoto: some cleanup.
SVN revision: 51943
2010-09-07 13:12:08 +00:00
Cedric BAIL 24c98b891b * ephoto: fix use of unitialized data.
SVN revision: 51659
2010-08-26 13:42:38 +00:00
titan a8a45932f3 Move the toolbar to the bottom for consistency and fix segv when clicking View Large while no pictures are populated.
SVN revision: 51649
2010-08-26 00:40:31 +00:00
Lucas De Marchi 182fd84af4 Convert (hopefully) all comparisons to NULL
Apply badzero.cocci, badnull.coci and badnull2.cocci

This should convert all cases where there's a comparison to NULL to simpler
forms. This patch applies the following transformations:

code before patch               ||code after patch

return a == NULL;                 return !a;

return a != NULL;                 return !!a;

func(a == NULL);                  func(!a);

func(a != NULL);                  func(!!a);

b = a == NULL;                    b = !a;

b = a != NULL;                    b = !!a;

b = a == NULL ? c : d;            b = !a ? c : d;

b = a != NULL ? c : d;            b = a ? c : d;

other cases:

a == NULL                         !a
a != NULL                         a

SVN revision: 51487
2010-08-21 13:52:25 +00:00
Lucas De Marchi c3a6049d53 Fix wrong usages of malloc, calloc and E_NEW
Patch by bad-alloc.cocci

SVN revision: 50828
2010-08-05 00:50:43 +00:00
titan 133c3b83e0 Whoops. Fix for real.
SVN revision: 50776
2010-08-03 17:57:10 +00:00
titan 98bb42c6a2 Make changes to match api changes in eio.
SVN revision: 50772
2010-08-03 17:14:54 +00:00
titan 82f69119b6 Add slideshow to ephoto.. It uses elm_slideshow, and this is likely temporary, because in the f uture I am going to do some more extensive slideshow stuff. I'm not happy with this, it seems pretty slow on transitions(I'll take a look at speeding things up), but it will do for now.
SVN revision: 50569
2010-07-28 02:06:03 +00:00
Cedric BAIL 7f75caca3a * eio: Add an error callback, some docs and a small README.
SVN revision: 50446
2010-07-23 11:00:44 +00:00
Cedric BAIL e2c35a285b * ephoto: use eio to simplify and make a small nice example.
SVN revision: 50432
2010-07-22 16:15:16 +00:00
Cedric BAIL a1af3e8605 * ephoto: simplify code and make it easy to add new keys.
SVN revision: 50430
2010-07-22 16:09:31 +00:00
titan a6e087843a Allow you to browse through the large images using arrow keys, left and right.
SVN revision: 50423
2010-07-21 23:40:49 +00:00
titan 56d4da9fd3 Fix ephoto's gengrid theme so photos show again.
SVN revision: 50261
2010-07-14 23:23:54 +00:00
titan f1a200c4c3 Add the ability to specify a directory or file to run ephoto with.
SVN revision: 50176
2010-07-10 21:52:14 +00:00
titan f4d5a08859 Decided I did not like the expandable file selector.
SVN revision: 50134
2010-07-08 22:26:45 +00:00