Evas: Iterating the pixmap formats from xcb_setup can be expensive,
[framework/uifw/evas.git] / ChangeLog
1 2011-01-29  Carsten Haitzler (The Rasterman)
2
3         1.0.0 release
4
5 2011-01-29  Carsten Haitzler (The Rasterman)
6
7         * Enabled mempool for object allocation
8         * Allow shorter pre-render handler for rect objects if they are
9           invisible
10
11 2011-01-30  Tom Hacohen (TAsn)
12
13         * It's actually a merge from my local branch upstream so this
14           includes many changes.
15         * Fixed cursor/selection handling with BiDi text.
16         * Fixed many BiDi issues in both textblock and text objects.
17         * Cleaned up textblock and font engine a lot.
18         * Added auto-alignment to tetxblock and text objects.
19         * Added mixedwrap (word wrap, and if a word is too big cut it) support
20           to textblock.
21         * Renamed a lot of stuff.
22         * Made textblock faster, mostly by saving item sizes and caching
23           layout items when text doesn't change.
24         * Added harfbuzz (ot layouting/shaping and etc) support.
25         * Currently you need to set the env var EVAS_USE_OT to '1' in order to
26           use OT support (harfbuzz) that will change soon.
27         * More code cleanups will be coming in the future. This shipment is
28           mostly to get code review started (and also make sure I don't have a
29           merging hell later on).
30
31 2011-01-31  ChunEon Park
32
33         * Fix lurking free bug in key grabs.
34
35
36 2011-02-01  Carsten Haitzler (The Rasterman)
37
38         * Added WBMP loader thanks to Samsung.
39
40 2011-02-01  Tom Hacohen (TAsn)
41
42         * Started using string objects instead of strings in most of the
43           font engine (everywhere except draw). Haven't removed the
44           paramteres yet, but did mark them as UNUSED. Removing them will be
45           part of a future change.
46         * Removed run-time OT toggling support, OT is now fast, no need for that.
47         * Renamed all of the intl_props->text_props (because it really
48           changed purpose
49         * Fixed spliting/merging of text_props to be fast and good, not
50           hacky and complex like before.
51         * Added "mirrored mode" to table object.
52
53 2011-02-07 Brett Nash (nash@nash.id.au)
54
55         * Proxy Objects; Now you can set an image to have a 'source' of
56           another object.  The proxy will display the object as well.  Proxy
57           objects should be mostly complete.
58         * Proxy objects should be complete; please report and bugs to me.
59         * Partial support for arbitrary clipping.  Final support coming soon
60           (with some other changes).  You can set most objects as a clip on
61           other objects.  This will use the alpha channel of the object as a
62           clip on the object.  This is still buggy.
63         * CLIPPING DISABLED AND REMOVED DUE TO BEING TOO BUGGY AND INCOMPLETE *
64         * Software support for arbitrary maps.  So you can use any size map
65           (not just 4 points) for maps.  Once again this is a little buggy.
66         * ARBITRARY MAPS DISABLED AND REMOVED DUE TO BEING TOO BUGGY AND INCOMPLETE *
67
68 2011-02-02  Carsten Haitzler (The Rasterman)
69
70         * GL engine gets a speculative texture cache to shadow the
71           normal image cache to avoid excess texture uploads when
72           cycling images often. Should improve performance in some
73           cases.
74
75 2011-02-12  Carsten Haitzler (The Rasterman)
76
77         * Fix "ridiculous scaling size" bug, where scaling images to
78           sizes like 1 billion pixels high or wide caused evas to try
79           allocate scaletables on the stack and the stack just couldn't
80           handle it. Now it only allocates a table for the visible
81           region which will always be sane, and even has insanity
82           checks now. At worst you'll get an unrendered image if the
83           values are silly and some slowness. No crashes.
84
85 2011-02-13  Brett Nash (nash@nash.id.au)
86
87         * Fix crash when deleting proxies.  This _technically_ breaks
88           evas engines which realloc engine data when a border is set.
89           Practically no engines do this.  There is a comment there (and
90           if the engine does that border set won't work), in which case
91           a more complex work-around is possible.
92
93 2011-02-14  Tom Hacohen (TAsn)
94
95         * Added a newline character mode API to textblock. This lets us set
96           the newline behavior to either normal (i.e only break a line, not
97           a paragraph) to "behave as a PS" mode. Default is the latter.
98           The former is the more correct approach but I guess everything else
99           is in e is not yet ready to use it. These API should help with the
100           transition.
101         * A lot of textblock speed improvements and reduced memory footprint.
102
103 2011-02-16  Jeonghyun Yun
104
105         * Patch from Jeonghyun Yun <jh0506.yun@samsung.com> that
106           improves BMP loader support to handle malformed RLE BMP's that
107           encode more pixels per line than the image actuall has.
108
109 2011-02-16  Tom Hacohen (TAsn)
110
111         * Dropped Evas_Encoding and moved to use Eina_unicode_utf8 instead.
112         * Started showing the unicode replacement character instead of missing
113           glyphs.
114
115 2011-02-20  Carsten Haitzler (The Rasterman)
116
117         * Fix bug in font string parsing that can result in a crash if a
118           font element is long enough.
119         * Fix convert rgba8888 -> a8 bug so it wont crash.
120
121 2011-02-21  Carsten Haitzler (The Rasterman)
122
123         * Fixed bug with memory access of old utf8 string when
124           comparing prev and cur state with text obj.
125
126 2011-02-22  Tom Hacohen (TAsn)
127
128         * Fixed a bug in textblock cursor position with empty textblocks.
129
130 2011-02-22  Carsten Haitzler (The Rasterman)
131
132         * Fixed bug smart calc array where it'd nuke the array when nested
133           process calls happen and leave some objects uncalculated, but
134           removed from the array and marked as needing a calc thus never
135           getting back into the array.
136
137 2011-02-27  Vincent Torri
138
139         * Fixed static linking of the bmp, wbmp and tga loaders
140
141 2011-03-07  Mike Blumenkrantz
142
143         * Fix segv when trying to set gl viewpoint with NULL ctx
144
145 2011-03-08  Carsten Haitzler (The Rasterman)
146
147         * Fix problem with different x vsync api between SGI and EXT flavor
148         as they have the same base name, but different prototypes
149         * Add evas_object_ref() and evas_object_unref() to defer
150         deletion of objects until all references are removed
151
152 2011-03-09  Carsten Haitzler (The Rasterman)
153
154         * Fix bug with evas_object_del() calling DEL callback BEFORE
155         the HIDE one.
156
157 2011-03-10  Sung W. Park
158
159         * Fix bug with yinvert handling of native surfaces.
160
161 2011-03-10  Carsten Haitzler (The Rasterman)
162
163         * Fix issue with loading alpha BMP's with "check if all pixel alpha
164         are 0 or not and then force alpha off if all are 0". This
165         means you can never have a 100% empty/transparent BMP though
166         in 32bpp mode.
167
168 2011-03-11  Carsten Haitzler (The Rasterman)
169
170         * Add ICO loader to evas (also can load CUR cursor files in theory)
171
172 2011-03-14  Carsten Haitzler (The Rasterman)
173
174         * Add "load from memory" API: evas_object_image_memfile_set() by
175         popular demand. Can load an image format from a memory address.
176
177 2011-03-15  Cedric BAIL
178
179         * Fix issues with clipping and map.
180
181 2011-03-18  Jiyoun Park
182
183         * Fix wrong call to free when using mempool for Evas_Object.
184
185 2011-03-19  Carsten Haitzler (The Rasterman)
186
187         * Caching and timestamp checker for image files made much more
188         pedantic and it checks not just modified timestamp but also
189         inode number, size, and on linux, the nanonsecond resolution
190         timestamp as well.
191
192 2011-03-19  Brett Nash (nash)
193
194         * Proxy: Bypass the clip on smart clipped objects.  This is probably
195         what you want if you are using proxies, as it means clips don't cause
196         the object to be invisible by the proxy.
197
198 2011-03-22  Gustavo Sverzut Barbieri (k-s)
199
200         * Fix build of GL and static modules.
201         * Fix ico loader static build.
202
203 2011-03-30  Tom Hacohen (TAsn) and Carsten Haitzler (The Rasterman)
204
205         * Added vertical alignment support to textblock.
206           API: evas_object_textblock_valign_set/get
207
208 2011-04-04  Sung W. Park
209
210         * Added Evas OpenGL interface to be able to get an OpenGL API for
211         rendering to image objects. This is the beginning so not
212         totally functional yet.
213
214 2011-04-05  Cedric Bail
215
216         * Remove Evas Quartz backend.
217         * Remove Evas Cairo backend.
218         * Remove Evas Qtopia backend.
219         * Remove Evas Xrender backend.
220
221 2011-04-06  Carsten Haitzler (The Rasterman)
222
223         * Fix bug in GL engine with someone stealing the GLX context away
224         as well as scissor clips when rotated output is not 0 (90, 180, 270).
225
226 2011-04-07 Tom Hacohen (TAsn)
227
228         * Textblock: Major speed improvements.
229         * Textblock: Only relayout and remake paragraphs that have actually
230           changed. This means we are a lot faster than before, especially with
231           long texts.
232
233 2011-04-10 Tom Hacohen (TAsn)
234
235         * Textblock: Fixed a bug in evas_object_textblock_text_markup_prepend
236           that caused it to use the object's cursor instead of the cursor
237           passed.
238
239 2011-04-11  Carsten Haitzler (The Rasterman)
240
241         * Feature: Text & Textblock - Add 8 explicit shadow directions for
242         text style effects.
243
244 2011-04-12 Myoungwoon Roy Kim (roy_kim)
245
246         * Font-engine: Added runtime italic (actually slanting) and
247           emboldening. - Automatically slants/emboldens a font at runtime if
248           italic/bold/crusiva and etc are requested but not found in the
249           system.
250
251 2011-04-14 Tom Hacohen (TAsn)
252
253         * Font-engine: Implemented higher level override API for the bidi
254           functions. This implements clause HL4 of the bidi algorithm.
255           This is very cool actually, it lets us to force-separate paragraphs
256           so each part will get his bidi calculated on it's own. This is very
257           useful for "to" field of email/sms applications where ',' is used to
258           separate different text entities.
259
260 2011-04-19 Brett Nash (nash)
261
262         * Filters: So filtering of various flavours.  They work only on images
263           (use a proxy if you want it on other objects).  Documentation inline.
264           Supports a filter object or filter under (the area where the object
265           is filtered).  Various parameters to tweak, and potential for
266           additional filters (but you get to write the shader ;-)
267         * FILTERS DISABLED AND REMOVED DUE TO BEING TOO BUGGY AND INCOMPLETE *
268
269 2011-04-24 Thierry el Borgi
270
271         * Add PSD file format support.
272
273 2011-04-26  Carsten Haitzler (The Rasterman)
274
275         * Added "generic" image loader that can just execute some command
276         to load any given file format and read the RGBA data as stdout
277         from the command, or from an intermediate temporary file or
278         shared memory segment the executable loader provides. Evas
279         doesn't care about the loader beyond it providing output via
280         stdout to define image parameters (size, alpha channel and data
281         information), and evas will call a specific loader binary
282         based on extension name of srouce file. This allows for evas to
283         load image data from files where the loader may be prone to
284         instability, or require use of libraries that are GPL or
285         otherwise undesirable in terms of the result to applications
286         using evas. So basically, if you want a GPL loader or have a
287         very unstable one, write a loader binary and call it
288         evas_image_loader.extension e.g. evas_image_loader.pdf or
289         evas_image_loader.xcf or evas_image_loader.xcf.gz etc. etc.
290
291 2011-04-28 Shilpaonkar Singh
292
293         * Textblock: Add "password" tag to turn on/off password in the middle
294           of the textblok. Especially useful for implementing "show last char"
295           for password entries.
296
297 2011-05-04  Carsten Haitzler (The Rasterman)
298
299         * Improved table layout for homogenous mode to handle not column
300         or row multiple sized table better.
301
302 2011-05-04  Jiyoun Park
303
304         * OpenGL binary shader ability to cache (save and load back
305         later) to avoid re-compiling shaders on every time an app starts and
306         uses the GL engine. Faster startup time.
307
308 2011-05-04 Tom Hacohen (TAsn)
309
310         * Textblock: Do standard compliant line breaks. In order to achieve
311           that we now statically link against liblinebreak (available in
312           src/static_deps/liblinebreak). It's usage can be disabled using the
313           configure flag: "--disable-liblinebreak"; Disabling it will activate
314           the fallback line breaking methods which are not very correct, but
315           are possibly faster. I haven't noticed any difference between the
316           two speed-wise, but there probably are in some rare cases.
317
318 2011-05-06 Cedric Bail
319
320         * Don't try all image loader when user is pointing them on a directory.
321
322 2011-05-11  Carsten Haitzler (The Rasterman)
323
324         * Fix problem with Evas engine not calling pre/post swap functions
325         in the GL engine when using EGL/OpenGL-ES2
326         * Fix SVG loader 2 phase loader having differing scale down code
327         for first and 2nd phase. Resulted in crash when loading some SVGs
328
329 2011-05-11 Tom Hacohen (TAsn)
330
331         * Textblock: Added evas_textblock_node_format_list_get. This is very
332           useful for edje_entry that uses anchors in the text.
333
334 2011-05-12  Carsten Haitzler (The Rasterman)
335
336         * Add smart instance usage count get function for ability to free
337         data from memory from a smart class if needed.
338
339 2011-05-12 Brian Wang
340
341         * Textblock: fix segfault with evas_textblock_cursor_content_get
342
343 2011-05-12  Carsten Haitzler (The Rasterman)
344
345         * Add a smart "Grid" layout object that lays out objects in a regular
346         "virtual resolution" grid (eg 100x100) so you can lay them out
347         as a "scaled percentage" of the virtual resolution. virtual
348         resolution is defineable as is the geometry of each member.
349
350 2011-05-18  Sung W. Park
351
352         * Fix some internal stencil and depth requests for OpenGL-ES2
353         due to OpenGL-ES limitations.
354         * Fix Surface recreation for FBO in Evas GL support.
355
356 2011-05-23  Vincent Torri
357
358         * Fix compilation with libjpeg 8 on Windows.
359
360 2011-05-24  Cedric Bail
361
362         * Use Eina_File when possible.
363
364 2011-05-26  Carsten Haitzler (The Rasterman)
365
366         * Fix Evas table to handle weighting correctly for items and veto
367         rows or columns that have any child spanning that column not
368         able to expand.
369         * Fix Evas table to use actual fractional weights, not just
370         boolean expand/not expand from weight value.
371
372 2011-05-27  Carsten Haitzler (The Rasterman)
373
374         * Add evas_event_thaw_eval() for conveneince of evaluating in state
375         and callbacks of the pointer after a thaw is complete.
376
377 2011-05-29  Tom Hacohen (TAsn)
378
379         * Font-engine: Fixed a bug in glyph search causing inconsistent return
380           values. The found fi should always be NULL if there was no fi found.
381
382 2011-05-29  Tom Hacohen (TAsn)
383
384         * Font-engine: Conform to the API changes in Harfbuzz 0.6.0
385
386 2011-05-29  Raoul Hecky
387
388         * Textblock: Added support for numeric escape codes. e.g "&#x3c;".
389
390 2011-05-29  Vincent Torri
391
392         * Fix compilation when --disable-async-preload is passed to configure.
393
394 2011-06-01  Cedric Bail
395
396         * Add +evas_object_image_extension_can_load_get and
397         evas_object_image_extension_can_load_fast_get that check if a file
398         may be opened by Evas_Object_Image.
399
400 2011-06-07  Cedric Bail
401
402         * Use Eina_File for JPEG loader.
403         * Add evas_object_image_load_orientation_get and evas_object_image_load_orientation_set,
404         that tell if we should honor the orientation information when loading image file.
405
406 2011-06-17  Carsten Haitzler (The Rasterman)
407
408         * Allow evas table to re-pack the same object without error and just
409         update packing parameters
410         * Allow to get packing location of table child
411
412 2011-06-28  Tom Hacohen (TAsn)
413
414         * Polygon: Implemented "is_inside".
415
416 2011-07-05  Hyoyoung Chang
417
418         * Fix bug where event causes event in callback on same object, but
419         with same event counter, so also filter out same event types.
420
421 2011-07-06  Carsten Haitzler (The Rasterman)
422
423         * Fix bug in grab counting on object hide while events are frozen
424
425 2011-07-07  Cedric Bail
426
427         * Fix infite loop when reinserting object during recalc stage.
428
429 2011-07-27  Tom Hacohen (TAsn)
430
431         * Textblock: Closing tags formats is now well-defined for complex
432           formats.
433           For example: <font=Sans font_size=23 color=#FFF> should now be
434           closed with </font> (or, like before, with the generic poper).
435         * Textblock: Add support for out-of-order tag openers/closers.
436           Markup sequences like <b><i></b></i> are now legal and work as
437           expeceted.
438
439 2011-07-28  Tom Hacohen (TAsn)
440
441         * Textblock: Added support for quoting format parameters.
442           Formats like: <font='Sans' color='#FFF'> are now legal.
443         * Textblock: Added font_weight and font_style formats.
444           These format allow overriding the font style set using:
445           font=':style=Bold'.
446
447 2011-07-31  Tom Hacohen (TAsn)
448
449         * Textblock: Added font_width.
450           This allows overriding the font width set using:
451           font=':style=Condensed'
452
453 2011-08-01  Tom Hacohen (TAsn)
454
455         * Textblock: Added lang to markup to set the lang of the text.
456
457 2011-08-09  Tom Hacohen (TAsn)
458
459         * Textblock: Added evas_textblock_cursor_range_formats_get which
460         returns the formats inside a range.
461         * Textblock: Added evas_textblock_cursor_visible_range_get which
462         updates the cursors to the ends of the area currently visible on
463         screen.
464
465 2011-08-17  Tom Hacohen (TAsn)
466
467         * Callbacks: Added priority support to callbacks.