Commit Graph

12926 Commits

Author SHA1 Message Date
Thomas Guillem 3f1686d01e emotion/libvlc: fix url opening 2016-03-28 16:40:02 +09:00
Thomas Guillem b12c2a2cfd emotion/libvlc: replace libvlc_mp_is_ready with ev->started 2016-03-28 16:40:02 +09:00
Thomas Guillem a6bd5dda42 emotion/libvlc: use vlc vout display module
The vlc vout display module adds key and mouse event support. It improves
performances since a video filter is not needed anymore to scale the image, and
direct rendering with vlc avcodec module is now possible (less memcpy).
2016-03-28 16:40:02 +09:00
Thomas Guillem 50d9f63c2e emotion/libvlc: log: print vlc module and id 2016-03-28 16:40:02 +09:00
Thomas Guillem 7d3e96757d emotion/libvlc: fix C89 2016-03-28 16:40:02 +09:00
Thomas Guillem f5296e8afc emotion/libvlc: set libvlc args from "EMOTION_LIBVLC_ARGS" env 2016-03-28 16:40:02 +09:00
Thomas Guillem 941ccc4324 emotion/libvlc: fix video/audio/spu mute 2016-03-28 16:40:02 +09:00
Thomas Guillem f04903119c emotion/libvlc: set libvlc_log static 2016-03-28 16:40:02 +09:00
Jean-Philippe Andre cb93c26db7 Evas proxy: Implement buffer map/unmap 2016-03-28 16:40:02 +09:00
Jean-Philippe Andre 22353e31e1 Efl.Canvas.Image: Remove object data for maps
The engine is responsible for the complete tracking of
maps.

Also, make buffer_unmap return bool.
2016-03-28 16:40:02 +09:00
Jean-Philippe Andre ba4ffba8c1 Evas: Add a test case for image buffer_map.
This:
1. opens a file
2. maps its data and vaguely verifies it
3. writes data to it
4. writes data to it with a GRY8 map
5. verifies that the final image has all the proper pixels
2016-03-28 16:40:02 +09:00
Jean-Philippe Andre 488854af2b Efl.Gfx.Buffer: Switch to void* data and signed ints
1. unsigned char* as a return type was not even compatible
   with the default colorspace (ARGB: 32 bits).

2. Change all unsigned to int for... uh... simplicity
   unsigned is more correct than int for things like width,
   size or stride, but in fact having both ints (x,y) and unsigned
   ints makes the code more complex.
   This is a matter of personal taste.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre d5b0b1e683 Evas: Add SW engine map/unmap functions
Also, fix some of the code using them.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 078117d367 draw: Import or implement some colorspace conversion routines
Those and many more will be required for proper map/unmap support.
There will be problems with planar formats:
  YUV, RGB565_A5P, ETC1_ALPHA

The quick solution to this problem is to not support region
conversions, only full-image (so we can assume the location of
the various planes in memory).
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 39a970835b Evas: Remove unimplemented border_set/get (engine internal) 2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 28a03d6e19 Evas: Remove unimplemented image comment (internal)
This is a minor cleanup of RGBA_Image.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 8b9f525c01 Evas.Image: Add ERR in long-deprecated functions
- evas_object_image_data_convert()
- evas_object_image_pixels_import()
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 326ff9ae82 Efl.Canvas.Image: Implement support for map/unmap
Now the real hard work is to actually implement support inside
the engines: SW and GL generic.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 91e0bdb1e7 Evas: Simplify direct access to image data
This should avoid issues with image_data_get from the engines,
when we really just want to fetch the original data pointer.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 08c1160888 Efl.Canvas.Image: Implement raw data_set/copy/get
No more refcount. This is only to initialize the data from
an external buffer. data_get will only work if data_set was
used (not even copy_set).
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre f78cbac9e6 Evas.Image: Remove buffer_set/get
This will be properly implemented by the subclasses. In particular,
map/unmap will be used where it makes sense, and data_get/set will
be limited to Efl.Canvas.Image and Surface.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre d4e713a18c Evas.Image: Move stride.get away from Evas.Image
stride does not apply to all image objects, eg. proxies or 3d scenes.
it will be implemented by the classes that support stride and pixel
data access
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 0d41ad0c83 Emile: Move colorspaces to Efl.Gfx
A small hack to the toolchain allows us to generate enums with eolian
for use by Eet and Emile (internal or otherwise non-eo libraries).

Thanks to how BUILT_SOURCES works, the eo.h files required by Emile
will be generated before they are used.

This adds a partial dependency on eo for eet and emile:
 - package dependency
 - include dependency

There is no library link dependency.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 83b8b8c958 Evas.Image: Move data_set/get to legacy file
Those functions will be replaced by map/unmap
2016-03-28 15:53:15 +09:00
Jean-Philippe Andre 015554e57e Evas 3d: Hide warning with clang
An otherwise good looking macro triggers a warning with clang,
because of self comparison of constants (always true or always
false). Let's just silence the warning in this specific spot
with a pragma.
2016-03-28 15:53:15 +09:00
Jee-Yong Um 984a8f7f90 edje_cc: support hexadecimal color code
Summary:
Support hexadecimal color code in EDC.

Four types of color code are acceptable.
All values below mean 'Red'. (255 0 0 255)
   color: "#F00";
   color: "#F00F";
   color: "#FF0000";
   color: "#FF0000FF";

Color code tables are usually provided with hexadecimal numbers.
Supporting hexadecimal color code will allow developers to skip
manual conversion hex to decimal.

Test Plan: Test case will provided with seperated commit.

Reviewers: cedric, jpeg, raster

Reviewed By: raster

Subscribers: raster

Differential Revision: https://phab.enlightenment.org/D3831
2016-03-28 15:43:04 +09:00
Daniel Zaoui 0d85c86e1d Test/Clock: fit Exactness requirements
The clock is directly set in edit mode, so the clock can't progress and
confuse Exactness scenario.
2016-03-27 13:26:15 +03:00
Daniel Zaoui cd1c3e0da7 Clock: adapt test to fit Exactness requirements
Exactness doesn't support mouse clicks pausing/resuming the clock.
Taken shots are not stable and display a different time.
2016-03-27 11:40:57 +03:00
Carsten Haitzler 4d6a8a7fce evas sw render: cutout rects may be used in multiple threads
several draw funcs keep a static Cutout_Rect *rects = NULL; variable
to cache cutout rects to avoid re-allocating them a lot etc. this is
fast and handy but we may use these from multiple threads. thats bad
.... mmmkay. so this fixes it the dirty way - makes them thread local.
:)

this fixes T3348 - the crash mentioned by @zmike

@fix
2016-03-26 10:52:14 +09:00
Carsten Haitzler 2261964ca2 elm - fix elementary test pkgdatadir to be right so icons work etc. 2016-03-25 15:36:45 +09:00
Carsten Haitzler 1c2a5cec93 elm: fix window resize self-trigger
so there was/is a case where when an elm window is resized from
outside, it will happen to use the last known size (maybe old) and end
up requesting a resize to that size again itself. it basically
triggers its own resize request as a result of resize events. this
fixes that and stops the loop

@fix
2016-03-25 15:11:38 +09:00
Cedric BAIL 77421cde47 elementary: fix directory discovery to properly locate your theme. 2016-03-24 14:55:14 -07:00
Mike Blumenkrantz 5edd64c849 embryo: don't mess with env vars in tzdate if no tz is passed 2016-03-24 17:37:50 -04:00
Stefan Schmidt aac7ada79d build elm: do not use libtool library flags for elm binaries
These binaries do not need the libtool library flags. This could actually lead
to problems. We already got a warning for one:

libtool: warning: '-version-info' is ignored for programs
2016-03-24 21:35:27 +01:00
Stefan Schmidt 9e5e69da4c elm_map: remove unused variables 2016-03-24 21:31:24 +01:00
Mike Blumenkrantz 25f0de1147 elm_win: monitor wl CONFIGURE events and unset resizing flag accordingly
resolves inability to resize again after resizing

@fix
2016-03-24 15:39:08 -04:00
Mike Blumenkrantz 2749775c74 elm_win: force resize during show if job is pending
this resolves the issue of all elm windows being created at 1x1 and
immediately resizing to another size after being shown, causing all
kinds of failures in various environments

@fix
2016-03-24 15:39:08 -04:00
Tom Hacohen 5bcb9fe528 Merge Elementary into the EFL
Some things may still be broken, but Cedric will progressively fix
things as they pop. Default configuration works as expected.
2016-03-24 18:50:47 +00:00
Cedric Bail 73895f5249 elementary: remove useless Makefile.am and force file in the correct place. 2016-03-24 11:23:11 -07:00
Cedric Bail 0f5c30f4f2 elementary: add tests back in. 2016-03-24 11:23:11 -07:00
Cedric Bail fe83a09b67 elementary: disable some ATSPI test that I can't figure out why they fail. 2016-03-24 11:23:11 -07:00
Cedric Bail 14ec825aa9 elementary: search ELM_DATA_DIR environment for themes. 2016-03-24 11:23:11 -07:00
Cedric Bail 1db421c33e elementary: enable compilation of binary. 2016-03-24 11:23:10 -07:00
Cedric BAIL b0df722819 elementary: initial compilation of the library only. 2016-03-24 11:23:10 -07:00
Derek Foreman 0c388f386e ecore_evas: change ECORE_EVAS_RENDER_SYNC to NOSYNC and non-default
Summary:
commit f9e6550468 Changed the RENDER_SYNC
the default behaviour (previously it was something you had to
change source code to set that way)

This leads to massive amounts of tearing with the drm and gl_drm backends,
as they no longer wait for vblank before rendering.

I've changed the env var to ECORE_EVAS_RENDER_NOSYNC and made it
non-default as it used to be.  People can set the env var to disable
frame limiting instead of having to set an env var to enable it.

Frame limiting really should be the default behaviour.

Reviewers: zmike, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3829
2016-03-24 12:15:57 -04:00
JengHyun Kang 1a27f1274e ecore_wayland: Add a new API to get keymap - ecore_wl_input_keymap_get()
Summary:
Each Ecore_Wl_Input structure has there own keymap.
         This keymap is struct xkb_keymap used in libxkbcommon lib and
         the client can get this keymap from server in wayland system.
         So if the client want to get keymap and use some libxkbcommon APIs,
         use this API to get keymap.

Test Plan: Use this api after initialize wayland system.

Reviewers: raster, zmike, ManMower, devilhorns

Reviewed By: devilhorns

Subscribers: input.hacker, ohduna, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3819
2016-03-24 08:53:15 -04:00
Jihoon Kim 161883291c ecore_imf/wayland: fix IME flickering issue when input_panel_hide and show is called sequentially
Change-Id: Ieafa9cd921cc8d68c64af6b72404ef52e7bbf724
2016-03-24 20:46:15 +09:00
Jiwon Kim c23283944b Evas textblock: fix null-derefernce in _style_match_tag()
Summary:
add null check in _style_match_tag()
if evas_object_textblock_text_markup_set() is called with markup text before setting style,
segmentation fault is occurred in _style_match_tag()
@fix

Test Plan:
Insert this situation to test suite
 -> test id : evas_textblock_simple

Test for without this patch:
 1. apply patch just "src/tests/evas/evas_test_textblock.c" partially.
 2. $make check

Test for with this patch:
 1. apply this patch completely (2 files)
 2. $make check

Reviewers: id213sin, herdsman

Subscribers: Blackmole, cedric, jpeg

Projects: #efl

Differential Revision: https://phab.enlightenment.org/D3818
2016-03-24 10:17:57 +02:00
Jean-Philippe Andre 959e6de3e7 Evas 3d: Fix typo in previous commit
I didn't reject so I can push this now.
2016-03-24 11:12:30 +09:00
Oleksandr Shcherbina 35a64ecae7 evas.canvas3d: Remove repeated code in e3d_drawable_new function
Reviewers: cedric, Hermet, raster

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3824
2016-03-24 11:07:54 +09:00
Jean-Philippe Andre b564c1f0ae Edje: Fix eo error with call to invalid image method
Only Efl.Canvas.Proxy implements efl_canvas_proxy_source_clip_set.
Legacy image objects should use legacy APIs.

Thanks @zmike for the report and sorry I never saw the ERR myself :(

Fixes T3342
2016-03-24 10:34:52 +09:00
Cedric BAIL f9a6947059 eolian: temporary disable strict mode as elementary can not be built with it. 2016-03-23 17:12:58 -07:00
Cedric BAIL 91367f2c11 elementary: merge configure logic. 2016-03-23 16:00:47 -07:00
Cedric BAIL b1f28ef697 elementary: removing webkit2 module as it should now be built outside of tree.
A later new repository will show up with it.
2016-03-23 14:05:36 -07:00
Cedric BAIL c2a1c49ab2 elementary: move all legacy files to their expected new location. 2016-03-23 13:24:41 -07:00
Stefan Schmidt 46d066d074 tests: add dependency on simple.eo.hh for new eina_cxx iterator test
With commit fd0cf8b764 we got a new test for
eina_cxx iterator. Like some other tests it needs to have the eimple.eo.hh
header already generated. Make sure we note this dependency in the build as
it fails without.
2016-03-23 16:55:03 +01:00
Tom Hacohen fea8913633 Ecore: Move all of the duplicate type definitions to ecore_types.eot. 2016-03-23 15:05:20 +00:00
Tom Hacohen 2583246997 Ector: add ector_types.eot for ector type definitions.
This fixes the GLShort duplicate declaration.
2016-03-23 15:00:16 +00:00
Stefan Schmidt 13ae999211 examples: adjust include path for headers no longer public headers
Since commit a4f0f08399 these header files are
no longer installed. Make sure the example have the correct path to actually
find teh files. If we no longer consider them public we might want to think
about removing the examples for them.

This commit fixes the examples build only.
2016-03-23 15:34:54 +01:00
Stefan Schmidt 41e26be07a examples: mark unused argument to avoid warning 2016-03-23 15:34:54 +01:00
Boris Faure 65892e2d8a evas_object_textgrid: try bolditalic if original is book 2016-03-23 15:32:50 +01:00
Boris Faure bdec343985 evas_object_textgrid: also try bold font when original is of weight Book
and add debug
2016-03-23 15:28:13 +01:00
Daniel Hirt 4013dccda6 Evas font: fix width calc in last_up_to_pos
Width calculations should consider the x_bear. This has been leading to
inconsistent results between wrapping calculation during layout and the
final formatted size.

Also, we should stop our walk only when exceeding 'x', so changed "<="
to "<".

@fix
2016-03-23 15:31:20 +02:00
Shuhrat Dehkanov 7e411ecf76 Docs: change 'emittion' to 'emission'
Reviewers: cedric, stefan_schmidt

Subscribers: minkyu, cedric, seoz, jpeg

Differential Revision: https://phab.enlightenment.org/D3823
2016-03-23 11:22:44 +01:00
Ji-Youn Park fa9bdaa196 Efl_file: add more information into the documentation 2016-03-22 21:04:02 +08:30
Jean-Philippe Andre 2ba92c07e9 Evas: Add missing cspaces to data_get/put (sw engine)
Also, remove abort() in default case. Leftover abort()
can actually make applications crash.
2016-03-22 14:16:15 +09:00
Jean-Philippe Andre b82382e958 evas: NEON scaling up fixed
Summary:
Previous implementation loaded data from memory first and then checked the borders.
Here I check the borders first as it is for C implementation.
This prevents read of non-accessible memory.

Reviewers: cedric, jypark, Hermet, jiin.moon, jpeg

Reviewed By: jpeg

Projects: #efl

Differential Revision: https://phab.enlightenment.org/D3809
2016-03-22 13:49:05 +09:00
Ji-Youn Park f9e6550468 ecore_evas: change RENDER_SYNC from define to env
outside needs to turn on/off RENDER_SYNC feature.
env val: ECORE_EVAS_RENDER_SYNC.
2016-03-22 12:23:37 +08:30
Cedric Bail e8bbb29499 Revert "edje: seems like preloading is fixed and we can now run edje_cc in //"
This reverts commit e6a27e13b5.

While preloading itself is fixed, we forgot a little detail there is limit to
the amount of files we can open on any system. This is high enough on Linux that
we never see the issue, but on MacOS X, we can't even build elementary theme.

Reverting this for now and until we have a proper fix for this.
2016-03-21 19:46:30 -07:00
Cedric BAIL fd80e26f06 evas: make no longer supported object, legacy only.
So I forgot to clean my hard drive from previously generated files,
and obviously everything still worked. This lead to having to roll back
evas_smart_clipped.eo as a public eo object until we merge elementary.

Still I would like someone to take a look at elm_pan.eo and figure out
how to not rely on smart clipped there.
2016-03-21 16:31:26 -07:00
Cedric BAIL 135f6ebeb8 evas: actually we still do need those header for the legacy API 2016-03-21 16:03:36 -07:00
Cedric BAIL a4f0f08399 evas: disable installation of no longer supported Eo object for EFL 2.0. 2016-03-21 15:02:01 -07:00
Vitor Sousa 3e7f4c1dae eina_cxx: fix Coverity warning regarding uninitialized iterator member 2016-03-21 17:30:49 -03:00
Chris Michael 6a1a1305b5 evas-wayland-shm: Fix rotation for wayland shm engine
Prior to this fix, window rotation was not operating correctly and the
surface contents would get rendered at the wrong size and position.
This patch fixes the engine so that rotation operates properly now.

NB: Tested with the Window States(2) test in elementary

Thanks to shiin for reporting :)

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-21 09:29:32 -04:00
Jihoon Kim ce17d5d987 ecore_imf/wayland: use default preedit style
Change-Id: Iffb2d450923bbde191c4928253f133b13608a8e8
2016-03-21 19:51:31 +09:00
Boris Faure 214883f099 eina_file: move doc block about eina_file_path_join from inline to file.h 2016-03-19 15:57:46 +01:00
Ji-Youn Park 7ebeec3dec Evas.Draggable_Interface: add drag_target property
object can set this property true if object can be target of dragging content.
2016-03-19 09:44:51 +08:30
Vitor Sousa afb6646393 efl js: Add clean up callbacks to deallocate memory used in v8::External
Add several garbage collector callbacks for cleaning allocated C and C++
data used inside v8:External objects.

Fix eo_unref of already freed object in eo_js_construct_from_eo.hh.

Ensure all structs are allocated with malloc.

Add test for garbage collection.
Had to created .sh script because shebang clause do not support multiple
arguments.
2016-03-18 17:47:09 -03:00
Vitor Sousa a6025b5d27 efl js: Finish Eina_Iterator binding 2016-03-18 17:47:09 -03:00
Lauro Moura 1422e62f30 efl js: Fix naming of manual binding functions.
Also removed references to the discarded manual binding "ecore_js_file".
2016-03-18 17:47:09 -03:00
Vitor Sousa c7550b2964 eina_cxx: Add missing methods to Eina C++ wrappers
Also fix release_native_handle type error on mutable ranges.
2016-03-18 17:47:09 -03:00
Vitor Sousa fd0cf8b764 eina_cxx: Add specialized eina::iterator for Eo* wrappers
Add specialization of eina::iterator for Eo* C++ wrappers.

Specialize ibegin/iend methods in eina::list and eina::array of
Eo* wrappers to use the new eina::iterator.

Add unit test.
2016-03-18 17:47:09 -03:00
Vitor Sousa a85348b70b efl js: Update Javascript binding to compile with new Eolian API
Reword test method names to check naming convention.
2016-03-18 17:46:38 -03:00
Oleksandr Shcherbina bd200cefc4 evas.canvas3d: fix wrong output in evas-3d-pick example
Summary:
Since that
https://git.enlightenment.org/core/efl.git/commit/?id=c850cc0d80b754be851576083eba27a72b58b9f2
we don't use scene object for recalculation pick coordinates.
@fix

Reviewers: cedric, Hermet, raster

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3806

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-18 11:55:07 -07:00
Jee-Yong Um 20c9d087d1 edje_cc: make script_override default value as EINA_FALSE
Summary:
script_override variable is initialized as EINA_FALSE
when group is created, but assign EINA_TRUE can mislead
some developers to think script_override default value
is EINA_TRUE.

Reviewers: Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3803

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-18 11:52:55 -07:00
Cedric Bail 11887c62a2 evas: include Eet.h as we do export a function using Eet_Data_Descriptor.
This was spotted by Nicolas Aguirre while building on Yocto which has
more agressive build option and warning.
2016-03-18 10:23:38 -07:00
Nicolas Aguirre 290fc88e3f evas: add eglfs evas module.
EGL Fullscreen is a module intended to support many proprietary GL driver that come
with custom API to create framebuffer/window. This one is starting by covering Android
with libhybris/hwcomposer. Later on, it should be able to support easily the Raspberry Pi
driver.

At this moment this does not work properly. Activate it at your own risk ! Do not report
bug if you don't know what you are doing :-) A backend for Ecore_Evas will come later on
along with a patch for Ecore_FB to use libinput. Finally a few patch should hopefully
enable this backend to work and compile more easily (relying on proper header detection
and dlopen/dlsym for access to proprietary function).

You can read more about the goal of this patch by reading our wiki at :
https://phab.enlightenment.org/w/boot2efl/

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-18 10:17:49 -07:00
Chris Michael 6418810307 evas-wayland-shm: Override image_native init and shutdown functions
A previous commit added these functions so we can test if native image
is supported, however that commit did not actually override this
functions (evas api override). This small patch simply does that.

ref 20b4d9dd6a

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-18 08:53:35 -04:00
Chris Michael 67db4d7c1a evas-wayland-egl: Override image_native init and shutdown functions
If we are going to define native_init & native_shutdown functions,
then we should probably be using them ;) Also, as this is a wayland
egl engine, we can return from native_init based on
eglQueryWaylandBufferWL

ref 20b4d9dd6a

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-18 08:50:54 -04:00
Vitalii Vorobiov e64c30caab edje_edit: program's source and signal CAN be NULL
Or else user can't remove them, only by writing source/signal like "" or some
gibberish which is still getting interprettered as source and signal
2016-03-18 14:00:51 +02:00
Jean-Philippe Andre 72363b4777 tests: Remove unused variables (evas_image) 2016-03-18 13:53:39 +09:00
Jee-Yong Um 4a63c917aa edje_cc: fix inheriting script from other group
Summary:
If a group inherits from the other, group script block is copied
only when there are program script blocks in parent group.
This patch makes edje_cc always copies group script block,
but allows to override group script block in child group.
The content of reverted D3799 is included. That reveals this inconsistency.

Reviewers: cedric

Subscribers: Jaehyun_Cho, woohyun, jpeg

Differential Revision: https://phab.enlightenment.org/D3802
2016-03-18 13:30:55 +09:00
Jean-Philippe Andre b8f682b842 Efl.Gfx.Fill: Rename filled to fill_auto
fill_filled is a strange name for the property.
fill_auto seems to make more sense. If you disagree, scream at
me or revert this commit.
2016-03-18 13:28:45 +09:00
Jean-Philippe Andre 9d4ca6f352 Evas.Image: (eo) fill_set now unsets the filled flag
There's no point in calling fill_set AND fillet_set(false).
If a users wants to specify the fill, that should be enough
to switch to non-filled mode.

Maybe the "filled" mode should even be called auto or something?
2016-03-18 13:28:45 +09:00
Minkyoung Kim bc2b32cba7 evas/gl_x11 : Move engine data to native.
Summary:
If 2 evases refer to same pixmap, use same EvasGL_Image.
But EvasGL_Image can have only one engine data.
When evas related to native is destroyed and another evas use that native, crash occur.
So native callbacks need to be independent to engine data.

Test Plan: mobile, local test

Reviewers: cedric, spacegrapher, wonsik, jpeg

Reviewed By: jpeg

Differential Revision: https://phab.enlightenment.org/D3800
2016-03-18 13:28:45 +09:00
Jaehyun Cho 4e0cff107e Revert "edje: remove unnecessary repetition during copying code"
This reverts commit 37408aef95.

This commit is reverted temporarily to prevent build fail.
This commit reveals the hidden bug when elementary theme is built.
This commit will be applied after the hidden bug is resolved.
2016-03-18 11:31:45 +09:00
Cedric BAIL 5f908de18d evas: fix access to possibility undefined function. 2016-03-17 16:12:51 -07:00
Oleksandr Shcherbina dcd5fb7835 evas.canvas3d: example using static LOD
Summary:
Example using static LOD in evas.canvas3d
It should be applied after D3731

Reviewers: Hermet, raster, cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3732

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-17 11:53:26 -07:00
Jee-Yong Um 37408aef95 edje: remove unnecessary repetition during copying code
Summary: Code doesn't need to be copied every time when program is copied.

Reviewers: cedric

Reviewed By: cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3799

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-17 11:53:26 -07:00
Hosang Kim 264ccb13ed edje: add fixed automatically for optimizing edje calc speed.
Summary:
Applications usually use edje syntax like as,

```
 part { name :"bg";
     type: SWALLOW;
     description {
          state: "default" 0.0;
          rel1.relative: 0.0 0.0;
          rel2.relative: 0.0 0.0;
          align: 0.0 0.0;
          min: 100 100;
     }
 }

```
But edje does not calculate it exactly without "fixed: 1 1".
So edje calculation is repeated until 4000 x 4000, it is waste of time.

Reviewers: woohyun, raster, Hermet, id213sin, cedric

Reviewed By: cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3801

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-17 11:53:26 -07:00
Mike Blumenkrantz 08d72bf85f edje: do not emit selection,start twice when running select all
@fix
2016-03-17 14:18:29 -04:00
Jean-Philippe Andre 0ac87d6a91 Efl.Canvas.Image: Add forgotten files!
Oh...
2016-03-17 14:14:06 +09:00
Jean-Philippe Andre ca65f66fc0 Efl.Canvas.Surface: Fix linking of inexisting functions
The EO files specified some functions that were not implemented.
Somehow this links fine with recent GCC but older versions have
trouble.
2016-03-17 14:02:26 +09:00
Jean-Philippe Andre 8c398c365c Evas.Image: Simplify inheritance tree of image classes
This is a bit artificial, as all image objects are still based on
the Evas.Image main class. The inheritance tree alone does not
give much information on what features are supported by which
class (eg. only Efl.Canvas.Image supports the file interface for
file_set).
2016-03-17 13:10:35 +09:00
Jean-Philippe Andre 8367f497b8 Evas.Image: Create Efl.Canvas.Image for file & data images
This replaces standard Evas_Object_Image when it is used "normally",
ie. it's an image from a file or from a pixel buffer. All other APIs
(proxy, snapshot, 3d, gl, ...) are disabled on this object.

Also, reduce number of failing calls when the object is not a legacy
object, but a legacy function is called. This is because a lot of
image APIs are called internally using the legacy APIs, often in
order to reset the state of the image object (eg. set file to NULL,
etc...)
2016-03-17 13:10:35 +09:00
Jean-Philippe Andre edafd4ec34 Evas: Improve EVAS_OBJECT_LEGACY_API a bit more
This now calls EINA_SAFETY_ERROR which makes it easy to then
break inside _eina_legacy_error.
2016-03-17 13:10:35 +09:00
Jean-Philippe Andre 6ac68c9252 Evas.Image: Move all legacy EAPI out of evas_object_image.c
Some of these functions are still be in use by the new EO objects,
like data_set/get/copy_set.
2016-03-17 13:10:35 +09:00
Jean-Philippe Andre 6b03d46d54 Evas.Image: Fix ERR message (invalid call)
There was an unintended change from a silent return to EINA_SAFETY
inside _evas_object_image_free(). This avoids calling the function
altogether.
2016-03-17 13:10:35 +09:00
Stefan Schmidt e981bfc4e8 cxx: follow eoid to eo_self rename in cxx generator and bindings
Bringing efl back to a building state with cxx enabled.
2016-03-16 21:11:17 +01:00
Chris Michael 7cbd8c7b93 evas: Fix incorrect expression in efl_canvas_surface_x11
This patch fixes an issue detected by Coverity where 'obj' is written
twice with the same value

CID1353363

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-16 09:24:20 -04:00
Chris Michael df12843512 evas: Fix incorrect expression in efl_canvas_surface_tbm
This patch fixes an issue detected by Coverity where 'obj' is written
twice with the same value

CID1353365

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-16 09:22:46 -04:00
Chris Michael 114d010fc1 evas: Fix incorrect expression in efl_canvas_surface_wayland
This patch fixes an issue detected by Coverity where 'obj' is written
twice with the same value

CID1353365

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-16 09:21:08 -04:00
Oleksandr Shcherbina 296e8c22b0 evas.canvas3d: support static LOD technic
Summary:
Main flow: add several meshes(with different number of polygons) in one node,
enable LOD for node, set boundary distances to choose need mesh depend on distance
to the camera node, render only need mesh. Add API's enable lod in
evas_canvas3d_node module and set boundary distance to module
evas_canvas3d_mesh module Refactored function evas_canvas3d_node_mesh_collect
to calculate distance. Refactored _scene_render to have possibility pass to the
render only need LOD mesh.

Reviewers: cedric, Hermet, raster

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3731

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-15 12:49:39 -07:00
jiin.moon cdb7286485 evas: some changes for preload thread dead lock issue
Summary:
Add spin lock to access to new flag can check to
status of the preload

Reviewers: jpeg, cedric, jypark

Subscribers: raster

Differential Revision: https://phab.enlightenment.org/D3775

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-15 11:57:25 -07:00
Jee-Yong Um bdde588b16 edje: remove redundant fetch code in file.set method
Summary:
Edje data structure is passed as a parameter, but in file.set method
_edje_fetch() is called one more time unnecessarily.

Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3788

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-15 11:39:59 -07:00
Jee-Yong Um afb49ec096 edje_cc: remove unnecessary internal function
Summary:
This internal function was made for checking non-existence of
Edje Part when handling insert_before/after attributes.
However, checking is implemented in different way and this function
is not used anywhere.

Reviewers: cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3790

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-15 11:31:33 -07:00
Jee-Yong Um 4c2628b03e edje: fix wrong char in error message
Summary: fix wrong char in error message of _edje_real_part_image_set()

Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3792

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-15 11:29:54 -07:00
Jee-Yong Um a91d5e8f72 edje_cc: fix typo in error message
Summary: meaningless suffix is attached to a word in error message.

Reviewers: cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3794

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-15 11:24:31 -07:00
Hosang Kim 544bd91e5f edje_cc: fix group inheriting
Summary:
When edje_cc inherits group, group's script wasn't copied.
So base group and inherited groups use same pointer.
When edje_cc makes lookups for script, loopkups is overwritten.

Test Plan: elementary_test -> shown error log

Reviewers: Hermet, woohyun, cedric, raster

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3796

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-15 11:23:32 -07:00
Oleksandr Shcherbina 48f75713e5 eina: fix eina vector in case output vector the same as target vector
Summary:
Use aditional temporary vector for intermedia results in case output vector
the same as target vector in functions:
eina_vector2_transform,
eina_vector2_homogeneous_direction_transform,
eina_vector3_cross_product,
eina_vector3_transform,
eina_vector3_homogeneous_direction_transform
It was in original version (in evas_vecN, module evas_3d_utils.h)
Enrich test suit for this case.

Reviewers: jpeg, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3795

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-15 11:20:55 -07:00
Tom Hacohen 8706d03b43 Change the EFL according to the renaming of the eo_add() current object. 2016-03-15 15:25:54 +00:00
Tom Hacohen bd2a9015c3 Eo: eo_add(), change current object's name (api).
It was temporarily eoid, change it to eo_self which is more
descriptive. In this process I also made it a macro to prepare
for the proposed changes on the ML for the fallback implementation
for compilers that don't support the compound statements returning
values gcc extension.
2016-03-15 15:22:17 +00:00
Jean-Philippe Andre 2b249423e7 Efl.Gfx.View: Try to document view_size
This is not easy as the view size might have different meanings.
Also, it's just not quite clear in my mind what it is :)
2016-03-15 11:27:15 +09:00
Jean-Philippe Andre b239098441 Efl.Image: Move alpha to Efl.Gfx.Buffer
The buffer class is more low-level and alpha is a pretty
common property. I still wonder how to share it with the canvas
and other things.

It doesn't belong to Efl.Gfx.Base since we could have plain old
buffers that are not evas objects (only in-memory buffers) but
Efl.Gfx.Base may also need the alpha flag.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 97c9ced648 Efl.Gfx.Buffer: Simplify data_get/set
Remove alpha, l, r, t, b and output length. Those are simply
too many parameters, making the function too inconvenient to use.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 055ea6445a Evas image: Move content_hint and scale_hint to Efl.Image 2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 35f8d81d97 Evas image: Deprecate evas_object_image_alpha_mask_set 2016-03-15 11:11:59 +09:00
Jean-Philippe Andre b7e0eec089 Evas.Image: Fix legacy proxy API 2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 0c95b69474 Evas.Image: Move native surfaces to Efl.Canvas.Surface
X11, TBM and Wayland support are implemented for now.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 20b4d9dd6a Evas engines: Add internal functions for native images
- image_native_init
- image_native_shutdown

init() will be used to test whether the engine supports a
certain type of native image.

Note: Native image support is very much dependent on the engine,
and some stuff like opengl should work everywhere (even in sw
with osmesa) but that's not the case.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre a58a3532e3 Evas.Image: remove video surface
Video stuff should move to a proper player class. I still wonder
how exactly Tizen video should be handled, as they continue to
reject emotion.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 8ec48dc268 Edje: Fix warning with clang
Annoying incomplete initializer warning. Apparently gcc/clang
don't consider {0} as good enough for "initialize everything to 0"
even though they do it.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre caf68f14af Examples: Update evas object eo example 2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 7ddb73b177 Evas: Move 3d to Efl.Canvas.Scene3d
This still seems a bit redondant with the underlying
Evas.Canvas3d.Scene class.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre bd7af3ecfe Edje: fix tests snap 2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 06cf9e6bea Evas.Image: Complete implementation of proxy and snapshot
This moves the EO APIs away from Evas.Image and adds the required
legacy bindings.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 68beccd1a9 Evas.Image: Add new classes Snapshot and Proxy
Efl.Canvas.Snapshot and Efl.Canvas.Proxy are specialized
classes previously implemented as features of Evas.Image.

Note: this half of the work, as I suffered from a bad
merge and rebase with my work branch on top of master.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 0fc0db0020 Evas: Add internal macro EVAS_OBJECT_LEGACY_API
This checks whether the object was created with a legacy
API, ie without not using eo_add directly. This will be used
to help with the transition from EAPI to EO APIs, as some EAPIs
should not be used with the new EO types (eg. file_set on a
Proxy object).

By default it doesn't do anything besides ERR().
In DEBUG mode, it will return immediately.

The macro will return if eo_obj is NULL.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre c52a53c3dc Evas Image: Implement Gfx.Buffer get/set/copy_set APIs
Those APIs should provide a cleaner interface than the
old data_set/data_get APIs, by making sure the operations are
atomic (ie. no need to call size_set, cspace_set and then data_set).

padding/duplicated borders are not supported.

TODO: Implement legacy API on top of the new API, instead of
      this quick patch
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre ba53f0e785 Efl.Gfx.Buffer: Introduce buffer_set/get/copy_set
Hopefully the doc and signature are better than the current
evas image equivalents data_get/data_set.

Those APIs are not like map/unmap so we need to decide which
model we prefer.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre b458341a13 Efl.Gfx.Buffer: Add interface skeletton 2016-03-15 11:11:59 +09:00
Jean-Philippe Andre e3de15d726 Efl.Image: Fix documentation for ratio + implement in evas image 2016-03-15 11:11:59 +09:00
Jean-Philippe Andre fd2c4b4a26 Evas image: Create interface Efl.Image.Animated
This interface groups all low-level animated image functions.

FIXME:
- Rename to Efl.Image.Animated once eolian is fixed
- Fix mess with emile enum (loop_hint)
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 544ae716ed Efl.Image: Improve documentation a bit
This interface needs to be extended and cleaned up... this will
happen in the following patches.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre b5d87aef1c Efl.Gfx.View: Rename property size to view_size
size is an insanely generic name, so there would be clashes
in language bindings. Use eo_prefix.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 2d10127524 Evas image: Move filled property to Efl.Gfx.Fill and set as default
The filled property should be set to true by default since it
makes more sense. Legacy APIs behaviour is preserved by setting
the default to false.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre e9508ea80e Efl.Gfx.Fill: Remove fill_spread
It's not actually implemented anywhere. There's a flag that's
never read. Proper support would require quite some work.

Once we actually implement fill_spread support, we can bring
the API back without breaking compatibility.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre b640cb5ba9 Evas filters: Simplify evas_filter_dirty
Objects can mark themselves as changed rather than having all this
duplicated code inside the mixin.
2016-03-15 11:11:59 +09:00
Thiep Ha 9c204eb369 ecore_evas_cocoa: correct focus handlers
Focus handlers are set incorrectly.
It causes windows process focus when they are acttually unfocused.
This patch corrects it.

Signed-off-by: Thiep Ha <thiepha@gmail.com>
2016-03-15 08:15:05 +09:00
Cedric BAIL 0ff7429ea7 evas: move Evas_Polygon to become Efl_Canvas_Polygon.
TODO: add support for 2 points (aka line).
2016-03-14 15:12:52 -07:00