EFL 1.7 svn doobies
[profile/ivi/ethumb.git] / TODO
1  * documentation (based on python bindings)
2    * Ethumb (adapt most bits based on Ethumb_Client)
3    * Ethumb_Client (mostly done)
4    * finish ethumb_client tutorial
5
6  * memory handling:
7    * zero pointer parameters before failing on SAFETY macros (file_get, etc)
8
9  * ethumb_object:
10    smart object (ethumb_object_add())that given a file_set() will
11    automatically use Ethumb_Client to check if thumbnail exists or
12    generate a new one, do evas_object_image_preload() and then show
13    the object.
14
15    To save memory and avoid thousands of Ethumb_Client, this should be
16    shared among all Evas_Object that take a reference when object is
17    created, releasing the reference after thumbnail is generated. When
18    the last user releases it, start a timer to disconnect in X seconds
19    (5-10 seconds is good enough).
20
21    Similar to Ethumb_Client, it should expose all Ethumb properties,
22    they would be cached locally and on smart_calculate() they should
23    be dispatched to server for a new thumbnail if source file pat set.
24
25  * elm_thumbnail:
26    using ethumb_object, this can be based on E17 ethumb object that
27    uses edje and can have the theme set, so on load a nice animation
28    can happen, animate a throbber while it generates, etc. It may
29    return ethumb_object (Evas_Object) if user wants to set fancy
30    parameters.
31
32  * unit tests, be them in C or Python, covering:
33    * thumbnail generation respect parameters (size, format...)
34    * respect fdo standards (hash, location, etc, uri with spaces...)
35    * server died recovery, just add timeout and kill server before expires
36
37  * examples:
38    * error handling, including reconnection.