Commit Graph

24294 Commits

Author SHA1 Message Date
Jihoon Kim 7b30c41443 ecore_imf: Add selection_set callback type to allow Input Method to select a region of text 2014-01-23 11:02:51 +09:00
Jihoon Kim fa165f0902 Add ecore_imf_context_selection_get API to allow Input Method to get the selected text. 2014-01-23 10:44:00 +09:00
Carsten Haitzler 1c2da046dc embryo_cc - remove trainling / from path for windows stat so it works 2014-01-23 08:45:44 +09:00
Jean-Philippe Andre 981bdc16f6 Evas: Fix proxy rendering for animated objects
An invalid optimization was implemented in proxy rendering.
We can't assume a proxy is a smart object.

Refer to 5cefa00d0a.

Fixes T832.

Proxy rendering is still broken when using cserve2... :(
2014-01-22 17:02:27 +09:00
Cedric BAIL 938aba36eb eina: do not access dead pointer from within valgrind macro. 2014-01-22 12:22:13 +09:00
Jihoon Kim 2c0c2b0fed ximimmodule: fix dereference after null check
CID 1162749:  Dereference after null check  (FORWARD_NULL)
/src/modules/ecore_imf/xim/ecore_imf_xim.c: 1027 in _ecore_imf_xim_preedit_draw_call()
2014-01-22 09:46:24 +09:00
Mike Blumenkrantz 052fc85cd3 okay, bring back xrandr < 1.4 compat for ecore_x_randr_output_name_get
apparently I read the commit order wrong and this fix went in for 1.4.0, not 1.3.2, which means anyone who has 1.3.2 has been having lots of fun crashes for the past 24 hours
2014-01-21 16:07:38 -05:00
Mike Blumenkrantz 8cbd7c1622 nul terminate string from ecore_x_randr_output_name_get 2014-01-21 14:58:31 -05:00
Tom Hacohen cff1a9a59f Synced libunibreak local copy with upstream.
This fixes T805.
2014-01-21 16:41:06 +00:00
Jean-Philippe Andre cc8fa1da45 Evas: Fix MMX mask function _op_copy_p_mas_dp_mmx()
This function does the following operation:
COPY pixel x mask --> dst

But it wasn't iterating over the source. So it was repeating
the value of the first pixel over and over again.

Is this even used anywhere? RGBA + alpha mask function!?
2014-01-21 15:43:10 +09:00
Mike Blumenkrantz 1feed7a1ae ecore_x_randr_output_name_get fixme removed
this was a fixme which was likely written sometime before July 2010 when the bug was fixed, just prior to the 1.3.1 release. I think it's probably okay to require that release since it's been 3+ years.
2014-01-20 22:16:18 -05:00
Carsten Haitzler 414b447f54 Revert "eet: do not load data when the file is open in read/write mode."
This reverts commit f8b0322704.

this breaks efreets icon cache. i have been noticing this since
yesterday across all my machines once i update just efl. i tracked it
down to this commit.
2014-01-21 09:18:52 +09:00
Carsten Haitzler 1a9ebc02c0 _op_blend_c_dp_neon miscalculation fix
Summary:
When processing random data result of this function differs from C variant in more than 50% cases.
This difference is due to alpha calculation, in C code :

 a = 256 - (c >> 24)

in NEON:

"vmvn.u8  q7,q6       \n\t"
// ie (8 bit)~(c>>24)    ===   255 - (c>>24)

We cant just add "1" as overflow will occur in case (c>>24) ==  0  (we use only 8 bit per channel in vector registers)
So here is the solution:
copy *d right before multiplication and add it to the result of it later.

This makes the function slower by 20-30% but it is still at least 2 times faster then C code.

Reviewers: raster

Differential Revision: https://phab.enlightenment.org/D455
2014-01-21 08:50:34 +09:00
Gustavo Sverzut Barbieri 0d1d51f64e eet_data: guarantee double-word alignment for temporary stack buffer.
The code was giving enough memory to store doubles and longs, but they
could be unaligned as "unsigned char" allows 1-byte alignment, while
double may require 8 bytes.

By specifying the array as "long long" we force certain alignment in a
platform independent way. As this array is small enough and
short-lived, the number of items were not changed, this results in
more bytes on the stack but it shouldn't matter.
2014-01-20 21:44:42 -02:00
Gustavo Sverzut Barbieri dbc4669d68 eina/mp/one_big: fix alignment issues.
When over-allocating (past "pool->max" items) a memory slice will be
allocated to the new item as a linked list using Eina_Inlist.

The original code was placing the Eina_Inlist structure (3 pointers)
at the beginning of the allocated memory. However the item must have
proper alignment based on "pool->item_size", otherwise a structure may
end with unaligned members. Take for example MIPS 32 bits, it uses 4
bytes pointers with 8 bytes double. A structure containing a double
could have it unaligned as 12 % 8 = 4 (12 is the size of Eina_Inlist,
that contains 3 pointers), and MIPS doesn't allow unaligned access.

Albin Tonnerre (Lutin) spotted this in his Debian MIPS test machine,
it was breaking at eet_data_get_double() that was storing an unaligned
double. This was being called from within edje test suite.

The current code will place the list node after the requested
"pool->item_size", of course guaranteeing the pointer inside the node
is aligned (otherwise a "char" or "short" would break its alignment).
2014-01-20 21:44:42 -02:00
Daniel Kolesa edc548fac5 ecore_getopt: support for per-category help listing 2014-01-20 17:32:28 +00:00
Gustavo Sverzut Barbieri f0aac1b490 configure: include required NEON build flags.
It is required to use "-mfpu=neon" to build NEON.

Patch-by: Albin Tonnerre <lutin@debian.org>
2014-01-20 12:15:56 -02:00
Jaehyun Cho 4432cd2e8e [ecore_x] Fix to handle paste null data case.
Summary: Do nothing when null data is pasted.

Reviewers: Hermet, raster

Reviewed By: raster

CC: seoz, raster, cedric

Differential Revision: https://phab.enlightenment.org/D473
2014-01-20 22:15:33 +09:00
Carsten Haitzler d9ef5e143c ecore - fix CRIT -> CRI macro 2014-01-20 20:23:22 +09:00
Youngbok Shin 443d1e700a edje: Call _edje_entry_imf_context_reset in _edje_entry_user_insert.
Summary:
When user paste text to elm_entry, _edje_entry_user_insert is called.
We need to reset a prediction buffer just like _edje_entry_text_markup_insert.

Reviewers: seoz, Hermet, woohyun, tasn, jihoon, raster

Reviewed By: raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D461
2014-01-20 15:59:51 +09:00
Carsten Haitzler 20d0015470 eina-inlist - handle prepend/append relative if list is null (empty)
stable release - cherry-pick me!
2014-01-20 15:16:56 +09:00
Cedric BAIL f8b0322704 eet: do not load data when the file is open in read/write mode.
I do think that it was a left over from previous file format. Removing
this memcpy should make Enlightenment startup faster and should reduce
by 500KB the memory it use.
2014-01-20 13:04:07 +09:00
Cedric BAIL 55a56fe5c0 eina: add eina_{str,bin}buf_manage_read_only_new_length().
It is sometime useful to start from a defined buffer, but to not touch it
until needed. This make life of caller more easier as they don't need to
duplicate the buffer themself as Eina will now take care of that.
2014-01-20 13:04:07 +09:00
Cedric BAIL 342dd72e37 eina: add eina_binbuf_append_buffer() and eina_strbuf_append_buffer(). 2014-01-20 13:04:07 +09:00
Cedric BAIL 00d4f5cf1c eet: reduce memory usage of Eet internal structure by removing useless structure. 2014-01-20 13:04:06 +09:00
Youngbok Shin c85414b157 edje: Add changed signal emit in _edje_entry_imf_event_delete_surrounding_cb
Summary:
"_edje_entry_imf_event_delete_surrounding_cb" changes text of entry.
When the callback function is called and the entry is changed,
we need to notice to applications that the entry is changed.

Reviewers: seoz, Hermet, tasn, woohyun, jihoon, raster

Reviewed By: raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D460
2014-01-20 12:54:46 +09:00
Jean Guyomarc'h 1e287bde2b edje_cc: factorize two strlen()s
Reviewers: cedric, raster

Reviewed By: raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D454
2014-01-20 12:47:46 +09:00
Jérémy Zurcher 45340521f9 ecore_evas_wayland_common: fix compilation, missing bits of 892b1c5 2014-01-19 19:41:27 +01:00
Chris Michael 24ac2e278d Fix doxy typo
Signed-off-by: Chris Michael <devilhorns@comcast.net>
2014-01-19 12:06:05 +00:00
ChunEon Park 892b1c5be3 ecore_evas - applied macro to check rotation state.
also, let the potrait compare on the higher priority.

if you can suggest better macro name, then please modify it.
2014-01-18 22:26:10 +09:00
ChunEon Park 8cd92c17e0 Revert "ecore_evas - use the macro orthogonal check."
This reverts commit 43acf1e82f.

some partial changes are incorrectly applied.
2014-01-18 22:04:25 +09:00
ChunEon Park 43acf1e82f ecore_evas - use the macro orthogonal check. 2014-01-18 21:53:56 +09:00
ChunEon Park e3f02b25d5 efl - updated AUTHORS 2014-01-18 19:12:45 +09:00
Youngbok Shin a2c4c40474 evas: Fixed to compare current render_op with previous render_op for textblock. If the render_op is changed, call evas_object_render_pre_prev_cur_add.
Summary: This change is related to the commit: cdb86e34bb

Reviewers: woohyun, tasn, Hermet, seoz

CC: cedric

Differential Revision: https://phab.enlightenment.org/D450
2014-01-18 19:06:16 +09:00
ChunEon Park 84cd13bf96 efl/ecore_con - compare same types. 2014-01-18 18:50:51 +09:00
ChunEon Park 16ef56d396 efl/emotion - added missing headers for getuid() geteuid(). 2014-01-18 18:49:27 +09:00
Carsten Haitzler cb1458e435 pkgbuild -> luajit 2014-01-18 09:25:43 +09:00
Daniel Kolesa 6db1691595 edje: use luajit by default, if you want lua use --enable-lua-old 2014-01-17 19:07:59 +00:00
Jean-Philippe Andre 34b8045d90 Evas cserve2: Fix invalid memory access
In case of load error, we free the file entry, but forgot to
reset the pointer to it in the image entry.
2014-01-17 19:00:54 +09:00
Jihoon Kim c059b12bf4 edje: use EINA_UNUSED instead of __UNUSED__ 2014-01-17 18:51:52 +09:00
Sebastian Dröge c64b2fba9b emotion: Use the GStreamer 1.x module instead of the 0.10 one in the border example application 2014-01-17 09:32:45 +01:00
Sebastian Dröge 1ba3426405 emotion gstreamer1: Call _emotion_frame_new() for audio-only streams without visualisations too
Without this applications are not notified of any progress.

https://phab.enlightenment.org/T767
2014-01-16 22:45:09 +01:00
WooHyun Jung 1d189f43f6 edje_entry: When preediting, cursor should not be moved. 2014-01-16 16:31:36 +09:00
Daniel Kolesa d660dd12bb ecore_getopt: support for categories 2014-01-15 20:22:27 +00:00
Guillaume Friloux 4ec00f8edc Fix ecore_con example file to call shutdown functions.
Found by Chris Michael.
2014-01-15 20:42:50 +01:00
Daniel Juyung Seo 2830507661 ecore_x_gesture: Cast maek pointer correctly.
Confirmed by the original author of libxgesture, Sungjin Park.
2014-01-15 20:48:33 +09:00
Jean-Philippe Andre cc82e2ded5 Textblock: Add test cases for style padding
In the previous commit, style padding has been changed, so
that lines don't get extra space just because there's a special
style (glow, ...)

This adds some test cases that check the actual geometry of the
lines relatively to each other.

NOTE: This test does not fail before the padding commits, as
_relayout_if_needed() adjusts the padding properly.
2014-01-15 17:55:27 +09:00
Jean-Philippe Andre 908785b60d Textblock: Relayout if needed in line geometry get
evas_object_textblock_line_number_geometry_get() did not trigger
a relayout, so it could end up returning FALSE and invalid values.
2014-01-15 17:55:27 +09:00
Jean-Philippe Andre 9860af0b35 Textblock: Fix padding with styles (part 2)
Summary:
If ONE single item in the whole textblock has a padding of k,
then ALL the lines of the textblock will be padded by k pixels.

Here's a solution to add the padding only to the first line.

Test Plan:
Write any multiline text, without styles, in an entry.
Add some glow to one element. All lines should be spaced by
an extra 2 pixels.

Reviewers: tasn

CC: cedric

Differential Revision: https://phab.enlightenment.org/D442
2014-01-15 17:55:27 +09:00
Jean-Philippe Andre 6970a020c1 Textblock: Fix padding computation (part 1)
Track padding per paragraph, since this is how it is computed.

Problem before this patch:
- If markup text is changed, padding may grow, and the layout is updated (good)
- If the UI itself needs a relayout, the old padding value is NOT reused,
so style paddings will reset the padding to 0.

Test protocol:
- Set some text with style=glow. The whole object should have padding 2,2,2,2
- Relayout the UI, the whole object will have padding 0,0,0,0 (should be 2,2,2,2)
2014-01-15 17:55:27 +09:00