efl/legacy/ethumb/TODO

39 lines
1.6 KiB
Plaintext

* documentation (based on python bindings)
* Ethumb (adapt most bits based on Ethumb_Client)
* Ethumb_Client (mostly done)
* finish ethumb_client tutorial
* memory handling:
* zero pointer parameters before failing on SAFETY macros (file_get, etc)
* ethumb_object:
smart object (ethumb_object_add())that given a file_set() will
automatically use Ethumb_Client to check if thumbnail exists or
generate a new one, do evas_object_image_preload() and then show
the object.
To save memory and avoid thousands of Ethumb_Client, this should be
shared among all Evas_Object that take a reference when object is
created, releasing the reference after thumbnail is generated. When
the last user releases it, start a timer to disconnect in X seconds
(5-10 seconds is good enough).
Similar to Ethumb_Client, it should expose all Ethumb properties,
they would be cached locally and on smart_calculate() they should
be dispatched to server for a new thumbnail if source file pat set.
* elm_thumbnail:
using ethumb_object, this can be based on E17 ethumb object that
uses edje and can have the theme set, so on load a nice animation
can happen, animate a throbber while it generates, etc. It may
return ethumb_object (Evas_Object) if user wants to set fancy
parameters.
* unit tests, be them in C or Python, covering:
* thumbnail generation respect parameters (size, format...)
* respect fdo standards (hash, location, etc, uri with spaces...)
* server died recovery, just add timeout and kill server before expires
* examples:
* error handling, including reconnection.