summaryrefslogtreecommitdiff
path: root/NEWS
blob: fe083e26e0282f549bd364e2bfbc38d48360db35 (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
Edje 1.7.1

Changes since Edje 1.7.0:
-------------------------

Fixes:
    * Fix edje_*scale_set() on sub-group.

Edje 1.7.0

Changes since Edje 1.2.0:
-------------------------

Additions:
    * Add edje_watch to monitore change on edje source.
    * Emit ['edje,change,file', 'edje'] when the file change on disk.
    * edje_player will automatically reload the file when it change on disk.
    * Add SPACER part. This part are not putting anything into the canvas. So lighter and faster to
    process (Use it to replace RECT part that are never visible and never catch any event).
    * Add accessibility flags and API to retrieve the relevant part.
    * Emit signal when flagged part size get to zero.
    * Warn at compile time about forgotten image.
    * Stop compilation when clipping to a non RECT part.

Improvements:
    * Allocate once and reuse Evas_Map.
    * Make edje_cc faster by improving the parser, mapping file in memory and using threads.
    * Made state index optional in EDC files and Embryo scripts.
    * Improve speed of color_class lookup by using an Eina_Hash.

Fixes:
    * Add missing files in the tarballs.
    * Prevent crash when running nested edje_object_signal_emit with edje_object_signal_callback_{add,del}.
    * Do actually verify that the file on disk is different from the file we have loaded.
    * Preserve user drag, box and table information during call of edje_object_file_set.
    * Fix table and text when fixed point is turned on.
    * Clamp image tween to never underflow also.
    * [entry] display preedit string even though there is no attribute
    * Fix shutdown of Edje_Multisense.
    * Reduce potential reentrant issue when using edje_object_signal_emit.
    * Call edje_object_message_signal_process also on GROUP part Edje object.
    * Remove memory leak when alias are present in the edj file.
    * Properly destroy color_class and text_class on an Edje_Object.
    * Stop leaking memory on edje block error during signal emit.

Edje 1.2.0

Changes since Edje 1.1.0:
-------------------------

Additions:

    * "recalc" smart callback for object size changes.
    * EDJE_ASPECT_PREFER_SOURCE.
    * edje.version() Lua function.
    * minmul edc property.
    * add min: SOURCE and max: SOURCE to IMAGE and GROUP parts.
    * add broadcast_signal: bool.
    * add edje_object_part_text_imf_context_get().
    * add edje_object_update_hints_set() and edje_object_update_hints_get().
    * nee keybindings in entry flr ctrl+arrows, ctrl+del and ctrl+backspace.
    * cursor,changed,manual signal from entry.
    * undo/redo in entry + IMF.
    * HEX, TERMINAL, PASSOWORD vkbd types added.
    * recalc smart callback for object size changes back to C.
    * EDJE_ASPECT_PREFER_SOURCE.
    * Lua: edje.version().
    * minmul property.
    * edje_object_part_text_style_user_set/get().
    * min/max: SOURCE.
    * edje_object_text_markup_filter_callback_add/del/del_full().
    * edje_object_part_text_input_panel_show/hide().
    * edje_object_part_text_imf_context_reset().
    * edje_object_part_text_prediction_allow_set/get().
    * add a way to disable signal broadcasting.
    * edje_object_part_text_input_panel_language_set/get().
    * edje_object_part_text_input_panel_imdata_set/get().
    * edje_object_part_text_input_panel_return_key_type_set/get().
    * edje_object_part_text_input_panel_return_key_disabled_set/get().
    * edje_object_part_text_user_insert()
    * double click in entry selects word, triple selects line.
    * EDJE_VERSION_12 define in edc for #ifdefs handling edje 1.2 (or older)
    * edje_object_part_text_escaped_set()

Improvements:
    * speedup load time of Edje file.
    * check existence of group at compile time also.
    * reduce number of call to stat during edje_object_file_set.
    * unswallow object about to be swallowed if necessary.
    * Lua scripts now more resilient against API changes.
    * edje_cc only store the image actively used in an edje file.
    * reduction in part walking.
    * check group existence at edje_cc time.
    * edje_object_part_text_cursor_content_get() prototype fixed.
    * calling non-existant lua functions doesn't crash now.
    * make it possible to update size hints automatically

Fixes:
    * Correctly count and propagate preload signal with GROUP.
    * Fix rotation with fixed point.
    * Correctly propagate scale factor to GROUP.
    * Potential crash from buffer overflow copying map data.
    * Limits detection by edje_cc.
    * Errant free() call in loading of edje files.
    * unswallow objects that are going to be swallowed elsewhere.
    * ability to change edje source correctly inside edje callback.
    * overriding group in edje_cc.
    * filter now only valid once program affecting parts is done.
    * edje_object_part_text_input_panel_enabled_set/get if IMF doesn't exist.
    * EDJE_CALC_CACHE issues and when using relative to_x/y on separate parts.
    * filter preventing any action being triggered.
    * signal propagation when matching target GROUP exists.
    * correctly count and propagate preload signal with GROUP
    * rotation with fixed point
    * propagate scale factor to GROUPS
    * fix no number inserts even if numlock is locked

Changes since Edje 1.0.0:
-------------------------

Additions:

    * "UNDER" entry cursor mode
    * auto alignment of TEXT parts with text.alignment set to -1
    * mirroring support
    * edje_object_part_text_cursor_pos_set/get()
    * size_range propert to TEXT parts
    * proxy parts so part can source other parts including swallows
    * support explicit shadow direction with added effect param
    * edje_object_part_text_append()
    * new interpolations: ACCEL_FAC, DECEL_FAC, SIN_FAC, DIVIS, BOUNCE, SPRING
    * "entry,paste,request,1" signal (primary)
    * "entry,paste,request,3" signal (clipboard)
    * "entry,selection,all,request" signal
    * "entry,selection,none,request" signal
    * "entry,paste,request*" signals afte cursor change
    * "entry,changed,user" signal
    * collection.group.limits.horizontal/vertical
    * input panel layout setting API's
    * edje_object_signal_callback_extra_data_get()
    * group inheritance and part re-ordering with inheritance
    * add change information to "entry,changed,user"
    * add "CURRENT" option for transitions to transition from current state
    * lua color/text class, map, text, image, line, polygon and edje object API's

Fixes:

    * invalid memory access in edje alias code
    * recusive aliases fixed
    * cursor didn't change on backspace signal
    * propagation of recursive events on existing part
    * box/table signal not including name correctly
    * clicked signal on entry
    * propagation of recursive events between existing and non-existing parts
    * textblock handling in size_min_restricted_calc fixed
    * stop emitting "cursor,changed" on text set
    * external usage in sub groups now have proper parents
    * ellipsis fixed with small text parts
    * edje_shutdown() fixed if called before all edje objects are gone
    * allow -1 for description.max

Improvements:

    * built-in epp (from e16) to replace cpp/gcc pre-processor on all platforms
    * edje_decc only uses edje_cc as compiler for security paranoia
    * use smart clipper more from evas
    * text.align now works for textblock too
    * creation/deletion of edje objects should be faster with freeze and thaws
    * don't walk eina_list when deleting member classes - faster
    * part.description.max now can define just 1 axis
    * signal and message propagation is more consistent and simpler now