summaryrefslogtreecommitdiff
path: root/old/NEWS.evas
blob: cdb93ca51a4e93f4cd6fecde110b472354069dc5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
Evas 1.8.0

Changes since Evas 1.7.1
-------------------------

Fixes:
   * Fix evas textblock tag parser to respect escaped spaces and escaped single quotes

Changes since Evas 1.7.0:
-------------------------

Additions:

   * WEBP image loader support.
   * EVAS_CALLBACK_IMAGE_RESIZE.
   * Evas_Device registration/manipulation/querying API
   * Evas_Object_Display_Mode querying API
   * EVAS_GL_API_DEBUG=1 env. var option for outputting debug logs related to Evas GL's GL calls.
   * Proxy source visibility set APIs
   * Proxy source events set APIs
   * Evas_Coord_Size, Evas_Coord_Precision_Size types

Improvements:

   * Function to rotate an evas map with a quaternion: evas_map_util_quat_rotate().
   * EVAS_GL_NO_BLACKLIST env var to turn off blacklisted drivers in gl
   * Evas gl engine can do partial swaps now.
   * evas_object_del() now takes NULL parameters
   * make xpm loader faster (from O(N) to O(log(N))).

Fixes:
   * Fix segmentation fault with the esvg loader.
   * Fix EGL/GLES dest alpha rendering bug (no rendering).
   * Fix evas_object_image_alpha_set when image data not loaded yet.
   * Fix map surface leak.
   * Fix native surface set to null crash bug in gl engine.
   * Fix font sizing issue with some rare sizes and fonts when rounding wrong.
   * Fix software line drawing c fallback code.
   * Fix the vertical line drawing on gl backened.
   * Fix potential segfault in gl engine if image internal image is NULL.
    * coordinate compute bug for Evas GL direct rendering.

Removal:
   * No more support s3c6410.
   * 16bpp engine removed.
   * 8bpp engine removed.

Evas 1.7.0

Changes since Evas 1.2.0:
-------------------------

Additions:

   * Textgrid object.
   * Evas_Smart_Interface type, which brings simple interfaces support to smart objects.

Improvements:
   * Lock less font rendering.
   * Reduce cost of propagating event by limiting the object we explore by using a bouncing box.
   * Don't wake up prepare thread if there is nothing to prepare.
   * Limit the updated region to fit in CPU cache for Pipe rendering.
   * Cache conversion from Evas_Map to RGBA_Map.
   * evas_object_smart_members_get() now returns NULL on non-smart objects.
   * Pipeline rendering use prepare stage more extensively.
   * Properly warn when user try to link object from different canvas.

Fixes:
   * Add missing files in the tarball.
   * Add svg rendering with Esvg
   * Don't accept broken map.
   * Fix garbage left by mapped smart object when they fly away from the canvas.
   * Fix map life cycle.
   * Don't crash when calling evas_object_smart_type_check without type.
   * Handle proxy with the right context.
   * Force proxied object to stay active to keep track of change in them.
   * Fix evas_gl's internal resource surface bug when evas' window is deleted/recreated.
   * Fix evas_gl current_context update issue when evas_gl context is deleted.

Removal:
   * Remove EVAS_FRAME_QUEUING, EVAS_SLI, METRIC_CACHE and WORD_CACHE.
   * Remove librsvg svg loader (If you want to use it, use the evas_generic_loader variant).
   * Remove software DirectDraw 16 bits engine
   * Pipe rendering now need a patch to be turned on.

Evas 1.2.0

Changes since Evas 1.1.0:
-------------------------

Additions:

   * Textblock now supports self-closing tags, i.e <br/>. Those should be used instead of the old <br> way.
   * Shm engine for drawing in Wayland.
   * evas_object_smart_callback_del_full API.
   * Add double buffer support to the buffer engine.
   * evas_textblock_cursor_word_start/end.
   * evas_textblock_text_utf8_to_markup.
   * textblock b and i tags able to be overriden by style.
   * new api to set and get event flags
   * events just before/after canvas rendering
   * frame object set/get API's
   * evas_object_name_child_find.
   * evas_gl_config_new/free.
   * evas_object_smart_callback_del_full.
   * EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN.
   * EVAS_GL_OPTIONS_DIRECT.
   * evas_object_textblock_style_user_pop/push.
   * evas_object_ref_get
   * Evas_GL_Multisample_Bits MSAA surface config option for supported devices.

Fixes:

   * don't enable SSE3 if immintrin.h isn't there.
   * clip bounds calculation rounding error.
   * grab count negative values with weird multi-finger press/release usage.
   * clip bug that shows up in buffer engine.
   * disabled buggy SSE3 routines.
   * repeat events passing between layers within the same object.
   * uninitialized value when running generic loader.
   * rounding of update regions in scaled image objects.
   * handling of layouts where weights have sub integer values.
   * gl engine cliupping bug when rendering maps to fbo's.
   * liblinebreak disabled compilation bug.
   * color multiplier staying set when rendering map.
   * shader binary now saves if shader dir exists already.

Improvements:

   * use Eina_File mmap for bmp, ico, pmaps, psd, wbmp and xpm file access.
   * textblock br and tab tags now default for newline and tab.
   * extended pixman routine support for most software rendering routines.
   * added tiled rotator for 32bit displays (faster).
   * work around nvidia driver spin-using-cpu and don't use glXWaitGL()
   * evasgl back-end for software using OSMesa.

Removal:

   * Software_SDL engine is gone, use buffer engine directly.

Evas 1.1.0

Changes since Evas 1.0.0:
-------------------------

Additions:

    * auto-align feature to textblock
    * mixedwrap wrap mode to textblock
    * harfbuzz support for shaping
    * WBMP loader
    * mirror mode for tables
    * proxy abilities to image objects to choose source ro mirror
    * speculative texture cache to the OpenGL engine to avoid texture uploads
    * newline policy setting API to textblock
    * evas_object_ref and evas_object_unref to defer object deletions
    * ICO loader
    * evas_object_image_memfile_set to load images from memory
    * vertical alignment to textblock
    * more shadow directions for text rendering
    * runtime italicizing and boldening of fonts that don't have their own
    * more bidi API support
    * PSD loader
    * generic external-process loader for thins like xcf, pdf, video, ps
    * password mode to textblock
    * GL shader disk cache to avoid re-compilng on start
    * evas_textblock_node_format_list_get. API
    * smart class usage count get API
    * grid layout smart object and API
    * evas_event_thaw_eval to help evaluate state and events on event thaw
    * textblock support for numeric escapes like "&#x3c;" in markup
    * evas_object_image_extension_can_load_get API
    * evas_object_image_extension_can_load_fast_get API
    * evas_object_image_load_orientation_get API
    * evas_object_image_load_orientation_set API
    * feature to allow tables to repack the same object without error
    * API to get child packing from table
    * is_inside implementation for polygon objects
    * out-of-order open/close tag support in textblock markup
    * support for quoted parameters in tags in textblock markup
    * font_weight and font_style formats
    * font_width font format
    * markup tag to specify language
    * evas_textblock_cursor_range_formats_get API
    * evas_textblock_cursor_visible_range_get API
    * callback prioritization support
    * YUV 601 input support for evas_object_image_data_convert
    * NV12 colorspace for evas image objects
    * MT12 colorspace for evas image objects
    * underline dashing support to textblock
    * API to get largest image size
    * GL Cocoa engine
    * Evas GL support in software backend through OSMesa
    * API to new/free Evas_GL_Config rather than user declaring it
    * Evas GL Direct rendering option hint to allow rendering to evas' window when possible

Fixes:

    * cursor and selection handling with bidi text
    * many general bid issues with text
    * free bug in key grabs
    * bug when images are scaled to massive sizes (like 1 billion pixels)
    * BMP decode for have more pixels per line than the image does
    * font string parsing bug if font element is too long
    * crash bug in argb8888 to a8 conversion
    * textblock bug with cursors in empty textblocks
    * bug in smart calc array where some objects would be skipped
    * static linking of BMP and TGA loaders
    * bug when GL viewport was set with a NULL context
    * bug when looking for vsync API due to SGI vs EXT differences
    * bug in evas_object_del where DEL callback happened before HIDE
    * yinversion bug on some GL surfaces
    * BMP loader to handle alpha BMPS as solid where all alpha values are 0
    * clipping with evas map issues
    * bug where wrong call was used for freeing a mempool object
    * static linking of GL engine
    * GL engine to handle if someone uses GL contexts outside of evas
    * bug in evas_object_textblock_text_markup_prepend that broke cursors
    * lack of calling pre/post swap callbacks when using OpenGL-ES2
    * some crashes with load options scaling of SVGs in 2nd pass decode
    * segfault with evas_textblock_cursor_content_get
    * libjpeg 8 compilation support on windows
    * evas table to handle weighting correctly and expansion
    * evas table to allow fractional weights, not just 0/1
    * glyph search bug causing inconsitent return values in some cases
    * compile when --disable-async-preload is used
    * callback counter bug
    * grab count and hide bug
    * infinite loop bug when re-inserting objects during pre-render calc
    * evas_object_image_data_convert
    * TGA loader detects false positives less and handles alpha TGAs better
    * repeat event flag not inherited from parent smart like pass events
    * texture size for nv12 format

Improvements:

    * pre-render speed for rectangles if they are invisible
    * code of textblock and font engine
    * textblock layout speed
    * speed and memory usage of textblock
    * cache handler to also use file size, mode and sub-second timestamp
    * textblock to re-layout only paragraphs that have changed
    * homogeneous table layout alignment and sizing
    * textblock linebreaking by using liblinebreak
    * image loader to drop out instantly if image file is a directory
    * object allocation to use mempools
    * font engine to use string objects not strings for caching purposes
    * text to display missing unicode char instead of missing glyphs
    * internal file code to use eina_file more
    * jpeg loader to use eina_file
    * jpeg encode and decode quality improved at expense of speed

Removals:

    * removed quartz, cairo, qtopia and xrender engines. dead.