Commit Graph

10673 Commits

Author SHA1 Message Date
Daniel Kolesa e9a0904768 eolian: allow trailing comma on last enum item (just like C) 2015-07-03 15:19:12 +01:00
Daniel Zaoui 2216ed6c85 Interfaces: fix event name
zoom,change is the name used in efl and elementary, not zoom,changed

@fix
2015-07-03 10:38:01 +03:00
Mike Blumenkrantz 46f546c43e eina: don't return NULL silently when creating new tilers 2015-07-02 14:18:21 -04:00
WooHyun Jung ea6a31ac55 Evas gl_common: Fix up error handling 2015-07-02 21:54:51 +09:00
Carsten Haitzler f33161c9ea ecore animators - improve accuracy by having a thread do animator timing
this will cause animators to be more accurate now with timing coming
from a dedicated thread whose only reason in life is to trigger timed
wakeups. the wakeup time is even adjusted with fmod to the exact
frametime slot that is expected
2015-07-02 18:24:18 +09:00
Jean-Philippe Andre 2a46280e1e Revert "Evas gl_cocoa: remove code duplicated from gl_generic"
This reverts commit 681c8b0ec2.

@cedric pointed me out that gl_cocoa doesn't depend on gl_generic,
so this commit was not very smart.
2015-07-02 16:00:40 +09:00
Jean-Philippe Andre 225b33451b Evas.Image: Simplify logic (trivial change) 2015-07-02 15:47:25 +09:00
Jean-Philippe Andre 32dc8f092c Evas.Image: Deprecate some functions and remove from Eo
This patch deprecates the following functions:
- evas_object_image_data_convert
- evas_object_image_pixels_import
- evas_object_image_reload

I could not find any place where they are used.

The old documentation is kept in the header, but not as a doxygen
anymore.
2015-07-02 14:32:07 +09:00
Jean-Philippe Andre b5c9350805 Evas: Replace image_map_surface_free by common image_free
Those two functions were doing exactly the same thing[1], which
is free an image, so this commit only attempts to simplify the code
a little bit.

[1] Actually image_map_surface_free() might even not have worked
properly with cserve2 sw (calling unload instead of close).
2015-07-02 12:05:50 +09:00
Jean-Philippe Andre 681c8b0ec2 Evas gl_cocoa: remove code duplicated from gl_generic
Remove the two functions:
- image_data_get
- image_data_put
2015-07-02 11:58:50 +09:00
Jean-Philippe Andre fd4e133cc1 Evas: Implement image_data_get for FBO images 2015-07-02 11:58:50 +09:00
Mike Blumenkrantz d927c1623a ecore-wl: disable session recovery
this is guaranteed to crash in 100% of use cases.
2015-07-01 12:12:26 -04:00
Daniel Hirt e8afd5241c Evas Textblock: Add obstacle objects feature
Summary:
Introducing a new feature for Evas Textblock. This allows the layout to
wrap around other evas objects.
The following API is added:
 - obstacle_add
 - obstacle_del
 - obstacle_update
Evas objects can now serve as textblock obstacles, if positioned and
visible on the text area. The text will wrap around the obstacles
according to the wrapping mode set to it.

This also modifies the current wrapping code to handle obstacle wrap
points as well. The wrap index query function is modified so that
forward-scanning (specific cases) may be disabled when treating
obstacle wrap point.

RTL text is currently unsupported by this feature.
Consult added docs and example for usage.

@feature

Test Plan: Evas example and test in evas_suite are provided with this.

Reviewers: tasn

Subscribers: raster, JackDanielZ, cedric

Differential Revision: https://phab.enlightenment.org/D2405
2015-07-01 16:24:31 +01:00
Daniel Kolesa 87a88b5685 elua: remove obsolete xgettext wrapper 2015-07-01 14:51:00 +01:00
Jean-Philippe Andre f4f808f25d Evas image: Remove useless piece of code
Not only is it useless, it is very likely to make the function call
fail (data_get is quite likely to fail with GL).
2015-07-01 20:46:34 +09:00
Jean-Philippe Andre 6ca02cbfe8 Edje: Embed verbatim scripts for Efl.Gfx.Filters
This is now like the other embedded scripts, where a verbatim
string is parsed. The syntax is now:

filters {
   filter {
      name: "filter0";
      file: "filter.lua";
   }
   filter {
      name: "filter1";
      script {
         blend {}
      }
   }
   filter.file: "file.lua"; // name is "file.lua"
}

Thanks @raster for the quick review.
2015-07-01 20:46:34 +09:00
Jean-Philippe Andre 161822418a Evas: Make Evas.Image.save() work with all images
This includes proxies, 3d scenes and normal images.
There is still a problem as the GL engine returns NULL on
data_get.

This kinda goes against the EO API declaration as
eo_obj is used as a mutable argument, but internal data was
already modified before this patch.

TODO: Draw maps, filters, etc... in a dedicated surface to save
      them as they truly are (ie. filtered images).
2015-07-01 20:45:04 +09:00
Chris Michael 0e0e148bb3 evas-fb: Fix compiler warnings about suggested parentheses
Summary: Gcc suggested parens around the truth value here, however
as some developers don't like overly used parens, just modify the code
slightly to not use an if on the assignment line.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-30 09:25:23 -04:00
Amitesh Singh 05f0c88cd8 ecore: Fix typo in since tag. 2015-06-30 15:40:38 +05:30
Jihoon Kim 25962ccf64 ecore_imf: check parameter of ecore_imf_module_register () 2015-06-30 16:43:37 +09:00
Jihoon Kim 6840d17f9e ecore_imf: fix wrong return type of ecore_imf_context_input_panel_return_key_type_get
@fix
2015-06-30 16:39:56 +09:00
Jean-Philippe Andre 7ea52e1bd8 Evas filters: Force filter redraw if object changed
Somehow I broke this when introducing the eo mixin.
This is what broke @cedric's work on the snapshot widget!

TODO: Verify that the contents changed, and not just X,Y.
2015-06-30 11:47:11 +09:00
Jean-Philippe Andre 6980cb2c70 Evas filters: Fix color(0xrrggbb) to be opaque by default
For compatibility with previous behaviour and with what the doc
says, make sure default alpha is 255 and not 0.

This way color(0) is black and not transparent
2015-06-30 10:44:04 +09:00
Jean-Philippe Andre 4e6e7def00 doc: Fixup EDC documentation about filters & examples 2015-06-30 10:12:13 +09:00
Jean-Philippe Andre d4de36a43a Edje: Fix test case (after syntax change)
Filters now belong to one of the filters sections:
- filters
- collections.filters
- collections.group.filters
2015-06-30 10:12:13 +09:00
Jean-Philippe Andre 6e29489054 Edje: Use bsearch() to find filters as fast as possible
edje_cc ensures that the filters are in order by name
2015-06-30 10:12:13 +09:00
Jean-Philippe Andre fc36eedadd Edje: Replace index() by strchr()
Thanks vtorri for pointing out the build break on windows and
that index() is deprecated.
2015-06-30 10:12:13 +09:00
Jean-Philippe Andre 3648b0e252 Edje: Add proper filters section in the EDJ file
Don't [ab]use the file data section for filter scripts, instead
create a proper section for them. The rest of the behaviour stays
the same.
2015-06-30 10:12:13 +09:00
Jean-Philippe Andre a31222ae6f doc: EDC reference: Add specific doc for group.data
Group.data does not support "file", only "item". This doc
explains that.

Should Group.Data support file instead?
2015-06-30 10:12:13 +09:00
Jean-Philippe Andre b676dcf998 Edje: Use array instead of hash for filters data
Yeah that was totally overkill and pure laziness on my side.

Despite having the EO API for the filters still in beta,
I want to the EDC API and EDJ binary formats to stay compatible,
so let's get it right before the release :)
2015-06-30 10:12:13 +09:00
Mike Blumenkrantz 508da27bb1 Revert "evas: add keysym member to key event structs"
This reverts commit b7c89d2325.

this was audited and found to be impractical due to portability concerns
2015-06-29 13:18:01 -04:00
Mike Blumenkrantz 121e7be4b6 Revert "ecore-input: add keysym to Ecore_Event_Key struct"
This reverts commit c3f3c4eba8.

this was audited and found to be impractical due to portability concerns
2015-06-29 13:18:01 -04:00
Mike Blumenkrantz 476ebdc0a1 ecore-x: add ecore_x_keysym_get()
this is a less invasive solution for retrieving a keysym. X keysyms are
not portable, and so this function should not be used for any code which
is meant to run on other platforms.

@feature
2015-06-29 13:18:01 -04:00
Ji-Youn Park 4d41778251 ecore_x_xi2: remove build warning 2015-06-30 00:58:24 +09:00
Stefan Schmidt 633747a05d ecore_wl: Hookup wl listener for uuid event from session recovery protocol
This should listen for events containing the assigned UUID from the compositor.
2015-06-29 17:10:06 +02:00
Stefan Schmidt cb449adde6 ecore_wl: Add generated session-recovery-protocol files to build
For now these are generated externally by wayland-scanner and added here.
Also keep the original xml protocol file here for now.

This covers the client side for applications while the server side code
sits with E as compositor.
2015-06-29 17:09:57 +02:00
Ji-Youn Park f74895c6b7 ecore_x_xi2: add small code to check device id
cancel event only can be dealed in touch device.
2015-06-30 00:02:47 +09:00
Ji-Youn Park bd6d7850dc ecore_x_xi2: fix only ecore input handler deals touch cancel event
X gives only one cancel event in one touch device even though several touch point.
move code related with touch cancel to input hander function
2015-06-29 23:09:33 +09:00
Daniel Hirt 8202044890 Evas textblock: Fix it->x value during layout
This updates it->x when visiting each item in the line layout code,
as it was always 0, even when it was used during item rollback.
Fortunately, in the above case a 0 value was actually expected, so
this does not actually affect current behavior.

This fix is mainly for consistency and future development.
2015-06-29 16:50:32 +03:00
Daniel Hirt 0de8ebbb3a Evas textblock: Fix infinite loop case
This fixes a case with wrapping, where the text has a mixture of 'none'
and 'word' wrapping modes, and the layout function decides to
roll-back a few items.
The test case is added to the evas_suite.
This might not be a common case, or even a case we had defined a proper
behavior to, but since it causes an infinite loop, it needs to be fixed.

@fix
2015-06-29 16:43:49 +03:00
Daniel Kolesa e14c002aed efreetd_ipc: fix shadow warning 2015-06-29 14:28:01 +01:00
Daniel Kolesa 8fcad9672c evas_engine_software_x11: fix incorrect enumeration type warning 2015-06-29 14:27:02 +01:00
Daniel Kolesa 9d4e9f1788 edje: fix extra parens warning with clang 2015-06-29 14:19:57 +01:00
Daniel Kolesa e0dbbb8a8b ecore_imf_evas: warnings-- 2015-06-29 14:18:40 +01:00
Daniel Kolesa e4780d7b7d edje: fix shadow warning 2015-06-29 14:13:58 +01:00
Vivek Ellur 1155176aa5 eina: add quaternion test in eina suite and fix the test case errors
Summary:
Fixed eina_test_quaternion_conjugate and eina_test_quaternion_matrix which
were failing and also added the quaternion test in eina suite

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

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-29 14:56:23 +02:00
Srivardhan Hebbar 947edc8471 ecore_con: eoify ecore_con_eet functions.
Summary:
Depends on D2602
Made all functions eo.

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-29 14:56:23 +02:00
jiin.moon 739eb4bd0d evas: opaque value does not change even if image data be changed
Summary:
opaque value keeps previous image's value
when image data be changed by file_set/mmap_set api

@fix

Test Plan:
1) Make a evas rectangle object has color
2) Make a evas image object with jpg file.
3) Replace image data with png file by evas_object_image_file_set.

Reviewers: Hermet, cedric, jypark

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-29 14:56:23 +02:00
Tom Hacohen 6107f235aa Eo: Remove redundant semicolon.
Thanks to Vincent Torri for spotting this one.
2015-06-29 12:52:40 +01:00
Avi Levin dc5d6a6f7d Emotion: Adding Eo test for emotion
This test is exactly like the existing legacy one but works
with Eo invocations.
2015-06-29 11:42:17 +03:00
Avi Levin d833722e6e emotion: revert changes to emotion test as discussed on ML and chat
We want a separate test for Eo callbacks, as we still want to verify
legacy callbacks.
2015-06-28 09:41:13 +03:00
Tom Hacohen 76ff4430a2 Evas textblock: Fix the newly added test to use ck_assert_int_eq. 2015-06-26 15:24:56 +01:00
Tom Hacohen b360084d0d Evas textblock: Fix issue with line_coord_set and y before the first line.
Let's assume we have a textblock with one paragraph at y = 3 and h = 50
At the moment, passing 60 (after the paragraph) to line_coord_set picks
the last line, however passing 0, just fails. This fixes that.

Thanks to Vladyslav Shevchenko for reporting it in D2574.

@fix
2015-06-26 15:21:59 +01:00
Vladyslav Shevchenko fbfeb9af48 Evas textblock: Add a failing test for line_coord_set.
See more information in the next commit.

This commit message was edited by TAsn, and only the test case preserved
from the original commit in D2574.
2015-06-26 15:21:05 +01:00
Daniel Kolesa efc91df01a evas_canvas3d_material: convert docs 2015-06-26 14:35:39 +01:00
Daniel Kolesa b067b02b23 evas_line: convert docs 2015-06-26 14:00:36 +01:00
Ji-Youn Park 8c66b70aa9 ecore_evas: fix iconified state set bug
if app set iconified state false, ecore evas call activate instead of show.
2015-06-26 19:18:09 +09:00
Carsten Haitzler e90d60f8f5 ecore-evas-extn : map shm for sharing render pixels conservatively
@fix

before we mapped these segmentsa read+write for the user or read+write
for EVERYONE if system. this now creates the file as r+w for the user
and +ro for everyone only IF system, and clients voluntarily map
read-only to avoid possible memory corrupting of pixels from the
client side. not more secure for clients, but nicer. defintiely more
secure for system services.
2015-06-26 17:37:24 +09:00
Ji-Youn Park 049b397a86 ecore_x_xi2: fix crash if device info is NULL.
_ecore_x_input_device_lookup can return NULL.
@fix
2015-06-26 13:42:56 +09:00
Jean-Philippe Andre 8ba212c3b6 Edje tests: Fix compilation warning
Thanks Stefan for the report.

I don't really like putting all those -DBLA_BETA or #define BLA_BETA
everywhere, though. Maybe the @beta flag is not required since the
EO APIs are still beta?

See: 0446619355
2015-06-26 09:15:07 +09:00
Chris Michael 590b597e6e Revert "ecore-wayland: Update xdg shell protocol file"
This reverts commit 5793a62fc8.

Reverted due to wrong version being pushed
2015-06-25 15:14:56 -04:00
Chris Michael 5793a62fc8 ecore-wayland: Update xdg shell protocol file
Summary: This was a file that should have been updated with
the bump to xdg_shell version 5 however it was not pushed with that
update.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 15:11:31 -04:00
Chris Michael 30363956f1 edje_cc: Fix dereference before null check
Summary: Fix Coverity CID1302700 which reports a dereference before
null check. Basically, it is safe to call free() with a possible NULL
value so we can remove the 'if' check here.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 14:59:28 -04:00
Chris Michael 6949d1193e edje_cc: Fix dereference null return value
Summary: Fix Coverity CID1308232 which reports that we may be passing
NULL to strcmp here as the function _parse_param_get May return NULL.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 14:56:48 -04:00
Chris Michael cbc726ac56 edje_cc: Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 14:56:48 -04:00
perepelits.m f259ff8d4c evas: fix shooter example
Summary: Disable atlas flag for all objects, fix motion algorithm, add primitives.

Reviewers: Hermet, raster, cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-25 17:21:09 +02:00
Jee-Yong Um 2b29f4dfbf edje: add "mask_flags" instruction for "part" block
Summary:
Elementary widgets dealing with Evas Events usually mask event_flags with
EVAS_EVENT_FLAG_ON_HOLD, to show that this event is already handled.
However, widget like Elm_Button, it does not handle EVAS_CALLBACK_MOUSE_DOWN directly,
but it handles Edje_Signal instead, so there's no chance to mask event_flags.
Developers can block event propagation by putting rectangle the very last part of EDC,
but this instruction can help the case making elementary widget with only Edje_Signal handling.
This is not required essentially, so please check the necessity of this function.

Reviewers: Hermet, cedric

Reviewed By: cedric

Subscribers: cedric, Hermet

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-25 17:21:09 +02:00
Jee-Yong Um ef491e697e edje: implement methods for mouse_events with edje_part for Edje Embryo script.
Summary:
In edje_embryo.c, there are the list for supported methods in script.
However, methods listed from line 175 to 188 don't exist actually.
This patch implements 4 methods among them.
   set_mouse_events(part_id, ev)
   get_mouse_events(part_id)
   set_repeat_events(part_id, rep)
   get_repeat_events(part_id)

Reviewers: Hermet, woohyun, cedric

Reviewed By: cedric

Subscribers: cedric, Hermet

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-25 17:21:09 +02:00
Vivek Ellur 70e5687f6c eina: add test cases for eina matrix map and transform functions
Summary:
Added test cases for matrix map and transform functions

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

Reviewers: stefan_schmidt, cedric

Reviewed By: stefan_schmidt, cedric

Subscribers: stefan_schmidt, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-25 17:21:09 +02:00
Vitor Sousa 22094b6a27 eolian_cxx: Fix C++ generated inheritance wrappers
Summary:
Fix a bug that happens when a Eolian C++ wrapper have no default
constructor (because it have obligatory constructing methods) and it is
being used as a return of a inheritance wrappers.
Switched to a conversion of the native type as the default return, instead
of a value initialized wrapper.

Reviewers: q66, felipealmeida

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2769
2015-06-25 15:58:43 +01:00
Daniel Kolesa c709f1dca2 eolian/generator: constify all prototypes for @const functions
Otherwise there would be conflicts in certain circumstances.

This also requires adding const on many existing functions,
and similar work is necessary in Elementary.

@fix
2015-06-25 12:18:43 +01:00
Subhransu Mohanty 4f2ad23585 ector/software: Update the PIXEL_BIT to 8 for better quality. 2015-06-25 19:17:51 +09:00
Daniel Kolesa 9a01ab5dd7 eolian: try replacing '.' with locale specific decimal point
This fixes parsing of floating point number with locales that use
a comma as decimal separator, as strtof/strtod follows locale
specific conventions.

@fix
2015-06-25 10:44:01 +01:00
Jean-Philippe Andre 4234832713 Evas filters: Add some crash safety 2015-06-25 15:12:32 +09:00
Jean-Philippe Andre 14c1434960 Evas filters: Use smooth scaling by default for proxies
Is it too slow? Then I guess a new API option will be required.
2015-06-25 15:02:44 +09:00
Jean-Philippe Andre 8fa3b2b111 Evas filters: Fix usage of proxy buffers (compatibility)
The previous API supported stuff like "mask{'image1'}" but image1
is now not a valid buffer name, as it's only the proxy source name.
This patch fixes the buffer lookup.
2015-06-25 14:43:05 +09:00
Jean-Philippe Andre 0446619355 Evas filters: Mark API as @beta
Until we're happy with it, keep the API as beta.

The EDC support should not change, and the Lua either, but the
API could potentially still change to accomodate for new needs
(vector graphics, anyone?). If we're happy with the current
interface, then we can remove the @beta flags.
2015-06-25 14:36:10 +09:00
Jean-Philippe Andre c86a5edc9f Evas filters: Add @protected tag where applicable
The Evas.Filter interface is basically just an internal thing.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre d15308efef Evas filters: Add explicit exec flag in data_set
This flag should be set iif the string passed is to be executed
rather than assigned. This is used to pass complex arguments
as data, like tables (eg. color class).
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre f4825006b0 Evas filters: Remove overrides of methods from Evas.Filter
Welp that was stupid to add them in the first place...
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 068b9d5a5f Evas tests: Fix failing tests
Syntax error in C and in Lua code.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 6ca1ce305b Edje tests: Add test case for embedded text filters 2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 15afea293f Edje & evas filters: Properly pass data from EDC to Lua
Also fix a few issues
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 0df37da435 Evas filters: Fix buffer_push and add support for color classes
Makes sure that buffers don't override already existing
globals vars such as 'mask' (a function name). Yeah, it happened
to me.

CC support is a little bit hackish. Need to find a better way.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 0e8f890dfb Edje & evas filters: Add extra data from EDC to Lua program
This also supports color classes (really rough implementation for
now, but the API should remain stable).

@feature
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 84e3dd5c34 Evas filters: Add name to the filters
Deep down internally there was already a name, but no API could
really set it properly.
Here Edje will set the name of the filter based on the part name
or the data item name if relevant.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 29402b2ce9 Evas filters: Complete support for image filtering
Reusing the new EO mixin, complete the support for image
filtering. This now adds support for edje state inside
the image filter.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 351090f95d Evas tests: Fix failing test due to API change
The new Lua color function is more lax than before, and
invalid color names will default to black without failing.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 64fd278c62 Evas filters: EO-ify the filters API
This creates the new interface
 Efl.Gfx.Filter

And the implementation is a mixin (evas_filter_mixin.c):
 Evas.Filter

All the filter rendering code has now been moved to this
new file. TODO: Merge image filtering.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre a18107309d Edje: Factorise filter code for TEXT and IMAGE
TODO: eo-ify the filter API properly and stabilize it.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 88b81d240a Edje: Move filter desc to common desc
This will be shared between IMAGE and TEXT.
In the future it can also be shared with PROXY and TEXTBLOCK.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 707b979ffd Edje/evas filters: Use EDJ data sections to store filters code
Use the file data {item, file} block to embed filters code.
It can become especially useful to keep the filters as separated
Lua files, that will be embedded in the final edj file.

@feature
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre d00378edcf Edje/evas filters: Add filter.source support
This should preserve ABI stability with earlier versions of
edje_cc while still providing more advanced control over
proxy bindings for evas filters from EDC.

Also fix proxy binding for filters.

@feature
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 0e11e0a6dc Edje/evas filters: Quick renaming of evas filters related stuff 2015-06-25 14:36:09 +09:00
Jean-Philippe Andre f57929bf6e Evas filters: Fix blur from rgba to alpha 2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 4882788527 Evas filters: Reduce debugging with default compile opts
When using debug compile flags, full-on filter debug will happen.
2015-06-25 14:36:08 +09:00
Jean-Philippe Andre f3e16bc485 Evas filters: Implement Lua classes for colors & buffer
Reuse previous code for buffer. Keeps API stability.

The new class "color" is here for a more convenient color
representation. This way, colors can be represented in more
natural ways like: {r,g,b[,a]}, 0xaarrggbb, "red", "#rrggbb"

Class color is implemented in pure Lua, and adds a .lua file
to Evas' share folder.
2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 93797e3b0d Evas filters: Create specific log domain
This will improve the debug output of evas and specifically
allow setting "evas_filter" log level to a higher or lower
value depending on what you are debugging :)
2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 225c0f937a Evas filters: Pass edje state name & value to the filters
From Edje, pass the current state info (name and value) as well
as the next state and the transition position when applicable.
2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 4ade39c0ea Evas filters: Pass object scale to Lua state 2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 70efb699a5 Evas filters: Implement table & function support for curve
Now the points can be specified by passing a table or a proper Lua
function. The previous functionality (parsing a string) is still
valid.
2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 1b2819f2cb Evas filters: Implement __index for Lua buffer objects 2015-06-25 14:36:08 +09:00
Jean-Philippe Andre ffea07a049 Evas filters: Pass text colors to the parser
This does not implement the full feature yet (Lua variable
is not set). This commit also brings various fixes.
2015-06-25 14:36:08 +09:00
Jean-Philippe Andre d148c0f0d2 Evas filters: Fix runtime, allow state change on the fly
Now we're ready to implement runtime changes to the filters'
state (color classes, edje state, etc...), as the Lua function
will be run whenver required.
2015-06-25 14:36:08 +09:00
Jean-Philippe Andre ed09b3af6d Evas filters: Add some @internal flags to the doxygen docs 2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 148a886cc7 Evas filters: Refactor parser code
This is to prepare the changeable states (animation, color, scale...)

- Remove use of Eina_Value (simplifies code)
- Use proper Lua type for buffers (with pretty __tostring)
   This adds the buffer methods: width, height, type, name, source
2015-06-25 14:36:08 +09:00
Jean-Philippe Andre c25467ff5c Evas filters: Implement very basic print function 2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 8716be5193 Evas filters: Fix potential crash 2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 2faaef966e Evas filters: Add internal function _program_run
This will allow changing the state of the filter and re-run it
without re-creating the Lua_State object. This is to handle size,
color, animation state and scale changes (amongst other things).
2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 6db0ff4229 Ecore_Audio: Avoid abort() in PulseAudio
In some cases (stress test), pulseaudio fails to play a sound
and pa_stream_drain() returns NULL, making pa_operation_unref()
crash right after.
2015-06-25 14:36:08 +09:00
Jean-Philippe Andre 8c47364846 Evas render: Fix rendering of objects with no_render
Well yeah, those objects should still be rendered in their
proxy or mask surface :)
2015-06-25 14:36:08 +09:00
Jee-Yong Um 4baea66956 edje_embryo: correct type mismatching in get_geometry() method
Summary:
get_geometry() method calls edje_object_part_geometry_get() internally,
and the type of its arguments is Evas_Coord. (typedef'ed integer)
However, comment says that method require Float type as its arguemnts,
and get_geometry() initializes Evas_Coord variables as 0.0.
This patch corrects type mismatching and comment.

@fix

Reviewers: Hermet

Subscribers: cedric, Hermet

Differential Revision: https://phab.enlightenment.org/D2754
2015-06-25 13:38:25 +09:00
Carsten Haitzler 6483dc3ce9 ecore con - fix object data referencing for deleted objects
if the object has been deleted already, scope data is null. handle it
correctly. this fixes a segv in the new efreetd when it starts and
there is an existing efreet running thus owning the socket fails.

@fix
2015-06-25 13:18:22 +09:00
Carsten Haitzler b68853fd7d ecore con dns - a failed dns lookup is not an err log event
spewing out errors for a failed dns lookup is not somehting to ERR out
in logs all the time. it is at best a debug log. the caller handles
the failed connect itself.

@fix
2015-06-25 13:17:04 +09:00
Carsten Haitzler 0f4d1d6186 eina module - it is not an error to ERR log to not load a .so
it is not an error. eina_module may be used on files that don't exist
and the caller may handle that as a "does not exist" error. it is not
good to go spewing out errors for this. it's debug at best.

@fix
2015-06-25 13:15:31 +09:00
Carsten Haitzler ddb3a60518 efreetd - new ipc - re-register on reconnect 2015-06-25 11:41:15 +09:00
Carsten Haitzler a149ff6d79 efl -> fix possible null deref in efreetd ipc
this fixes CID 1308358
2015-06-25 11:32:58 +09:00
Cedric BAIL e50b3e75e4 ecore_evas: fix forgotten call to post render callback.
This fix using expedite with buffer backend.
2015-06-24 22:47:11 +02:00
Vitor Sousa dae35333fd eolian_cxx: Use C++ wrappers instead of native types as parameters
Summary:
Using C++ wrapper types in the signature of methods of the generated
classes.
Now, when the type is an Eo type defined in Eolian, eolian_cxx will detect
it and use the equivalent C++ wrapper.

Types defined in Eolian no longer need to be specified in the lookup table,
so removed them from there.

Disable wrapping of non-const char*. The current wrapper (unique_ptr) is
not suited for some required operations like ownership acquisition from
C code.

Fix constructing properties that only have the "set" method.

Fix translation of non-const parameters.

Modified Makefiles to allow proper inclusion of evas_cxx headers required
by some tests and examples.

Move one auxiliary function to another reader to make it more accessible.

@feature

Reviewers: felipealmeida, q66, cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2752
2015-06-24 15:23:01 +01:00
Stefan Schmidt 1e2fd2be07 examples: Fix build after ecore_buffer commit.
Since 8b62177561 make examples fails to build
as the examples have been included without checking if ecore_buffer is
actually enabled to build.

make[2]: *** No rule to make target '../../../src/lib/ecore_buffer/libecore_buffer.la', needed by 'ecore_buffer_example'.  Stop.

I'm running make examples during the nightlies now in the hope to catch those.
2015-06-24 13:46:43 +02:00
Carsten Haitzler 5abfefe99e efl - efreetd service move from dbus session bus to ecore ipc
this fixes warnings about no efreet dbus session bus in non session
environments as brought up on the mailing lists with:

Subject: Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: unset
efreet cache update flag to prevent dbus connections

this moves all of efreetd client and server to ecore ipc, with client
auto-launching efreetd if not found as a service and trying for up to
500ms to connect. efreetd times out on last connection or no
connections after 10sec so it wont hang around forever if not in use.
it seems to work in my testing, so let me know if there is an issue.

@fix
2015-06-24 19:28:17 +09:00
Carsten Haitzler c6011926ba eo - silence ERR logs on constructor fail - this is valid behavior
@fix

XXX: Given EFL usage of objects, construction is a perfectly valid thing
to do. we shouldn't complain about it as handling a NULL obj creation is
the job of the caller. a perfect example here is ecore_con and ecore_ipc
where you create a con or ipc obj then set up type/destination/port and
the finalize of the constructor does the actual connect and thus this
fails or succeeds based on if service is there.

until there is a better solution - don't complain here.
2015-06-24 19:28:04 +09:00
Carsten Haitzler 7bb2871102 more evas render 2 work - should not affect normal behavior or code
paths unless turned on at runtime
2015-06-24 19:27:42 +09:00
Chris Michael e399e9df4a ecore-drm: Quiet down output from libinput
Summary: As libinput has matured enough now, we can reduce the noise
in outputs logs by adjusting libinput log level priority

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-23 13:27:28 -04:00
Daniel Kolesa 71a8b9d119 eolian: relax doc parsing a little (no need to check if @since is allowed) 2015-06-23 16:44:17 +01:00
Daniel Kolesa 0fe4d4aa37 eolian: simplify doc parsing logic a bit 2015-06-23 16:37:37 +01:00
Chris Michael 1d981756b9 ecore-drm: Fix setting proper output subpixel value
Summary: This adds a minor internal function to convert
DRM_MODE_SUBPIXEL values into something that the wayland protocol
supports.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-23 11:11:29 -04:00
Chris Michael c6b997eb17 ecore-drm: Fix issue of outputs not getting registered with the wayland registry
Summary: This fixes T2465: QT5 apps don't work. The issue here is that
when the randr code runs in E we make calls to
ecore_drm_output_enable/disable which is supposed to register the
outputs with the wayland registry. This was not happening due to the
enable/disabled checks at the top of these functions.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-23 11:11:29 -04:00
Chris Michael 5d48756227 ecore-wayland: Fix issue of events not getting dispatched properly
Summary: In order for wayland events to be processed properly, we
should be dispatching any pending events off of the queue First before
we make the call to flush.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-23 11:11:29 -04:00
Daniel Kolesa c26134df7a eolian: new doc token lexer/parser
This should allow us to more easily extend the format if desired
and overall makes the doc syntax parsing more readable and simpler.
2015-06-23 15:28:46 +01:00
Daniel Kolesa d9db8888ac Revert "edje: unset efreet cache update flag to prevent dbus connections"
This reverts commit 1edb35fff3.

Accessing symbols from other libs like this should never be done. The
consequences of this are not significant enough to do this; better solution
can be found but definitely not like this.
2015-06-23 10:22:36 +01:00
Jean-Philippe Andre 122b242646 Ecore_Con: Fix make distcheck 2015-06-23 15:18:24 +09:00
SangHyeon Lee 9e57d34893 fb engine : Add NULL type handling in output free.
Summary:
Add NULL type check in output_free of evas fb engine.
If engine setup is failed,
Render_Engine wil be NULL so output_free also need to
handling NULL check.

Test Plan:
It needs specific condition to reproduce,
           engine of ecore_evas is set to fb, and setup is failed,
           then Render_Engine is NULL, but ecore_evas_free will call
           output_free in fb engine's evas_engine.c

Reviewers: raster, cedric, Hermet

Reviewed By: Hermet

Subscribers: cedric, seoz, eagleeye, singh.amitesh

Differential Revision: https://phab.enlightenment.org/D2743
2015-06-23 08:11:39 +09:00
Mike Blumenkrantz 1edb35fff3 edje: unset efreet cache update flag to prevent dbus connections
efreet_init began to be called with the addition of translatable strings,
but allowing dbus connections in edje (and thus edje-derived tools) will
result in errors when edje_init is called without a dbus connection available
2015-06-22 14:53:13 -04:00
Srivardhan Hebbar 12257053a0 ecore_con: eoifying ecore_con_eet.
Summary:
This is still work in progress. I've added new file for temporary
purpose. Idea is to first eoify everything then change its namespace properly.

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-22 18:55:57 +02:00
Cedric BAIL a3c7a83196 edje: add possibility to speed up animation per object.
This could come handy for previewing the effect of accelerating animation.

@feature
2015-06-22 18:46:12 +02:00
jiin.moon 6487a26354 edje: add support to control the transition time of edje animation globally.
Summary:
Add the transition scale flag and the transtion scale value.
This flag can be change using "transition_scale_enable" in edje program.
If flag is true, the transition scale value affect the transition speed of edje
The transition scale value can be change by elm_config.

@feature

Test Plan: elementary_config

Reviewers: Hermet, cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-22 17:56:15 +02:00
Seunghun Lee 8b62177561 ecore-buffer: Add ecore_buffer library to EFL.
Summary:
Ecore_Buffer is abstraction of graphic buffer.
it supports backend of shm, x11_dri2 and x11_dri3 for now,
and this library also provides method to share buffers between processes.
Ecore_Buffer_Provider and Ecore_Buffer_Consumer is for this, sharing buffer.
provider draws something in to Ecore_Buffer, and consumer receives and displays it.
the binary, bq_mgr is a connection maker for buffer provider and consumer.
it can be included Enlightenment as a deamon later.

@feature

Test Plan:
1. Configure with --enable-ecore-buffer and --enable-always-build-examples to build examples.
2. Run bq_mgr, it connects consumer and provider.
3. Run ecore_buffer_provider_example and ecore_buffer_consumer_example

Reviewers: lsj119, gwanglim, cedric, zmike, jpeg, raster, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2197
2015-06-22 10:31:42 -04:00
perepelits.m 3671506ad3 edje: add of edje-3d to edje_calc.c
Summary: Adding of Mesh_Node, Light and Camera to _edje_part_recalc.

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-22 11:17:29 +02:00
Oleksandr Shcherbina ac4b6422f4 evas: fix Evas.Canvas3D color pick
Summary:
After this commit	684c51360f it didn't work
Miss bind color pick texture to drawable data
@fix

Reviewers: Hermet, cedric

Reviewed By: cedric

Subscribers: cedric, Ievgen, se.osadchy

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-22 11:11:33 +02:00
Daniel Kolesa 5541f8ead1 ecore_con: convert docs 2015-06-19 15:44:22 +01:00
Daniel Kolesa 69b9f0044b ecore_con_base: converted docs 2015-06-19 15:18:38 +01:00
Daniel Kolesa 9f8f6c2b53 efl_gfx_view: convert docs 2015-06-19 15:01:31 +01:00
Oleksandr Shcherbina c25900428d evas canvas3d: Correct Eolian namespace
Summary: Proceed fixing T2479

Reviewers: cedric, tasn

Subscribers: cedric, tasn

Maniphest Tasks: T2479

Differential Revision: https://phab.enlightenment.org/D2723
2015-06-19 10:39:58 +01:00
Daniel Kolesa 4384efec2e ecore_audio: convert docs 2015-06-18 16:37:01 +01:00
Daniel Kolesa 4b0b8960b6 efl_gfx_gradient: convert docs 2015-06-18 16:28:33 +01:00
Daniel Kolesa cdbf57979f ecore_audio_in: convert docs 2015-06-18 15:55:37 +01:00
Chris Michael 38698de564 edje: Fix Coverity CID1299026 and CID1299027: Explicit null dereference
Summary: Coverity reports that this potentially is passing a NULL
pointer to strcmp. As the GETSTR macro Can possible return NULL we
should be checking that return before passing it to strcmp.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-18 10:30:45 -04:00
Chris Michael ac6a918644 evas-render2: Fix Coverity CID1306141: Dereference null return value
Summary: Coverity reports that eina_thread_queue_wait was returning
NULL and thus msg variable being used here causes dereferencing a null
pointer.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-18 10:24:40 -04:00
Chris Michael b35e107603 ecore-input-evas: Fix Coverity CID1306803 (logically dead code)
Summary: This cleans up the _ecore_event_evas_mouse_button function.
Coverity was reporting that the state tests in the 'if' function could
not be be reached due to eel variable being null. This moves the if
(!eel) check to run before the state tests.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-18 10:20:07 -04:00
Chris Michael 4e6b06dfd7 evas-gl-drm: Cleanup compiler warnings when building gl_drm engine
Summary: This cleans up nasty compiler warnings when building the
gl_drm engine. If we do not define EGL_EGLEXT_PROTOTYPES then we end
up with implicit declaration warnings

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-18 09:59:29 -04:00
Tom Hacohen db6c17627f Eo: Fix windows support.
This is heavily based on a patch by Vincent Torri. I just refactored it
a bit so it doesn't break ABI on Linux, only on Windows (where it was
broken anyway).

This patch changes things so on Windows, functions are looked up only
based on their name. Because of the indirection (and export/import
tables) windows does, this is the only reasonable way to make it work.
2015-06-18 14:23:08 +01:00
Tom Hacohen d85029a5c0 Eo: Fix a potentially dangerous lack of {}.
You should always use curly brackets. Especially when the inside statement
has its own curlys. This can be confusing and has already lead to bugs in
many projects.
2015-06-18 14:23:08 +01:00
ChunEon Park d72aa3fecb eina/simple_xml_parser: don't parse the <, > in the attribute string.
The tag identifier should not be inside of the string "~".
Previous logic doesn't care that scenario,
the parser context can be corrupted and it will be no more useful.

@fix
2015-06-18 19:51:06 +09:00
ChunEon Park ca0e51a2c6 eina: add eina_simple_xml example.
This example just prints tag and it's attributes in xml file.
But this example intended for the scenario,
if the attributes have the "<" or" >" characters inside of the string.
2015-06-18 19:50:00 +09:00
Daniel Kolesa 2d31628d85 efl_control,efl_text: convert docs 2015-06-18 11:21:43 +01:00
Daniel Kolesa c93de19e22 efl_model_base: convert docs 2015-06-18 11:01:12 +01:00
Daniel Zaoui bc4e4a69f8 Examples: Fix emotion basic example 2015-06-18 05:42:14 +03:00
Daniel Zaoui 5c0c76d9ee Examples: fix compilation due to inline
Undefined references were occurring on inline (not static) functions.
Adding static to these functions solves the issue.
2015-06-18 05:32:39 +03:00
Lukasz Stanislawski 73dc72515c ecore-x: move grabbed_is check to multi_handler
Summary:
Previous implementation used mouse_handler to create mouse events from touch
events if the device was grabbed and no emulated mouse events were emitted by X server.
However the same functionality could be achieved by using multi_handler with
additional condition on grabbed devices.

Test Plan: elementary_test -> Multitouch

Reviewers: cedric, raster, devilhorns

Subscribers: seoz, cedric

Differential Revision: https://phab.enlightenment.org/D2700
2015-06-17 13:45:35 -04:00
Daniel Kolesa 0032c48a19 efl_gfx_base: convert docs 2015-06-17 17:32:34 +01:00
Daniel Kolesa 06e3a330fe evas_test_mesh: 3d -> canvas3d (fixes broken test compile) 2015-06-17 17:30:05 +01:00
Oleksandr Shcherbina d409df1caa evas: change interface evas_3d to evas_canvas3d
Summary:
Regard to https://phab.enlightenment.org/T2479 it is need for right generation
Eolian files

Reviewers: cedric

Subscribers: cedric, tasn

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-17 17:52:17 +02:00
perepelits.m 9bf6f14a8a eina: add eina_quaternion_set
Reviewers: cedric, raster, Hermet

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-17 17:52:10 +02:00
Ivan Furs e1daab2404 evas_canvas3d: cube chaotic was not initialized and relied on luck to be zeroed by default.
Summary: Cube chaotic was rotated, because angle in structure of "SceneData" have random number.

Reviewers: cedric, Hermet

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-17 17:49:04 +02:00
Chris Michael 7d6b142ca7 ecore-evas-drm: Default to GBM_FORMAT_ARGB8888
Summary: Seems some platforms (my setup here at least) don't have EGL
configs which suppose GBM_FORMAT_XRGB8888, so default to ARGB

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-17 10:19:29 -04:00
Chris Michael cdbaa65bd4 evas-gl-drm: Add support for EGL_MESA_platform_gbm
Summary: This change adds support for using EGL_MESA_platform_gbm to
get the display directly from gbm and to create a window surface
(usable by egl) directly from the gbm surface.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-17 10:19:29 -04:00
Ji-Youn Park 3d521961d1 ecore_input_evas: remove tab and unusable code
remove tab and code which is not used
2015-06-17 22:52:16 +09:00
Daniel Kolesa 51f49642b4 eolian: remove the outdated and ugly database printer (needs rework) 2015-06-17 14:26:07 +01:00
Daniel Kolesa f800e8a3bf eolian: check for C type keyword before trying to append as C type keyword
This fixes a segv when non-type Eolian keyword is used.

@fix
2015-06-17 10:29:37 +01:00
Vivek Ellur f2606fe151 eina_matrix: Added test cases for fixed point matrix functions
Summary:
Added test cases for all the functions related to fixed point matrix

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

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2701
2015-06-16 17:47:29 +02:00
Cedric BAIL 7a1da35e22 evas: use the right function with freetype backend. 2015-06-16 17:23:05 +02:00
Cedric BAIL 9c36323c15 evas: properly handle cleanup case. 2015-06-16 17:23:04 +02:00
Daniel Kolesa 9bbe8c7ff1 efl_image: convert docs 2015-06-16 15:41:48 +01:00
Daniel Kolesa 0d0439ecc3 efl_player: convert docs 2015-06-16 15:36:33 +01:00
Daniel Kolesa 1745d0a994 efl_gfx_gradient_radial: convert docs 2015-06-16 15:31:02 +01:00
Daniel Kolesa 56120b79f2 efl_text_properties: convert docs 2015-06-16 15:28:24 +01:00
Daniel Kolesa 53e630b3ca efl_gfx_shape: convert docs 2015-06-16 15:23:29 +01:00
Vitor Sousa 406ac071a1 efl_player: Add playable property
Summary:
Add "playable" property to Efl.Player.
It should be used to check if the currently loaded data can be
played.

Reviewers: tasn, felipealmeida, raster

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2704
2015-06-16 13:53:06 +01:00
Jihoon Kim bae1c701ba ecore_imf/wayland: Add NULL check before accessing 2015-06-16 16:28:16 +09:00
Ji-Youn Park 5cb6cdbc5e Ecore_input: Add "ECORE_EVENT_MOUSE_BUTTON_CANCEL" event
If ecore get the mouse cancel event(ex: display off, or window stack change) from below, we need to deal with.
Currently, evas also generates up event using evas_event_feed_mouse_cancel function when window hide is called.
if cancel event occurs, ecore also call evas_event_mouse_feed_cancel like window hide situation.
cancel event means all button or touch event should be canceled, but in the future, if we need to deal each cancel event according to touch point,
we need to add api like evas_event_feed_multi_cancel

@feature
2015-06-16 15:33:43 +09:00
Jean-Philippe Andre 0ee9a4ac63 Edje: Add doc in edcref for description.clip_to
Thanks Dave for pointing this out.
2015-06-16 13:59:12 +09:00
Dongyeon Kim 6f55b135c2 evas/gl: Add null checks
Summary: Add null check for glGetString version check and evgl_engine

Test Plan: Local tests

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: wonsik, cedric

Differential Revision: https://phab.enlightenment.org/D2699
2015-06-16 13:47:16 +09:00
Jean-Philippe Andre 4af5cba8e9 Evas: Remove shader_3d .x generated file from BUILT_SOURCES
This should fix the build after make clean.
Even though those .x files can be re-generated at compile time, they
are checked in in Git and shipped in tarballs. They must not be removed
during make clean.

Thanks Ross Vandegrift for the report.

@fix
2015-06-16 12:03:51 +09:00
Jean-Philippe Andre 8d72372fa7 Evas GL: Fix error message (ERR --> INF) 2015-06-15 17:51:36 +09:00
Dongyeon Kim 291fcca181 evas/gl_x11, gl_cocoa: remove static variable in eng_font_draw
Summary:
When evas is recreated, this static variable value remains,
so it references already freed memory.

Test Plan: Local tests

Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: wonsik, mer.kim, cedric

Differential Revision: https://phab.enlightenment.org/D2678
2015-06-15 17:48:11 +09:00
Jean-Philippe Andre f24b45a7d0 Edje: Add test case for "no_render" and "clip_to" state flag 2015-06-15 16:59:41 +09:00
Jean-Philippe Andre 111e51a6ff Evas: Add "no-render" flag for proxy sources & clippers
Those objects should never be rendered on the canvas, even if they
are visible. On the other hand, they need to be rendered in mask or
proxy surfaces.

note: this patch includes some extra whitespaces changes :(

@feature
2015-06-15 16:59:41 +09:00
Jean-Philippe Andre 75ec3a7338 Edje: Add clip as a property of a part description
Since masking, for performance and themeing reasons, it becomes
interesting to be able to switch clippers on the fly. In particular,
switching from an IMAGE mask to a standard RECT clipper can save a
lot of power when masking is not required.

This new flag "description.clip_to" will behave a bit like a mix of
rel.to and visible:

- It points to a part by name, just like part.clip_to. This will
  override the clipper set by the part, or override the default clipper.

- Like "visible", it can not be interpolated between two values, so
  it will switch only at the end of a transition.

- By default there is no clip override, which means Edje will fallback
  to the part's clipper, if any, or the base (group's) clipper.

NOTE:
- Since a clipper that does not clip anything becomes a standard object,
  it is visible and rendered. This will in 99.999% cases not be the
  intended behaviour. Currently we can simply use a transparent RECT
  in order to always have something clipped by the clipper, but this is
  a hack and this will trigger rendering of masks in their surfaces even
  when they are not actually used.
  Ideally, there should be a flag indicating to Edje & Evas that an object
  should be considered a clipper in all situations, and never be rendered
  on screen.

TODO:
- Support Edje Edit
- Add Embryo & Lua functions
- Add support in edje_convert
- Add Edje/Evas flag to mark objects as "no_render"

@feature
2015-06-15 16:59:41 +09:00
Vivek Ellur 02d825f116 eina: add test cases for various eina_matrix operations
Summary:
Added test cases for various operations of 3*3 matrix

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-15 09:06:35 +02:00
Chris Michael 88cb6b74bf evas-gl-drm: Cleanup gl_drm engine code a bit more
Summary: This cleans up the gl-drm engine code a bit and avoids the
need to constantly destroy and recreate the gbm device itself. This
also adds checks during Outbuf create to handle the swap_mode as per
previously added enum.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-12 11:50:24 -04:00
Chris Michael 9315424bac evas-gl-drm: Move gbm_surface field to Outbuf structure
Summary: This moves the Engine_Info's gbm_surface field to the Outbuf
structure

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-12 11:50:24 -04:00
Chris Michael 8809979ce3 evas-gl-drm: Add swap_mode enum
Summary: This adds an enum we can use for setting/determining the
swap_mode to use for the gl_drm engine

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-12 11:50:24 -04:00
Ji-Youn Park 02faffe14b evas_event: evas_event_feed_mouse_cancel set EVAS_EVENT_FLAG_ON_HOLD
Evas_event_feed_mouse_cancel generates mouse up event if it meets situation witch mouse should be canceled.
but app also have to know this information. I add cancel information into evas up event generated by cancel function.
@fix
2015-06-12 23:10:07 +09:00
Subhransu Mohanty dc7611cd71 evas/vg : Fixed issue regarding geometry change of vg object. 2015-06-12 19:57:07 +09:00
Subhransu Mohanty aac9bee035 evas/engines : renamed ector native engine to "default" from "freetype" 2015-06-12 19:56:57 +09:00
Vaibhav Gupta a1545ec314 evas_smart: Add a check for zero size before malloc
Summary:
	Size may be zero while allocating interfaces private data,
	when NULL is passed in EVAS_SMART_SUBCLASS_IFACE_NEW for ifaces argument.

	If size is 0, then malloc() returns either NULL, or a unique pointer
	value that can later be successfully passed to free(). It is implementation
	dependent. This case would be likely to occur in case of smart classes with
	no interfaces.

@fix

Signed-off-by: Vaibhav Gupta <g.vaibhav1@samsung.com>

Reviewers: raster, Hermet, tasn, cedric

Subscribers: SanghyeonLee, sachin.dev, singh.amitesh, cedric

Differential Revision: https://phab.enlightenment.org/D2679
2015-06-12 09:47:13 +01:00
Carsten Haitzler 8f0b8a9060 edje entry - also filter 0x7f (DEL) char on input as it's invalid entry
@fix
2015-06-12 17:40:23 +09:00
Jean-Philippe Andre c4a797ff6e Evas filters: Remove unnecessary copy of buffers
When doing blur from alpha to rgba, there was an extra copy
step added, that was not required.

This should improve the performance a little bit in this situation.
2015-06-12 16:53:54 +09:00
Jean-Philippe Andre 8b897144ac Evas filters: Fix blend with color with rgba buffers
- blend { color = red }
- blur { color = red }
were not working with RGBA input. This patch fixes that.

@fix
2015-06-12 16:53:14 +09:00
Chris Michael 38c3c5a0d6 edje: Remove unused variable
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-11 12:59:21 -04:00
Daniel Kolesa 950322fd12 eolian: remove support for old event doc syntax 2015-06-11 17:14:51 +01:00
Daniel Kolesa 27237976ad eo: move all event doc comments to new syntax 2015-06-11 17:09:02 +01:00
Daniel Kolesa cd12f938af eolian: remove support for old doc style on types and vars 2015-06-11 16:52:45 +01:00
Daniel Kolesa 786f848f67 evas,ecore_con: more struct/enum doc updates 2015-06-11 16:51:43 +01:00
Daniel Kolesa 3c3e52440b eolian: fix a bug in expr serializer with wrong sign insertion 2015-06-11 16:41:32 +01:00
Daniel Kolesa adbe4dcc06 edje,evas: convert type docs to new format 2015-06-11 16:14:37 +01:00
Daniel Kolesa 4bdf82908e eolian/generator: fix enum field doc generator bug
This resulted in a field using the next field's docs rather
than its own, because it incremented the member before
even trying to retrieve the docs.

@fix
2015-06-11 16:13:41 +01:00
Tom Hacohen ec53cee9a6 Evas: Remove unused variables.
These were introduced in ed01a32c13.
2015-06-11 09:50:12 +01:00
Thiep Ha ac09acd508 Eo: Add Null check
Summary: Add Null checking when allocate memory.

Reviewers: cedric, tasn

Reviewed By: tasn

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2664
2015-06-11 09:50:12 +01:00
katpavalli 26b27319b4 edje: add po file support in edc translation.
Summary:
   Implementation to support .po files in edc for translation

Test Plan:
   Test Code to test this implementation is done as part of efl/src/examples/edje/edje-text.c and efl/src/examples/edje/text.edc
   edje_cc -md . text.edc && gcc -o edje-text edje-text.c `pkg-config --libs --cflags ecore-evas edje evas ecore eo`
   ./edje-text

   1) Click On the text "Click here"
      The language gets changed.

Reviewers: shilpasingh, cedric

Reviewed By: shilpasingh, cedric

Subscribers: cedric, rajeshps, govi, poornima.srinivasan

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-11 10:40:55 +02:00
Daniel Hirt ed01a32c13 evas: move evas_object_inject to super's ctor
Summary:
As we always call evas_object_inject in every Evas Object's ctcor,
it seems sensible to move this repeated bit of code to the super
(Evas.Object).

Test Plan: Expedite, Elementary_Test and pretty much everything

Reviewers: cedric, raster

Subscribers: JackDanielZ, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-11 09:58:13 +02:00
Carsten Haitzler 4730afdba0 evas - eo canvas events - move viewport to last to match enums in legacy 2015-06-11 10:52:33 +09:00
Jean-Philippe Andre 142626c00a Evas GL: Make INF message more explicit
Direct rendering is actually quite hard to enable, so make the
message very explicit for elm_glview users. Thanks zmike for
reporting this msg.
2015-06-11 10:40:08 +09:00
Jean-Philippe Andre cb11a67595 Evas GL: Fix coverity CID 1304559, 1304560
Summary:
<CID 1304559: Logically dead code>
The dead code is only valid for GLES backend, so move if statement
to be used for GLES backend only.
<CID 1304560: Bad bit shift operation>
When calculating depth bit, bit shifting could be done with negative values.
@fix

Test Plan: Local tests

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: wonsik, cedric

Differential Revision: https://phab.enlightenment.org/D2654
2015-06-11 08:39:43 +09:00
Daniel Kolesa cf2e94e11b elua: unexpose "old" documentation api from eolian bindings 2015-06-10 17:36:33 +01:00
Daniel Kolesa 1d6c60738c elua: remove unused code from lualian 2015-06-10 17:33:14 +01:00
Daniel Kolesa 944e9eb5b0 elua: bind recent eolian APIs to eolian lua api 2015-06-10 17:30:42 +01:00
Tom Hacohen a023a04b53 Edje object: Fix remaining Eolian warnings. 2015-06-10 17:23:30 +01:00
Tom Hacohen f716d70008 Edje object: Fix some Eolian warnings regarding callbacks. 2015-06-10 17:07:14 +01:00
Tom Hacohen 24eaad059e Edje object: Fix Eolian warnings (and migrate types).
Also add an eot file for general edje types.
2015-06-10 16:56:48 +01:00
Daniel Kolesa 660e23fd75 eolian: add new __undefined_type builtin to silence warnings 2015-06-10 16:56:37 +01:00
Daniel Kolesa 7ea7f0b68a eolian: fix wrong type keyword check 2015-06-10 16:42:18 +01:00
Tom Hacohen e8dd532854 Efl model: Fix Eolian warnings (and migrate types). 2015-06-10 15:52:33 +01:00
Tom Hacohen 2605eb3c15 Evas: Fix abi break in Evas_Callback_Type
You are not allowed to insert elements into an enum, except for at the
end!!!

Spank spank spank.

Was introduced in: 86751fdbaf
2015-06-10 15:36:28 +01:00
Tom Hacohen d10f9733ac Evas canvas: Fix Eolian warnings (migrate types). 2015-06-10 15:32:29 +01:00
Daniel Kolesa 7d40ec0ad9 ector,ecore,eio,emotion: convert some docs 2015-06-10 14:35:11 +01:00
Tom Hacohen f1519f3334 Eina debug: Fix shadow warning.
This is especially obviously wrong, beacuse the original parameter is not
even used.
2015-06-10 13:07:12 +01:00
shilpa.singh 0dd76d7ea8 Edje_entry: Fix control + (x,a,y,z,m,c) not working issue.
Summary:
When caps lock is "On" and we press control + (x,a,y,z,m,c) none of
these operations work issue fix.

@fix

Test Plan:
1. Caps lock On
2. Input some text
3. Press ctrl+a, ctrl+c etc:-
4. Select, copy, cut etc:- operations does not work

Reviewers: tasn

Subscribers: raster, rajeshps, govi, poornima.srinivasan, navnbeet, subodh6129, cedric

Differential Revision: https://phab.enlightenment.org/D2633
2015-06-10 13:04:11 +01:00
ChunEon Park be0c2f5a31 ecore: null cb function is unacceptable.
@fix
2015-06-10 17:46:31 +09:00
Stefan Schmidt e644fd6a8c evas/render2: Put evas_render2_th_main.c in EXTRA_DIST to ship it in the tarball
We are not able to put it in SOURCES as it is not possible to compile this as
standalone object out of the context it is included in.
2015-06-10 10:08:39 +02:00
Daniel Kolesa 917a2bcab5 ector: always initialize the array contents even without fetchfunc
Also use a static array instead of a VLA as we know the size at compile time.

Fixes CID 1294210.

@fix
2015-06-09 15:12:07 +01:00
Chris Michael cd4bb6a84d evas: Remove unused variables
Summary: These variables are actually unused here, so remove them.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-09 09:08:47 -04:00
Chris Michael 03acea0a8a ecore-x: Fix compiler warning of unused variable
Summary: XIDeviceEvent variable is only used if we have support for XI2_2.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-09 09:05:01 -04:00
Chris Michael 0d28a11543 ecore-x: Fix warning of defined but unused function
Summary: The _ecore_x_input_grabbed_is function is only used if we
have support for XI2_2, so move the defines around a little to fix a
compiler warning.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-09 09:05:01 -04:00
Chris Michael 5ffcaf605e ecore-x: Fix warning of unused variable
Summary: We only need the 'devid' variable if we have support for XI2_2.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-09 09:05:01 -04:00
Daniel Kolesa b90c1bf90e elua lib: sanitize all file paths before writing them
This will prevent random nonsense from being written in.

It changes semantics slightly (documented) and also fixes
CID 1267463.

@fix
2015-06-09 14:01:25 +01:00
Daniel Kolesa 6692319c78 eolian: pass rbuf to doc_error
This allows us to correctly free the buffer in error scenarios.

Fixes CID 1304728.

@fix
2015-06-09 13:43:36 +01:00
Carsten Haitzler 0e8d1c8485 eina semaphore lock - don't wake up because of signals
@fix - this fixes eina sephamore lock/wait to not return just because
of a signal sent to the process - try again if the semaphore wait is
interrupted by a signal as opposed to a semaphore wakeup.
2015-06-09 19:39:01 +09:00
Carsten Haitzler f153cad879 eina btlog - util - shut up coverity
eina_btlog is a backtrace "cleaner" that takes a raw bt from eina log
and gives a full readable bt for humans. it's run-and-quit binary like
ls or rm - it does its job and exits, so leaks are really of no
concern here...

CID 1297407
2015-06-09 19:39:01 +09:00
Stefan Schmidt 9434c0992c evas/evas_op_add_main: Remove superfluous if branch.
We do the same in both branches: return func.

CID: 1267478, 1267480, 1267482, 1267486
2015-06-09 10:38:40 +02:00
Stefan Schmidt 0da6dbb159 evas/evas_op_mul_main: Remove superfluous if branch.
We do the same in both branches: return func.

CID: 1267468, 1267471
2015-06-09 10:38:40 +02:00
Stefan Schmidt 9df111d766 evas/evas_op_mask_main: Remove superfluous if branch.
We do the same in both branches: return func.

CID: 1267481, 1267485
2015-06-09 10:38:40 +02:00
Stefan Schmidt 64a60f32a9 evas/evas_op_copy_main: Remove superfluous if branch.
We do the same in both branches: return func.

CID: 1267483, 1267484, 1267487, 1267488
2015-06-09 10:38:40 +02:00
Stefan Schmidt c4dd19c2df evas/evas_op_blend_main: Remove superfluous if branch.
We do the same in both branches: return func.

CID: 1267469, 1267470, 1267473, 1267474
2015-06-09 10:38:40 +02:00
Stefan Schmidt 85e5e9da5b evas/evas_op_sub_main: Remove superfluous if branch.
We do the same in both branches: return func.

CID: 1267476, 1267477, 1267479, 1267489
2015-06-09 10:38:40 +02:00
Carsten Haitzler 38f4201f6d ecore x - remove warning on unused variable 2015-06-09 17:35:04 +09:00
Carsten Haitzler 25983dcedd evas render2 work - begin to make rectangles deal with render 2 basic
infra
2015-06-09 17:34:39 +09:00
Jean-Philippe Andre 0a2362fa69 Edje: Fix indentation after a clean-up commit
@zmike apparently wanted to beat the b0rker in chief,
(see 172a0ccf0c) but edje_text.c came out worse than before :)

eo_do() seems to totally mess with editors' auto-formatting in
some cases.
2015-06-09 16:20:03 +09:00
Jean-Philippe Andre fb58613e18 Evas: Fix shadow warning 2015-06-09 15:55:35 +09:00
Jihoon Kim b8bcc35f7a ecore_imf/wayland: support on-demand show mode
In on-demand show mode, input panel will be shown in case of only an user's explicit Mouse Up event.
It doesn't request to show the input panel even though the Input Method Context has focus.
2015-06-09 14:30:07 +09:00
Ji-Youn Park 0c386dbb16 ecore_x_xi2: remove useless define check XI_TouchXXX.
Summary:
we can use XI_TouchXXX defines after xi2_2. So we don't need check XI_TouchXXX defines.
I think it is simple only using the ECORE_XI2_2 define instead of using XI_TouchXXX defines.
2015-06-09 13:10:59 +09:00
Ji-Youn Park 105cf65c80 ecore_x_xi2: remove useless define check XI_TouchXXX.
Summary:
we can use XI_TouchXXX defines after xi2_2. So we don't need check XI_TouchXXX defines.
I think it is simple only using the ECORE_XI2_2 define instead of using XI_TouchXXX defines.

Reviewers: raster, cedric, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2637
2015-06-08 14:53:01 -04:00
Mike Blumenkrantz 172a0ccf0c edje: reformat all C files
this has been unreadable for years due to the french tabber.
2015-06-08 14:43:00 -04:00
Mike Blumenkrantz 86e5a1a27c Revert "edje: set GROUP/SWALLOW/EXTERNAL pass events based on mouse events"
This reverts commit c38f84e64f.

apparently many existing edje groups were written with the assumption that
this was broken, so fixing it is impossible at this point
2015-06-08 13:29:02 -04:00
Mike Blumenkrantz c38f84e64f edje: set GROUP/SWALLOW/EXTERNAL pass events based on mouse events
previously these parts would fail to consume mouse events as expected,
leading to strange event chains which were inconsistent with other types
of parts

@fix
2015-06-08 13:21:58 -04:00
Daniel Kolesa d8a56d03a9 ecore: move eo docs to new format 2015-06-08 17:36:32 +01:00
Daniel Kolesa 1a317196ae eolian/generator: use get/set doc as primary if needed 2015-06-08 17:36:32 +01:00
Cedric BAIL bc244e7a18 eina: fix copy and paster error detected by Coverity.
CID 1302701
2015-06-08 18:04:43 +02:00
Daniel Kolesa 555c664ed2 eolian/generator: support for since tag in doc gen 2015-06-08 16:17:00 +01:00
Stefan Schmidt d50cebbd4f modules/evas/engines/software_generic: No need to check enums for smaller 0
Evas_Image_Orient is an enum starting at 0 thus we never go below 0. Remove
unneeded checks.

modules/evas/engines/software_generic/evas_engine.c:1558:4: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
modules/evas/engines/software_generic/evas_engine.c:1560:8: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
2015-06-08 17:09:38 +02:00
Stefan Schmidt ef81feff16 emile: Init ptrag as it might get used uninitialized if not
lib/emile/emile_image.c:2099:49: warning: 'ptrag' may be used uninitialized in this function [-Wmaybe-uninitialized]
2015-06-08 17:09:38 +02:00
Stefan Schmidt b1709917c5 eavs_3d: Avoid enum check for < 0
Evas_3D_Mesh_Primitive is a enum starting from 0 so it never will be below 0.
Just as the compiler tells us. Remove unneeded check.
lib/evas/canvas/evas_3d_primitive.c:48:4: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
2015-06-08 17:09:38 +02:00
Chris Michael 13df35050c ecore-wayland: Fix T2466: Update xdg shell protocol code
Summary: This updates the xdg_shell protocol and code to support
XDG_SHELL version 5. This allows EFL/Elm apps to function again in
Weston.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-08 10:58:51 -04:00
Daniel Kolesa 7a38f8ec21 eolian: support for @since tag in new doc comments
This is kind of ugly, but I didn't see a better way to do it without turning
this into a much more complicated parser. So this will have to do unless we
find something else to add, in which case a new doc parser will be required.

@feature
2015-06-08 15:57:15 +01:00
Daniel Kolesa 15a64fdc86 eolian: we need import_types_ref.h included in tarball
If we don't, distcheck fails (because of missing file).

@fix
2015-06-08 11:03:33 +01:00
Daniel Kolesa 9ea802c841 eolian/generator: fix a false positive in eolian types_gen
While it is true that 'strrchr' may return NULL, in this case it
never will (there is always a newline). Either way, silence Coverity.

Fixes CID 1304558.
2015-06-08 10:56:54 +01:00
Daniel Kolesa a1b2358527 eolian_cxx: initialize all members in a struct correctly
Fixes CID 1298133.

@fix
2015-06-08 10:48:22 +01:00
Daniel Kolesa 5813dbffe8 eolian: silence static analysis
Add some unreachable returns to fix CID 1304557.
2015-06-08 10:43:20 +01:00
Avi Levin 24b786462a evas_clickable_interface: adding new event 2015-06-07 11:00:52 +03:00
Avi Levin 7d493fb420 evas: porting evas smart callbacks to eo 2015-06-07 11:00:52 +03:00
Avi Levin f9c116a487 emotion: porting evas smart callbacks to eo 2015-06-07 11:00:52 +03:00
Avi Levin b563efc52f edje: porting evas smart callbacks to eo
It's the first stage of replacing calls of evas_object_smart_callback_add/del/call
with eo_callback_add/del/call.
This will reduce the use of legacy events and callbacks lists in
smart_object which in turn will improve performance and reduce memory
use.
2015-06-07 09:55:41 +03:00
Chris Michael 50a37e72fc evas-gl-drm: Trap for invalid gbm bo
Summary: If we fail to lock the front buffer, we will not get a valid
bo returned so we should not be calling other functions which require
a bo.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 13:40:35 -04:00
Daniel Kolesa ceda77750b eo: move some eo files to new doc syntax 2015-06-05 17:03:36 +01:00
Daniel Kolesa 1f84f5eb6b eolian/generator: generate @ref foo for @foo 2015-06-05 17:02:47 +01:00
Daniel Kolesa 5876b08fdb eolian/generator: use more correct indent offset in types doc gen 2015-06-05 16:43:30 +01:00
Daniel Kolesa e94fdac885 eolian: remove support for short doc comments (//@) 2015-06-05 16:10:12 +01:00
Daniel Kolesa 3131c667e9 eolian/generator: fix silly shadow warning 2015-06-05 15:38:53 +01:00
Chris Michael 50c5ce0f9f eina: Fix warning about unused paramaters
@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:12:46 -04:00
Daniel Kolesa a45c3db808 eolian/generator: @param[in,out] is the correct inout syntax 2015-06-05 15:09:05 +01:00
Chris Michael 939d221ff1 evas-gl-drm: Fix issue with swap mode returning wrong value
Summary: This fixes a crashing issue in evas image cache due to the
engine returning an improper swap mode.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:45 -04:00
Chris Michael a83bb5e45d evas-gl-drm: Refactor gl_drm engine to not use dumb buffers
@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:45 -04:00
Chris Michael 35e7d36489 ecore-evas-drm: We don't need to feed mouse events here
@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:45 -04:00
Chris Michael 6407b8a820 ecore-drm: Don't free an output on unplug
Summary: We should not be freeing an output when it gets unplugged (as
it may get replugged). Just disable rendering on that output

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:45 -04:00
Chris Michael 70b674d06c evas-gl-drm: Create eglContext before eglWindowSurface
Summary: We should be creating the eglContext before trying to create
the window surface.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:44 -04:00
Chris Michael 493e751882 ecore-evas-drm: Use XRGB format for gl_drm canvas
@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:44 -04:00
Chris Michael 47a2602af7 evas-gl-drm: Readd support for pre_swap/post_swap callbacks
Summary: The pre/post swap callbacks were forgotten when doing the
engine rewrite, so readd them

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:44 -04:00
Chris Michael 354fd6f67b ecore-drm: Don't crash when trying to disable an output
Summary: If we call these functions with an already disabled output,
we crash. Check for an output being 'enabled' before we make these
calls.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:44 -04:00
Chris Michael fb9f33035e ecore-evas: Change gl_drm to be the proper engine name
@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:44 -04:00
Chris Michael 027d974004 ecore-drm: Remove erroneous error messages from EINA_SAFETY checks
Summary: As the gl_drm engine code will almost always pass NULL
rectangles, remove the EINA_SAFETY checks so that logs don't fill with
meaningles error messages.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:44 -04:00
Chris Michael 39c28cbe8e ecore-evas-drm: Update ecore_evas_drm for recent evas gl_drm changes
Summary: Previous Ecore_Evas drm code would create the gbm device and
surface inside the gl_drm function. As these are now handled inside
the evas-gl-drm engine itself, this code is not needed here.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:44 -04:00
Chris Michael ee593050f1 evas-gl-drm: Rework gl_drm engine to function again
Summary: Previous gl_drm evas engine code did not work properly (or at
all really). This reworks/refactors the gl_drm engine code to work
again with the changes made to ecore_drm.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:44 -04:00
Chris Michael 58dbb63ba4 evas-gl-drm: Remove old engine code
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:44 -04:00
Daniel Kolesa 3f4c569341 eolian: don't emit an extra empty line in certain cases 2015-06-05 14:51:11 +01:00
Daniel Kolesa ac0113ba2b eolian/generator: generation for new documentation system
This commit adds the necessary generator logic to emit doc
comments from the new doc syntax. Old doc comments are kept
in for the time being as they're used within the EFL but they
will be removed eventually. This new generator focuses all the
important code in one place, making usage easy.

@feature
2015-06-05 12:15:51 +01:00
Felipe Magno de Almeida 51d9760fe6 eolian-cxx: Removed unused function
Removed unused function and consequent warning
2015-06-05 00:19:34 -03:00
Lukasz Stanislawski 2017c8be95 ecore-x: add new grab touch devices functionality.
Summary:
EFL currently supports pointer grabbing. This patch introduces new API
allowing to grab all slave touch devices registered in X server
Grabbing is performed by XIGrabDevice function from XInput 2.0.

By default ecore_x_input_touch_devices_grab grabs all XISlavePointer devices,
having XITouchInfoClass. Function returns EINA_TRUE if at least one touch device
was successfully grabbed. ecore_x_input_touch_devices_ungrab ungrabs all
previously grabbed devices.

To process events correctly change has been done in x_input_handler to emulate
mouse pointer events. If XITouchEmulatingPointer flag is set on touch events and
device is grabbed framework will generate mouse events. This is required
due to X Server design in which mouse events are no longer send to client when device is
detached (grabbed) from virtual core pointer.

@feature

Reviewers: cedric, raster, devilhorns

Subscribers: seoz, cedric

Differential Revision: https://phab.enlightenment.org/D2568
2015-06-04 13:06:27 -04:00
Daniel Kolesa af2bcfa9d1 eolian: double newline ends summary, not single
This allows you to split the summary on multiple lines
if necessary (for example to satisfy line limit)

@fix
2015-06-04 15:41:52 +01:00
Tom Hacohen 20934fa03d Evas 3d texture: Fix some Eolian warnings. 2015-06-04 10:16:14 +01:00
Tom Hacohen 183541cc75 Evas image: Fix some Eolian warnings. 2015-06-04 10:16:14 +01:00
Tom Hacohen b9a3b06984 Evas canvas: Fix some Eolian warnings. 2015-06-04 10:16:14 +01:00
Vivek Ellur 81b52fb0ec eina: add test cases for eina_matrix3 APIs
Summary:
Added test cases for eina_matrix3_values_get, eina_matrix3_values_set,
eina_matrix3_equal, eina_matrix3_type_get APIs

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

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-04 10:32:18 +02:00
Cedric BAIL 408fc6237e evas: silence warning.
So I don't like this data being void and stride being in bytes, but changing it
for silencing a warning will be a massive change. I will put that on the major
cleanup that Evas_3D need to receive.
2015-06-03 18:17:23 +02:00
Daniel Kolesa 5892fc630c eolian: remove prototype of non-existent API 2015-06-03 16:47:24 +01:00
Daniel Kolesa ba033a4cfc eolian: add documentation handling API
This adds new APIs that deal with the new documentation syntax
provided by Eolian. The old doc comment APIs are considered
deprecated from now on and will be removed.

@feature
2015-06-03 16:46:47 +01:00
shilpa.singh a867caf260 Edje: Add have_selection check to avoid unnecessary function calls
Summary:
Check for have_selection flag when left/arrow keys are pressed to jump
across the selected text, to avoid unnecessary function calls of
comparision, copy of sel_start and sel_end pointers.

Test Plan: Press left and right arrow keys on selected and normal text.

Reviewers: herdsman, tasn

Subscribers: SubodhKumar, navnbeet, cedric

Differential Revision: https://phab.enlightenment.org/D2621
2015-06-03 16:39:42 +01:00
Ivan Furs a88aebe8cc evas: for aabb add interpolation frame when base frame is not found
Summary:
Old algorithm searched specified frame of the base frame and when it could not find the specified frame it ignored. So the bounding box was not synchronized with the object.
New algorithm always returns specified base frame or frame interpolation between the nearest base frames. That does synchronizes mesh object and his bounding box.

Reviewers: Hermet, cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-03 17:14:12 +02:00
Cedric BAIL 69e44c24e3 ecore_con: fix error handling case.
Since the move to Eo, in case of error we do not need to cleanup anything when
finalize finish. The kill function was arranged to do so, but it was still emiting
an event exposing the invalid Eo object. Looking closely at the code, that should
have not happened, as there was no symetrical ADD event and the function would do
nothing else. So removing it. This prevent any potential SEGV from a function that
would catch the DEL event.

@fix
2015-06-03 17:14:12 +02:00
Daniel Kolesa b2c47737b1 eolian: properly fill and free all doc fields 2015-06-03 15:35:20 +01:00
Daniel Kolesa 4bdacafaf1 eolian: start exposing Eolian_Documentation 2015-06-03 15:35:20 +01:00
Bogdan Devichev 8369dfd28f evas_3d: fix coverity scan CID 1302703 and CID 1302702
Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2613
2015-06-03 21:26:34 +09:00
jiin.moon 63a12d7d26 emile: fix region load for jpeg image with orientation different set.
Summary:
If you try to load the jpeg image with an orientation mode defined
using elm_photocam, you can see the broken image(in canse of 90 degree)
or even segmentation fault can happen (in case of 180,270 degree)

@fix

Test Plan: photocam menu on elementary_test

Reviewers: Hermet, cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-03 13:46:44 +02:00
Daniel Kolesa 0c729faf68 eolian: initial test file for docs (no APIs to test yet) 2015-06-03 12:06:36 +01:00
Daniel Kolesa 5084938c04 eolian: enums can't be opaque, check properly 2015-06-03 12:01:21 +01:00
Tom Hacohen 6190f3cb46 Edje object: Fix more Eolian warnings. 2015-06-03 11:30:41 +01:00
Daniel Kolesa a6fbe7b6a5 eolian: preliminary parsing of doc syntax 2015-06-03 11:11:12 +01:00
Dongyeon Kim 25822405a4 evas/gl_common: Reset mvp matrix only for shaders that are being used
Summary:
Evas has quite a number of shaders, and resetting the projection matrix
for all shaders takes some time, which is an overhead when target surface
is continuously being changed (ie. when using proxy).
So here we reset the projection matrix for shaders that are actually used.
2015-06-03 11:30:22 +09:00
Dongyeon Kim 3e39bf3638 Evas GL: support surfaceless make current
Summary:
Evas GL now supports surfaceless make current, where
evas_gl_make_current can be called with sfc parameter NULL.
This closely resembles EGL_KHR_surfaceless_context extension,
where applications that only want to render to client API targets
can make current to NULL surface instead of creating a dummy egl surface.
@feature
2015-06-03 11:30:22 +09:00
Dongyeon Kim a4c05cc68c Evas GL: Skip surface buffers create/allocate for pbuffer with NO_FBO
Summary:
When pbuffer surface is created with EVAS_GL_NO_FBO config,
FBO should not be created/allocated.
2015-06-03 11:30:22 +09:00
Dongyeon Kim 517109858e Evas GL: Match FBO config with window surface config
Summary:
When direct rendering is enabled, FBO configuration should match
window surface configuration as FBO will be used in fallback cases.
So create FBO with configuration from window surface.
@fix
2015-06-03 11:30:22 +09:00
Dongyeon Kim ae91db021b Evas GL: Pass correct attachment enum for glDiscardFramebufferEXT
Summary:
When default framebuffer(0) is bound, attachment should contain
COLOR, DEPTH or STENCIL for glDiscardFramebufferEXT.
When a framebuffer object is bound, attachment should contain
COLOR_ATTACHMENT0, DEPTH_ATTACHMENT or STENCIL_ATTACHMENT.
This should be correctly taken into account for indirect rendering,
where internal FBO is used.
@fix
2015-06-03 11:30:22 +09:00
Dongyeon Kim e4e67732c2 Evas GL: return correct context for context_get with indirect context
Summary:
When evas gl falls back to using indirect context,
evas_gl_current_context_get() should return the indirect context.
@fix
2015-06-03 11:30:22 +09:00
Dongyeon Kim 660bfcf3c2 Evas GL: Separate EGL and GL extension lists
Summary:
Separate EGL extensions from GL/GLES extension list, since
we have extension list for each GL version, and we do not want to
check EGL extensions differently when different GL versions are used.
This also simplifies extension string get function as we just need to
concatenate EGL and GL extensions rathan than keeping track of
GL extensions only.
2015-06-03 11:30:22 +09:00
Dongyeon Kim 411bc27390 Evas GL: Share texture id in case EGL image is not supported
Summary:
When EGL image is not supported, Evas GL should share texture id
to the gl backend for indirect rendering to work.
2015-06-03 11:30:22 +09:00
Dongyeon Kim 34480d3d5d Evas GL: Make current to an Evas GL context before destroying surface buffers
Summary:
We should make current to an Evas GL context before calling _surface_buffers_destroy,
otherwise resources from GL backend will be removed.
@fix
2015-06-03 11:30:22 +09:00
Dongyeon Kim b0d2643f93 Evas GL: Add indirect surface fallback and yinvert callback
Summary:
When either FBO or EGL image from texture extension is not supported,
we can use pixmap surface as indirect surface fallback.
Since native pixmaps have (0,0) in the upper left while
FBOs have (0,0) in the lower left, we should invert the y coordinates
when native pixmaps are used as the render target.
To accomodate run-time y-invert check we add a new callback for
EVAS_NATIVE_SURFACE_EVASGL type.

Reviewers: cedric, jpeg

Subscribers: wonsik, mer.kim, cedric
2015-06-03 11:30:22 +09:00
Dongyeon Kim 63e057bff9 Evas GL: Fix direct_mem_opt and direct_override
Summary:
Remove surface buffer create/allocate in pbuffer_surface_create.
In evgl_make_current, we should use direct_mem_opt, direct_override values
set in EVGL_Surface struct, not the global value set by env variables.
@fix
2015-06-03 11:30:21 +09:00
Dongyeon Kim ea5788d247 Evas GL: destroy egl image when surface is destroyed
Summary:
We should destroy egl image when surface is destroyed
to avoid memory leak.
@fix

Test Plan: Evas GL test cases

Reviewers: jpeg

Subscribers: mer.kim, mythri, wonsik, cedric

Differential Revision: https://phab.enlightenment.org/D2357
2015-06-03 11:30:21 +09:00
Dongyeon Kim e789b24ff4 Evas GL: 1.x support for GLX
Summary:
Now we can support EVAS_GL_GLES_1_X version for GLX backend
with both direct and indirect rendering.
Refactored api get functions to have similar code path for each version.
@feature

Test Plan: Evas GL test case

Reviewers: cedric, jpeg

Subscribers: cedric, mer.kim, mythri, wonsik

Differential Revision: https://phab.enlightenment.org/D2342
2015-06-03 11:30:21 +09:00
Jean-Philippe Andre 777f7f2047 Evas masking: Fix rare issue of invalid rendering (GL)
Thanks Dongyeon for finding out this solution. Now that was
one nasty bug :)

Somehow the currently bound texture id would not match what
Evas expected, so Evas would not call glBindTexture when
required. As a result it was drawing black (sampling from tex 0).

@fix
2015-06-03 11:03:29 +09:00
Daniel Kolesa a4485484f1 eolian: Eolian_Object for docs 2015-06-02 18:27:46 +01:00
Daniel Kolesa 0703cc0f5e eolian: initial lexing of documentation 2015-06-02 18:12:09 +01:00
Chris Michael 732d67c155 evas-drm: Remove useless fields from Outbuf structure
Summary: These fields are not needed in the outbuf structure as they
are never used, so just remove them.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-02 09:24:22 -04:00
Chris Michael 8e4426642d evas-drm: Minor formatting fix
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-02 09:17:57 -04:00
Chris Michael 6929172a81 evas-gl-drm: Fix formatting
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-01 14:06:21 -04:00
Chris Michael a9a733c2f5 ecore-evas: Fix issue of gl_drm engine not being able to load
Summary: The engine for OpenGL with drm is actually called "gl_drm".
There was an issue where the engine_get function would return false
because the #ifdef was testing the wrong thing.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-01 14:06:21 -04:00
Daniel Kolesa 97443242c2 autotools: provide smaller EOLIAN_FLAGS for customization 2015-06-01 17:35:39 +01:00
Daniel Kolesa ce65929422 autotools: remove EOLIAN_FLAGS
We don't need to specify each dir separately as Eolian
has been searching recursively for quite a while.
2015-06-01 17:28:45 +01:00
Cedric BAIL 0148350ce9 edje: remove left over copy&paste that triggered warning. 2015-06-01 17:50:02 +02:00
katpavalli ff1184df2e edje: add ability to change the language on one specific edje object.
Summary:
   Add a new property to edje_object.eo for setting the language on one Edje_Object.

Test Plan:
Test Code to test this implementation is done as part of efl/src/examples/edje/edje-text.c and efl/src/examples/edje/text.edc
   edje_cc -md <dir path>/efl/src/examples/edje/ text.edc && gcc -o edje-text edje-text.c `pkg-config --libs --cflags ecore-evas edje evas ecore eo`
   ./edje-text

   1) Click On the text "Click here"
      The language gets changed as per the specific edje object.

   2) Click on the text object at bottom. "Click here"
      The system language gets changed and the below two edje objects language are changed globally.

Reviewers: cedric, shilpasingh

Subscribers: poornima.srinivasan, govi, rajeshps, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-01 17:50:02 +02:00
Daniel Kolesa 944e44b17d eolian: tests for declaration api 2015-06-01 15:24:00 +01:00
Daniel Kolesa 9c024993a1 eolian/generator: generate types in their original decl order 2015-06-01 15:06:25 +01:00
Daniel Kolesa e58da1faa0 eolian: add actual useful declaration APIs 2015-06-01 14:48:50 +01:00
Daniel Kolesa 522c021a36 eolian: initial exposed declaration API - not yet very useful
This API allows you to retrieve a list of declarations in the file
(classes, types, vars) in the order they were declared in.

@feature
2015-06-01 14:32:45 +01:00
Tom Hacohen 11ca857570 Efl File: Add Eina.File eolian type and use it. 2015-06-01 14:05:31 +01:00
Tom Hacohen 87e7d2f200 Eo types: Fix Eina.Rectangle's namespace. 2015-06-01 14:04:09 +01:00
Tom Hacohen 6df0af6b4e Eo types: Fix Eina.Stringshare's namespace. 2015-06-01 14:03:04 +01:00
Tom Hacohen 86e2e52baa Evas object: Migrate (some) types to .eo files. 2015-06-01 14:01:11 +01:00
Tom Hacohen 5e43550937 Evas table: Migrate types to .eo files. 2015-06-01 12:12:03 +01:00