Commit Graph

32845 Commits

Author SHA1 Message Date
Ji-Youn Park 1a3cb45f1c ecore_x: fix memory leak
check return value type of XGetWindowProperty.
   @fix
2015-12-24 09:57:34 +08:30
Hermet Park b757b30bae rename an author. 2015-12-24 09:22:00 +09:00
Mike Blumenkrantz 06bb13e2f8 efreetd: send ipc for EFREET_EVENT_DESKTOP_CACHE_BUILD...always
since the conversion from dbus -> ecore-ipc, efreetd has failed to
notify when a cache build has completed, instead only sending the current
state of the desktop cache: not built

fix T2733

@fix
2015-12-23 13:40:48 -05:00
Jérémy Zurcher 5c2def50ca ecore_drm: fix out of source tree compilation
issue introduces by 10fa1b5

ecore_drm_private.h includes Eldbus.h
Eldbus.h includes Efl.h since 10fa1b5
2015-12-23 17:43:22 +01:00
Carsten Haitzler 93c2b85bd4 edje - list mouse pressed signals as they are new in edcref 2015-12-23 21:53:55 +09:00
Vivek Ellur abe131d1d7 edje_embryo: Fix null dereference issue
Summary:
Fix Coverity issue ID 1299026

Signed-off-by: Vivek Ellur <vivek.ellur@samsung.com>

Reviewers: cedric, raster

Reviewed By: raster

Subscribers: raster, cedric

Differential Revision: https://phab.enlightenment.org/D3218
2015-12-23 19:12:07 +09:00
woochan lee 9ac9b26436 edje_callbacks: Add mouse,pressed,in/out signal.
Summary:
The mouse,in/out signal has missing parts to use.

When user send down event on specific object, then move cursor to outside of object.
the mouse,in signal must be called in case. but it's not in traditional implement.

So i added this signal for support above use case.
In order to satisfy above use case, user can add both of the signals(mouse,in mouse,pressed,in).
(Adding new name of signals to do not break compatibility with before implements.)

@feature

Test Plan:
Add mouse,pressed,in/out program to object.
Press object which added signals before.
Move mouse cursor to out of object, then check the program works.

Reviewers: Hermet, cedric, raster

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2992
2015-12-23 18:58:47 +09:00
Mike Blumenkrantz 8981f08555 evas: handle existing pointer grabs when changing object pointer mode
in the case that pointer mode is changed on an object at any time after
a grab has been acquired by the object, grabs/flags must be adjusted for
this and other "pointer-in" objects in order to avoid permanently
breaking canvas events

@fix
2015-12-22 16:21:11 -05:00
Mike Blumenkrantz e4d11e2e4f evas: unset pointer ungrabs when using EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN
I have no idea what this mode was intended to do since there are no docs
and the related code in evas events is undocumented, so I can only speculate.

what I can say for certain is that this mode does grab, in opposition to its name,
and that until this commit any object which sets this pointer mode will
permanently break mouse eventing on the canvas

ref evas SVN 67264

@fix
2015-12-22 16:21:11 -05:00
Subodh Kumar 7684cea226 Edje entry: Fix cursor position on mouse up and down
Summary:
Fix cursor position on mouse up/down

When mouse down/up over top and bottom  part textblock is not able to set the
char coordinate as it is not inside actual text, edje entry tries to manage it
but textblock has that handling. As a result the cursor jump to first char for
single line and at the last in the multiline last line.

So this patch fixes this and manage to keep the  the mouse coordinate inside
the textblock.

In mobile device this is not really acceptable when user taps over the entry
at some position and cursor jumps to  some arbitrary position.

@fix

Test Plan:
1. Elementary Test
2. Entry 3 (any entry)
3. Try to click little below or above the text in first entry
     single line.Observe cursor jumps to first position
4. Do as above for multiline entry (try to click at the last line little below)
observe cursor jumps to last char.

Reviewers: thiepha, herdsman, tasn

Subscribers: jpeg, tasn, cedric

Differential Revision: https://phab.enlightenment.org/D3257
2015-12-21 14:29:03 +00:00
Tom Hacohen 374b795683 Ecore wl2: Limit scope of variable (fix shadow warning). 2015-12-21 11:15:24 +00:00
Tom Hacohen db72b93601 Static deps unibreak: Update to latest version.
This version supports Unicode 8.0 and includes fixes over the previous
version.
Reference version: 03ae8dd7d6ce6d19a38c1e62c70afc6ad82513bc

@feature
2015-12-21 11:10:37 +00:00
Carsten Haitzler 9626acdb4d emotion - fix gst back-end to report title and other meta changes
gst1 back-end didnt report changes in title or other metadata to the
frontend and thusapps never knew it was changing. this fixes that.

@fix
2015-12-21 14:40:41 +09:00
Subodh Kumar 105960b24f Evas textblock: Fix some indentation and formatting.
Summary: Fix some indentation and formatting.

Reviewers: herdsman, cedric, tasn

Reviewed By: cedric

Subscribers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D3174
2015-12-18 15:14:05 +00:00
Stefan Schmidt 337939ef14 ecore_wayland: rename session recovery to align namespace
Align out extension naming with other unstable wayland protocols.
The unstable protocols from the wayland-protocols repo are prefixed
with a zwp additionally we keep a e prefix for now as we are still
developing this here. No functional change, just rename.

Pointed out by Derek that the session-recovery interface name is a
bit to generic here.
2015-12-18 14:51:04 +01:00
Sung-Taek Hong 1b6a400a29 ecore_idle_exiter: return NULL in eo_finalize() when Ecore_Task_Cb is not set
Summary: - ecore_idle_exiter_add should return NULL, when Ecore_Task_Cb is not set.

Reviewers: jpeg, woohyun, jaehwan, Jaehyun

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3425
2015-12-18 17:58:54 +09:00
Minkyoung Kim 25ebd91555 evas/gl : Do not re-preload image data if texture is successfully uploaded with image data.
Summary:
'cached' flag is not enough to check whethere data is loaded and texture is uploaded.
so check more options for prevent re-preload image data on gl-backend.

Test Plan: Local Test (elementary_test : elm images)

Reviewers: jpeg, eunue

Reviewed By: jpeg

Subscribers: cedric, jiin.moon, wonsik, spacegrapher

Differential Revision: https://phab.enlightenment.org/D3446
2015-12-18 16:49:17 +09:00
Vincent Torri 1921055644 Eina test: fix warning
Reviewers: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3465
2015-12-18 16:48:34 +09:00
Vincent Torri e20978054a Efreet: support language, country and modifer on Windows
Summary:
On Windows, the environment variables LANG, LC_ALL and LC_MESSAGES
do not exist, so retrieve langage and country modifier directly from the systeM

Test Plan: verify the value with some ptrinF

Reviewers: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3464
2015-12-18 16:48:34 +09:00
Jean-Philippe Andre a32653784f Evas examples: Fix examples data dir for out-of-tree builds
This is a quick fix to make out-of-tree builds of the examples
work fine. Don't pass "." as teh resource dir root, instead
pass the path to the source files' folder.
2015-12-18 16:48:34 +09:00
perepelits.m efde72de1e Evas 3d: Add example for convex hull
Summary: This example is a testing example for comparison convex
hulls built by our algorithm and in Blender.

Reviewers: raster, Hermet, cedric, jpeg, perepelits.m

Subscribers: jpeg, artem.popov

Differential Revision: https://phab.enlightenment.org/D3336
2015-12-18 16:48:15 +09:00
Mike Blumenkrantz a3dcf7a0ba ecore-wl2: do not flush wl_display during cleanup
this serves no functional purpose and deadlocks compositors
2015-12-17 13:11:46 -05:00
Tom Hacohen 3d91e5eae8 Revert "evas: fix some indentation and formatting in textblock."
This patch was *REJECTED*. I don't understand why it was snuck in among
a batch of 24 other unrelated patches. That made me miss it originally,
  but found it now. This is wrong and shouldn't be in.

This reverts commit 3f0d0daf0d.
2015-12-17 12:51:37 +00:00
Jaeyong Hwang acab227544 Edje entry: Fix issue with width calculation and padding
Summary:
The size of the style pad isn't considered when the min value of the
textblock is calculated.  In case of putting the lable that there is an
outline in the box, the letter is cut.  So, I revised so that
evas_object_textblock_style_insets_get could be called after a
evas_object_textblock_size_formatted_get in
_edje_object_size_min_restricted_calc function.  And then the style pad was
considered in the result value of the edje_object_size_min_calc.

@fix

Test Plan:

EAPI_MAIN int
elm_main(int argc, char **argv)
{
   Evas_Object *box, *label;
   Evas_Object *win;

   elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);

   win = elm_win_util_standard_add("Font", "FONT");
   elm_win_autodel_set(win, EINA_TRUE);

   box = elm_box_add(win);
   elm_box_padding_set(box, 10, 0);
   elm_box_align_set(box, 1, 0.5);
   evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
   evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
   elm_win_resize_object_add(win, box);
   evas_object_show(box);

   label = elm_label_add(box);
   elm_object_text_set(label, "<font=default align=rignt color=#ffffff font_size=200 style=soft_outline outline_color=#ff0000ff>label");
   elm_box_pack_end(box, label);
   evas_object_show(label);

   evas_object_resize(win, 500, 300);
   evas_object_show(win);
   elm_run();

   return 0;
}
ELM_MAIN();

Reviewers: herdsman, tasn

Reviewed By: tasn

Subscribers: id213sin, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3426
2015-12-17 12:44:36 +00:00
Subodh Kumar 43f50dc7db Evas textblock: Use width of item format to position cursor.
Summary:
Use width of item format to position cursor.

Sometimes it becomes very difficult to
position cursor over item and selection
becomes very difficult as we position the
cursor once the input X coord reached end of the item,
like one attached in the test plan. So this patch
decides over 50% of item width for X coord reaches
to position it at start or end.

@ix

Test Plan:
Attached setup shows how difficult to position cursor at the end when clicked
over item and selection is also very difficult. Consider such case in mobile
device, its becomes impossible to position cursor at the end and selection is
too much difficult.

{F27036}

Also added test cases in evas test suite

Reviewers: herdsman, tasn

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3390
2015-12-17 12:00:23 +00:00
Sung-Taek Hong 8c891ed049 evas_callback: Remove callbacks in reverse order with evas_event_callback_del
Summary:
 - This function is deprecated, because del_full should be used instead.
 - Still, the documentation specifies in which order the callbacks should
 - be deleted.

Reviewers: Hermet, jpeg, jaehwan

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3459
2015-12-17 16:03:26 +09:00
Stefan Schmidt 680eec5c5c ecore_wayland: add listener for uuid and provide already existing one
Setup a listener to receive an uid from the compositor. If we already have
one during creation, aka we are re-connecting to recover a session, we provide
it to the compositor so it can look our attributes up based on it. Again hidden
behind and env var to avoid problems with other developments, for now.

ref T2922
2015-12-16 22:18:08 +01:00
Stefan Schmidt d4d3f63653 ecore_wayland: store uuid received from compositor
If we get an uuid assigned from the compositor we will store them locally to
provide it later on if needed.

ref T2922
2015-12-16 22:18:08 +01:00
Stefan Schmidt 900fd5446f ecore_wayland: create session recovery listener only if env var is set
Same as for the global we make sure here we only add the listener if the,
for now, needed env var is set.

ref T2922
2015-12-16 22:18:08 +01:00
Stefan Schmidt 598f46f25e ecore_wayland: only bind session recovery interface when env var is set
To avoid trouble for other wayland testing we hide the session recovery work
behind EFL_WAYLAND_SESSION_RECOVERY. Without this env var being set we do not
bind the global.

ref T2922
2015-12-16 22:18:08 +01:00
Stefan Schmidt 56cc11c3b1 ecore_wayland: remove disabled code for session recovery listener
The listener is handled inside ecore_wl_window. Remove the dead code from here.
2015-12-16 22:18:08 +01:00
Mike Blumenkrantz b47d9caf84 edje_cc: redo part type setting to be even more correct
when changing the type of a part which already has descriptions, it's
necessary to avoid copying any of the previous type-specific desc data

this should be the last of them...

@fix
2015-12-16 15:53:50 -05:00
Mike Blumenkrantz e14dc0f11d edje_cc: correctly copy part descriptions when setting part type
in the case where a part is inherited, changing the type will lead to
broken part/program lookups for the part during resolving in write-out;
memcpy alone is not enough to fix this.

@fix
2015-12-16 15:03:40 -05:00
Mike Blumenkrantz 6eff8ab5ba edje_cc: move part desc free function within file
no funcitonal changes
2015-12-16 14:38:33 -05:00
Mike Blumenkrantz b14a06b040 edje_cc: terminate filter file scripts
==24030== Invalid read of size 1
==24030==    at 0x4A0AC77: strcmp (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x598A9DC: _eet_dictionary_lookup (eet_dictionary.c:69)
==24030==    by 0x598AA93: eet_dictionary_string_add (eet_dictionary.c:103)
==24030==    by 0x598107B: eet_data_put_string (eet_data.c:857)
==24030==    by 0x598213F: eet_data_put_type (eet_data.c:1433)
==24030==    by 0x59895AB: eet_data_put_unknown (eet_data.c:4798)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x59894A4: eet_data_put_array (eet_data.c:4760)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5989617: eet_data_put_unknown (eet_data.c:4807)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5983E06: eet_data_write_cipher (eet_data.c:2396)
==24030==    by 0x5983E92: eet_data_write (eet_data.c:2412)
==24030==    by 0x406BC2: data_thread_head (edje_cc_out.c:674)
==24030==    by 0x406D51: data_write_header (edje_cc_out.c:717)
==24030==    by 0x40B52E: data_write (edje_cc_out.c:2439)
==24030==    by 0x40563D: main (edje_cc.c:399)
==24030==  Address 0xf45cb7b is 0 bytes after a block of size 347 alloc'd
==24030==    at 0x4A089C7: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x414BAC: mem_alloc (edje_cc_mem.c:15)
==24030==    by 0x41B66A: st_filters_filter_file (edje_cc_handlers.c:4718)
==24030==    by 0x410EDA: new_statement (edje_cc_parse.c:229)
==24030==    by 0x41227C: parse (edje_cc_parse.c:719)
==24030==    by 0x412E5C: compile (edje_cc_parse.c:1044)
==24030==    by 0x405624: main (edje_cc.c:394)
==24030==
==24030== Invalid read of size 1
==24030==    at 0x4A0AC77: strcmp (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x598AAFB: eet_dictionary_string_add (eet_dictionary.c:109)
==24030==    by 0x598107B: eet_data_put_string (eet_data.c:857)
==24030==    by 0x598213F: eet_data_put_type (eet_data.c:1433)
==24030==    by 0x59895AB: eet_data_put_unknown (eet_data.c:4798)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x59894A4: eet_data_put_array (eet_data.c:4760)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5989617: eet_data_put_unknown (eet_data.c:4807)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5983E06: eet_data_write_cipher (eet_data.c:2396)
==24030==    by 0x5983E92: eet_data_write (eet_data.c:2412)
==24030==    by 0x406BC2: data_thread_head (edje_cc_out.c:674)
==24030==    by 0x406D51: data_write_header (edje_cc_out.c:717)
==24030==    by 0x40B52E: data_write (edje_cc_out.c:2439)
==24030==    by 0x40563D: main (edje_cc.c:399)
==24030==  Address 0xf45cb7b is 0 bytes after a block of size 347 alloc'd
==24030==    at 0x4A089C7: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x414BAC: mem_alloc (edje_cc_mem.c:15)
==24030==    by 0x41B66A: st_filters_filter_file (edje_cc_handlers.c:4718)
==24030==    by 0x410EDA: new_statement (edje_cc_parse.c:229)
==24030==    by 0x41227C: parse (edje_cc_parse.c:719)
==24030==    by 0x412E5C: compile (edje_cc_parse.c:1044)
==24030==    by 0x405624: main (edje_cc.c:394)

@fix
2015-12-16 14:34:20 -05:00
Mike Blumenkrantz b7cf69cd78 edje_cc: track parts for descriptions, ensure part types match when inheriting
since it's now possible to inherit parts, it's possible that inheriting from
a different part type can lead to memory errors in the case where one part
has a larger desc struct than the other

@fix
2015-12-16 14:31:49 -05:00
Mike Blumenkrantz 56469c55d9 efreet_icon_cache_create: null theme eet file to avoid double free
@fix
2015-12-16 13:40:00 -05:00
Stefan Schmidt 1872c06ff0 lz4: Update our internal copy to release r131
Clang and GCC optimizations and bug fixes. Have a look at the NEWS file for
more details.
2015-12-16 11:53:11 +01:00
Srivardhan Hebbar 1243b24f9b eina: API for base64url decode.
Summary:
eina_base64url_decode API.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D3434
2015-12-16 16:15:44 +09:00
Srivardhan Hebbar 9f99213723 eina: Added testcase for base64url encoding API.
Summary:
Depends on D414

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D3432
2015-12-16 16:11:28 +09:00
Jean-Philippe Andre 4a538ec246 Evas GL: Fix shaders for bigendian
Fixes T2918
2015-12-16 15:55:10 +09:00
Jee-Yong Um 395ed14f63 edje: add size_class test case
Summary: add edje size_class APIs' test case

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3391
2015-12-16 14:56:39 +09:00
Hein-Pieter van Braam c46ab1d864 emile: fix compilation with --enable-liblz4
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-15 17:15:46 -08:00
Mike Blumenkrantz fc4b927a83 evas: update/clarify RENDER_FLUSH callback docs 2015-12-15 17:57:37 -05:00
Mike Blumenkrantz fb8c547077 evas: do not unset/delete master clip after every frame
this is not ideal since it triggers a client-side rerender of every object
which was clipped to the master clip (double render) and then this ends up
forcing the server to rerender the same area twice as well

not only that, it causes all surface damages to to be the size of the entire
window - framespace for every frame

@fix
2015-12-15 17:24:52 -05:00
Mike Blumenkrantz 1d3c4162b3 evas: trigger FLUSH_PRE callback prior to kicking off an async render
while not occurring immediately before flush as in sync rendering, this
is functionally close enough that it will serve the purpose for which the
callback was intended, namely receiving a callback that occurs after render
update calculations have occurred but before flush happens

@fix

ref cbb447c878
2015-12-15 17:24:52 -05:00
Mike Blumenkrantz 092d7a6f3d evas: resize master clip if framespace|viewport.changed is set 2015-12-15 17:24:52 -05:00
Mike Blumenkrantz 990c23c840 evas: do not add unclipped smart members to the master clip
this is probably a pretty unlikely scenario, but messing with smart
members in this way is probably not a great idea

@fix
2015-12-15 17:24:52 -05:00
Mike Blumenkrantz 54df1d9c6a ecore-evas wayland: move frame sending to pre-flush callback
it was possible to deadlock rendering if a pre-render occurred but
the resulting render had no updated regions

@fix
2015-12-15 17:24:52 -05:00
Duna Oh cb23fd2af2 ecore-drm: Fix failure of setting/closing evdev->fd which causes fd leak
Summary:
When a input device is plugged in, _cb_open_restricted() is called before creating evdev.
So setting fd value on evdev was failed in _cb_open_restricted() and also closing evdev->fd was invalid.
Using a eina_hash which has 'path-fd' pairs, we can find fd value after evdev is created.

@fix

Test Plan:
(1) Multiple input devices are connected. Their evdev->fd remains zero or initial value.
(2) When one of those devices are plugged out, fd leak would happen.

Reviewers: raster, zmike, gwanglim, stefan_schmidt, devilhorns, ManMower

Subscribers: cedric, jpeg, Jeon, input.hacker

Differential Revision: https://phab.enlightenment.org/D3428
2015-12-15 10:28:39 -05:00