Commit Graph

13906 Commits

Author SHA1 Message Date
Chris Michael 8b3e05a7f1 ecore-drm2: Check return of elput_manager_open
We should check to make sure that opening the device has succeeded
before trying to continue

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 92553e167e ecore-drm2: Initialize elput input when device gets opened
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 6697584fb9 ecore-drm2: Fix potential invalid access to output current_mode
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael e934f546ad ecore-drm2: Add API function to get screen size range
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael f3b7672551 ecore-drm2: Add API function to return available crtcs
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 0c0dd22b5f ecore-drm2: Add API function to get possible crtc of a given output
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 253f88b3ec ecore-drm2: Add API to return current fb used on a given output
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael d08d7e18e3 ecore-drm2: Add API to return current resolution of a given output
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 1eb85aab57 ecore-drm2: Add API function to return connector type of an output
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael bd2ab7de96 ecore-drm2: Add API function to get cloned & connected properties of an output
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael bdddc912d7 ecore-drm2: Add API functions to get name & model of an output
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael a6b018a2a8 ecore-drm2: Add API function to set the mode of an output
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 55f228a238 ecore-drm2: Add API function to return information about a given output mode
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael ed58056e06 ecore-drm2: Add API function to return list of output modes for a given output
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael ad58670c56 ecore-drm2: Add API function to return physical size of a given output
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael b634f9485a ecore-drm2: Add API functions to get/set if an output is enabled
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 758ce91719 ecore-drm2: Add API functions to get/set if an output is primary
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael b1892111b1 elementary: Port elementary to use Ecore_Drm2
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 93178199a6 ecore-evas: Port ecore_evas drm engine to use Ecore_Drm2 library
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael ccb573ec7b evas-engines: Port evas drm engines to use Ecore_Drm2 library
This patch ports the evas drm and gl_drm engines to use the new
Ecore_Drm2 library

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 13337c2583 ecore-drm2: Add API functions needed to port Ecore_Evas drm
This patch adds 2 new API functions which are required by Ecore_Evas
in order for it to function with drm. These API functions allow for
restricting pointer movement, and for setting the window id which will
be used when sending input events

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 3c332e1f88 ecore-drm2: Add drm2 event for session activation
This patch adds a new Ecore_Drm2_Event_Activate that can be raised to
inform Enlightenment that a session has been activated or suspended so
that rendering can be paused/resumed

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 296d233f64 ecore-drm2: Add API functions to get and set pointer position
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael d2b4176592 ecore-drm2: Add API functions to work with framebuffer objects
This patch adds support for creating, deleting, and manipulating
framebuffer objects via exposed API.

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 4e38aabdc0 ecore-drm2: Add API functions to work with outputs
This patch adds support for creating, destroying, and otherwise
working with outputs via exposed API functions.

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 9c7b657287 ecore-drm2: Add API functions to work with a drm device
This commit adds new API functions to find, open, and close a drm
device, along with API functions to retrieve clock_id and cursor size.

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael a0d3b955bf ecore-drm2: Add start of Ecore_Drm2 library
This new library is going to replace the existing Ecore_Drm. This will
refactor a lot of the code, bring improvements over the existing API,
and provide additional support for missing features.

@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Carsten Haitzler 072674dbe2 efl - ecore c+ ecore-imf - fix odd case input when faking a real event
so ibus module for ecore-imf likes to send an x event back to
ourselves faking a key... this works unless we are looking at
modifiers that make make for odd combos with keysyms turned into
keycodes. so actualyl use the correct original keycode plus state
unless we are having to explicitly send a keysym from ibus core.

this fixes T3703

@fix
2016-05-27 23:57:30 +09:00
Chris Michael 20f418b8d7 elput: Add API function to support caching of existing keymap
@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 09:17:46 -04:00
Chris Michael 65cfdaa3dd elput: Add API function to support caching of an xkb_context
@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 09:12:53 -04:00
Ji-Youn Park ec464939d9 elm_win: clean elm apis related with rotation.
elm_win only support two kind of apis.
1. elm_win_screen_rotation_get
this api is used to detect screen rotation before app doing something before rotation event.
for example, app can query rotation before deciding there layout.
2. elm_win_available_rotation_set/get
like video app, can set only landscape mode if they need.
2016-05-27 16:43:08 +08:30
Ji-Youn Park 589eae9a8b elm_win: remove elm_win_wm_manual_rotation_done feature from eo.
this kind of manual rotation_done api don't need to public api now.
under the window deal with rotation job automatically.
2016-05-27 14:25:50 +08:30
Jean-Philippe Andre 751b50ae22 elm_win: Code simplification
Simplify ELM_WIN_DATA_GET_OR_RETURN
2016-05-27 13:57:09 +09:00
Yeshwanth Reddivari f043c3be61 Separtor: use orientation APIs
Summary: Use orientation APIs instead of horizontal get/set apis.

Test Plan: elementary_test -to separator

Reviewers: jpeg, cedric, Hermet, raster, singh.amitesh

Reviewed By: singh.amitesh

Differential Revision: https://phab.enlightenment.org/D3984
2016-05-27 10:11:13 +05:30
Felipe Magno de Almeida 058f07e759 eolian-cxx: Added tests for wrapper conversion in C++ API 2016-05-26 16:47:20 -03:00
Felipe Magno de Almeida a2d783a7c2 eolian-cxx: Fixed lookup of class types 2016-05-26 16:47:04 -03:00
Felipe Magno de Almeida 66dade5604 eolian-cxx: Removed useless commented code 2016-05-26 16:46:40 -03:00
Felipe Magno de Almeida 396fd5e3e1 eina-cxx: Added crange_array template typedef 2016-05-26 16:46:23 -03:00
Felipe Magno de Almeida edd99d24ef eina: Add benchmarks for eina promises 2016-05-26 14:20:24 -03:00
Chris Michael 2c043ca205 elput: Add APIs to support keyboard key remapping
This patch adds 2 new API functions which can enable keyboard key
remapping, and set which keys are to be remapped.

@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-26 12:49:24 -04:00
Felipe Magno de Almeida 1ed8759e1a ecore: eldbus: Fix prototype for promise then_cb new prototype
Added Eina_Promise parameter and removed indirection for Eina_Error.
2016-05-26 13:35:07 -03:00
Felipe Magno de Almeida b0b8109cd5 eina: Make cancelled promises use EINA_ERROR_PROMISE_CANCELLED error code 2016-05-26 13:35:07 -03:00
Felipe Magno de Almeida b7cdcff56a eina: Use pointer directly instead of by unnecessary indirection 2016-05-26 13:35:07 -03:00
Felipe Magno de Almeida 2457d6f595 eina: Fix crashing when accessing past-the-end of the malloc'ed promise
The promise race composition was calculating its size wrongly, making
the promise's size smaller than it should, causing heap corruption.
2016-05-26 13:35:07 -03:00
Felipe Magno de Almeida 3ffe38b0c3 eina: Fix then callbacks prototypes
Eina_Error is not passed by pointer anymore, which could cause invalid
pointer access in promise compositions (all and race).

Also added Eina_Promise* to prototypes.
2016-05-26 13:35:07 -03:00
Felipe Magno de Almeida a7e5487439 eina: Add missing buffer_get function in Eina_Promise
Function buffer_get was available only in Eina_Promise_Owner, despite
being defined in both classes.
2016-05-26 13:35:07 -03:00
Felipe Magno de Almeida 28bc891925 eina: Fix new prototype for then cb in test
Added Eina_Promise* parameter to function prototypes
2016-05-26 13:35:07 -03:00
Chris Michael 054a9c8182 elput: Add API function to calibrate input devices
This adds an API function that can be called to calibrate input
devices based on a given output size

@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-26 11:43:22 -04:00
Chris Michael ad58478b76 elput: Remove badly named API
This patch removes an API function that basically "tried to do too
much". This was supposed to be used for centering mouse pointer and
calibrating an input device based on output size. Remove this
silliness. It would be better to have one API for calibrating, and a
separate API for pointer centering. These new APIs will come shortly
in pending patches.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-26 11:37:18 -04:00
Chris Michael bf7978d9e3 elput: Fix issue where double/triple click was not working
As we use the mouse threshold for determining double/triple clicking,
it would probably be a good idea if that threshold had a value

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-26 11:35:42 -04:00
Daniel Kolesa 4844034a1a eolian: add core infra to support builtin strings and void pointers 2016-05-26 14:36:41 +01:00
Daniel Kolesa 2781680b51 eolian: put ownable checks into its own func 2016-05-26 14:17:07 +01:00
Chris Michael 3c6cb6a02b elput: Minor formatting fixes
NB: No functional changes, just cleanup of formatting

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-26 08:42:38 -04:00
Jean-Philippe Andre 2af9f15bf9 Evas: Fix compilation warning
Missing initializers. Damn C and {0}.
I could also have used GCC's {} form.
2016-05-26 20:53:53 +09:00
Jean-Philippe Andre 3d6ea827b9 Evas GL: Fix compilation warning, use func pointer
GLES 3 support should be a runtime-only requirement, so
no direct call to a GLES3 function should appear in evas.
Use our dlsym() pointer instead.
2016-05-26 20:50:53 +09:00
Jean-Philippe Andre 6e487e93b8 Elm Layout: Make box & table part proxies temporary
efl_part returns short lived objects, let's make them
die after each function call.
2016-05-26 19:55:50 +09:00
Jean-Philippe Andre 58d0c89fd9 Elm.Layout: Fix BOX and TABLE usage with efl_part
Thanks Dave for the report. This was work in progress...
2016-05-26 19:55:50 +09:00
Jean-Philippe Andre 99924852ab Efl: Remove part name in Efl.Container (use Efl.Part)
This touches Edje and also Elementary where part names are used.
This commit blew up in size since now all content part APIs
(get, set, unset) require to use Efl.Part instead.

This is a big refactoring commit, but no logic should
have been changed. Fingers crossed.
2016-05-26 19:55:50 +09:00
Jean-Philippe Andre 56a7a66e97 Evas GL common: Simplify GLPIPES... trying to prevent a crash
An unknown crash happened in glDrawArrays() where color_ptr is
a non-reachable pointer that looks like a valid malloc() zone.

Unreproducible issue. I can only hope this patch doesn't actually
break anything.

This cleans up rectangle and line in particular, that were not
using common code to use GLPIPES. I honestly couldn't find a
problem though.
2016-05-26 18:35:07 +09:00
Jiwon Kim f20f4c6e50 Elm entry: fix returning wrong focus region
Summary:
In on_focus_region function,
entry returns relative x,y position from edje object.
It should be calculated from elm object's position.

@fix

Test Plan:
1. $elementary_test "Entry on Page Scroll"
2. click under button
3. click upper text in entry
4. page should not be scrolled

Reviewers: tasn, cedric, woohyun, Hermet, herdsman, raster

Subscribers: Blackmole, id213sin, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3923
2016-05-26 17:25:57 +09:00
Ji-Youn Park bc6eb250a0 elm_win: remove elm_win_conformant_set/get from eo
conformant set api give information to enlighten ment, this window
need to know the change of conformant size.
but in the future, window have to section background and forground.
if user set layout as content of background part, the layout size is
not changed by clipborad or keybord.

if user set layout as content of forground part of window, the layout size
is changed by clipboard or keyboard state.
and the window notify to the enlightenment it has interest soft input's state
automatically, without users api call
2016-05-26 16:48:02 +08:30
Ji-Youn Park 927fd22e89 elm_image: fix build break 2016-05-26 16:39:32 +08:30
Jaeun Choi 8cb6c3e466 Elm_image: implement 'scale_type' and 'scalable' property related functions
This patch implements the functions related to new eo properties
added in a5a44b0104
2016-05-26 16:26:04 +09:00
Ji-Youn Park e3de1ab9f7 elm_win: remove elm_win_keyboard_win_set/get from eo.
this api is not used by wayland side.
and this kind of API can be implemented name set or class set api.
2016-05-26 15:43:49 +08:30
Carsten Haitzler a1a2bc5017 eina test suite - ooops reenable tests
accidentally snukc in commented disables in test suite as i was
hunting why eina test suite crashes while dealing with feedback on my
compare fixes etc.
2016-05-26 13:03:01 +09:00
Carsten Haitzler 7ee4eba33f efl - new cmp "fix" code - remove one duplicated cmp 2016-05-26 12:49:58 +09:00
Carsten Haitzler 41842ca9f9 efl - fix many bounds over/underflow where we use int for ptr cmp
this addresses more things brought up in comments in

fixes T3638 commentd

@fix
2016-05-26 12:17:07 +09:00
Lauro Moura 7241b7375d eio: Adds Eo-based Eio API
The legacy Eio_File factory functions are replaced by an Eo object
called Eo_Job that return promises wrapping the async file operations.
With this commit, the legacy Eio callbacks are replaced by the following
Eo/Promises counterparts :

* Done_Cb -> Promise then success callback
* Error_Cb -> Promise then error callback
* Main_Cb -> Promise progress callback
* Filter_Cb -> Job object event (more below)

Events are used to deliver and get the filter data. To differentiate
between the named and direct versions, they come in "filter,direct" and
"filter,name" versions.

Monitors were wrapped inside a new class Eo_Sentry.

The user creates a sentry object and adds monitoring targets to it,
listening to events on it.

The sentry event info is composed of two strings. The source string
is the path being monitored, i.e. the one passed to eio_sentry_add, and
the trigger string is the path that actually triggered the event, e.g.
a new file created in a monitored directory.
2016-05-25 21:32:03 -03:00
Felipe Magno de Almeida de9be13d45 eina: Add promise parameter to then calllbacks
Added promise parameter to then callbacks so callbacks can steal
ownership of the value from the promise.
2016-05-25 21:32:03 -03:00
Lauro Moura 0eacdc03da eio: Call correct function to cleanup Eio_File.
The Eio functions operating on Eina_Files were just freeing
the Eio_File pointer on completion instead of calling eio_file_free
to unregister the thread.
2016-05-25 21:32:03 -03:00
Carsten Haitzler 636c8b48c7 eina hash - fix stringshare key comparison function
this fixes T3638

@fix

a note... thanks so much to aerodynamik for spotting this. i'm rather
surprised coverity didn't spot this... unless someone said to "shut up
coverity you're wrong" and they should not have.

i also might have expected compilers to spot this too... and add a
warning.

anyway ... this was a seriously subtle bug that could have caused all
kinds of havoc in efl.  keys that are different may be compared to be
the same. it could get ordering wrong and sorting thus maybe insert
keys that cannot be found anymore and oh so much more besides.
2016-05-26 09:28:23 +09:00
Chris Michael 03c42fd2cb elput: Fix formatting
NB: No functional changes, just making this readable

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-25 15:03:15 -04:00
Mike Blumenkrantz b9ecdcef6a elput: use physical name of seat when finding existing seats
"seat0" is used as the default internal name, and this is a physical name.
using the logical name causes mismatches and allows devices to function
in unintended ways
2016-05-25 12:57:27 -04:00
Mike Blumenkrantz 8c3f0ff640 elput: further simplify device internals
'window' and pointer max w/h attributes are set for a manager object,
so let the attributes stay there. this also resolves issues where devices
created at a later point would fail to be initialized with these attributes
2016-05-25 12:57:27 -04:00
Mike Blumenkrantz 7fdcf841f5 elput: change some functions and internal flags to enable async input setup
this sets attributes on the Elput_Manager struct so that devices created at
a later point can then have relevant attributes applied to them
2016-05-25 12:57:27 -04:00
Mike Blumenkrantz 5f088b026d elput: define and implement an async device opening interface for libinput
this adds an overly-complex method of removing blocking dbus calls from libinput's
synchronous device initialization architecture. libinput was clearly never meant
to be used in this way, but we're doing it anyway because we're efl.

 #SamsungFeatures
2016-05-25 12:57:27 -04:00
Mike Blumenkrantz 33a5d44dcf elput: remove 'sync' param from device management
unnecessarily complicates code
2016-05-25 12:57:26 -04:00
Carsten Haitzler 11393cfee3 Revert "eo - now ref and unref objects on each eo call to keep things safe"
This reverts commit 4044fe6504.
2016-05-25 17:35:53 +09:00
Amitesh Singh fbed817fca slider: no need to destroy & create popups again
already theme_apply() instantiates popups
2016-05-25 12:47:33 +05:30
Jean-Philippe Andre f212b62d52 fileselector button: Move EO APIs to legacy 2016-05-25 15:00:34 +09:00
Jean-Philippe Andre 317ce60ab6 fileselector entry: Move EO API to legacy 2016-05-25 15:00:34 +09:00
Jean-Philippe Andre d2ba9866fb Edje: Remove impossible code
With EO we can't possibly call an EO function
with NULL.
2016-05-25 15:00:34 +09:00
Amitesh Singh c983b3e1e6 slider: move range as a group in theme
Most of the used cases would be slider without range, hence move
range feature to a new theme.
"elm/slider/range/../.."
2016-05-25 10:35:38 +05:30
Carsten Haitzler ecc556c715 evas - use actual smart bounding box not obj geometry for render incl
render inclusion has bene used smart geom not bounding box from actual
objects for inclusion in rendering. use the bounding box to be correct.

@fix
2016-05-25 11:45:16 +09:00
Mike Blumenkrantz e682e7af55 eldbus: divide dbus call timeouts by 1000 to convert from milliseconds
@fix
2016-05-24 16:00:45 -04:00
Tom Hacohen 9c264fa028 Eo: Fix issue of too many unrefs in some cases.
This problem was that because the refcount is now shared between the
parent and the programmer in some cases we would get a double unref. An
example way of triggering it is creating a button and putting it in a
box. The box has a callback registered that when the button is deleted
it would delete itself too. The problem is that the delete callback is
called the button is removed from the box thus causing the box to unref
it again (because of the parent), although the refcount was already
accounted for.

There is another more convoluted scenario that I have yet to fix.

Thanks to raster for reporting.
2016-05-24 19:27:47 +01:00
Tom Hacohen 4bae0f135a Eo: use internal unref function intsead of public one.
This is a micro optimisation that doesn't really matetr, but since
we already have the actual eo object, we may as well use it.
2016-05-24 19:27:47 +01:00
Davide Andreoli b0ed787d03 Fix crazy indentation. no functional changes.
* keep on a single line if it fits 80 cols
* align to opening braces in functions
2016-05-24 20:21:19 +02:00
Daniel Kolesa 0a2bb86c63 eolian: replace Eina.Value with generic_value usage 2016-05-24 15:32:29 +01:00
Chris Michael eec50ed7bd elput: Add API function to set left-handed device
This commit adds an API function which Enlightenment can call in order
to set an input device to be "left-handed". Mainly used for a mouse
pointer, but not specific to pointers.

@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-24 09:19:04 -04:00
Daniel Kolesa 39b9c7564a eolian: add support for warning when pointer type is found (with env var) 2016-05-24 11:48:44 +01:00
Jean-Philippe Andre 35fc3f5130 Edje: Test proxy objects more
This tests that a cached object is not reused invalidly if
it was ref'ed.
2016-05-24 18:50:58 +09:00
Jean-Philippe Andre ba43e12722 Edje: cache proxy objects (1 slot only)
Also, fix calls to a proxy obj from a proxy function.
2016-05-24 18:50:58 +09:00
Jean-Philippe Andre df375ca395 Edje: fix test case (switch to efl_part) 2016-05-24 18:50:58 +09:00
Jean-Philippe Andre b84c9cc376 Edje: Auto-unref proxy objects after calls 2016-05-24 18:50:58 +09:00
Jean-Philippe ANDRE d0f141077e Efl: Add Efl.Part and switch to it
This should now fix the part API usage once and for all.
EFL should have no part name in any of its APIs beyond
the Efl.Part interface.

Part proxy objects (may be real objects) have a lifetime
of only one function call, in a fashion similar to eo_super.

@feature
2016-05-24 18:50:58 +09:00
Stefan Schmidt 93ab200d67 eolian-cxx: ship new complex.eo file in dist 2016-05-24 11:42:02 +02:00
Stefan Schmidt c785089f26 build: cxx bindings: make sure we ship needed headers in distribution
Ecore.hh and eina_workarounds.hh have not been shipped in the dist and thus
failed the build.
2016-05-24 10:47:22 +02:00
Stefan Schmidt d549b4d705 build: cxx binding: fix typo in file path to be cleaned 2016-05-24 10:16:06 +02:00
SangHyeon Lee 89d886af48 genlist: process message before restricted calc for get proper size of text and content visibled
Summary:
genlist text_get and content_get send signal for visibled or re-arrange
it's part on edc.
this singal may need to be processed before calculating item edc for
proper result.

we cannot call one only one time in realized function, because, size
must calculated before the realized callback, and user can send
customized signal in their realized callback which also need to be
processed.

Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
2016-05-24 14:14:24 +09:00
Carsten Haitzler 4044fe6504 eo - now ref and unref objects on each eo call to keep things safe
so... i got this ... callback calls callback calls something calls
callback that deletes the original object at the top so when it comes
back ... things die as the object was destructed. in removing eo_do()
we removed the ref/unrefs that went with it. so this uses the
_EO_API_BEFORE_HOOK and _EO_API_AFTER_HOOK to call exposed "internal"
public functions _eo_real_ref() and _eo_real_unref().

this fixes a new segv i've noticed in several e dialogs where hitting
close does the above via callbacks and closes the window etc.
2016-05-24 09:20:49 +09:00
Carsten Haitzler b8b41e6683 ecore-con tests - remove WRONG connect check
sothe ecore-con tests were calling ecore_con_server_connected_get()
every time a server was created on a NUL server object. WTF? this is
pointless. testing if an api returns tre on being connected on an
invalid object? all it does is create lots of eo noise. remove so we
can see the real errors in the output.

@fix
2016-05-24 09:20:49 +09:00
Carsten Haitzler 1eba9d9de0 ecore-con - simplify down to a single libc resolver
Summary:
this removes the cares/ares based resolver and the compiled-in dns.c
resolver, modified the getaddrinfo based resolver to use threads not
forking (almost halving its size) and now makes that the only resolver
we have. getaddrinfo handles ipv6 and ipv4 (according to docs). this
simplifies code paths, drops code size of the efl tree by about 11k
lines of code, makes it easier to test and more robust to future
changes with ip resolving as it now just relies on libc. we won't have
coverity complaints on dns.c imported code anymore to fix and don't
have tokeep up with bugfixes/security from the upstream imported code.
this means we use a single resolver on all platforms (windows, mac,
linux) as opposed to before where cares was used for windows, and
dns.c on linux/mac. oh and the forking original was broken since our
move to eo too. so it couldnt even compile if enabled, letalone work.

so fix bug with missing /etc/resolv.conf that dns.c couldn't cope
with, fix testability, fix maintainability and reduce efl codebase size.

this fixes T3668

@fix
@improve

Subscribers: cedric, seoz, jpeg

Maniphest Tasks: T3668

Differential Revision: https://phab.enlightenment.org/D3971
2016-05-24 09:20:49 +09:00
Felipe Magno de Almeida 6e23780bb1 eolian-cxx: Fix generation of complex types in C++ binding
Fixed generation of complex types in C++ binding, with tests. This
problem came after the removal of the pointer types for top-level
complex types.
2016-05-23 17:34:50 -03:00
Felipe Magno de Almeida 8fd1656898 eolian-cxx: Add test for list and array complex types 2016-05-23 16:08:41 -03:00
Felipe Magno de Almeida b613d6f1d9 eolian: Allow promises to have a second type
Promises can have a second type, which is the progress type
2016-05-23 15:58:11 -03:00
Felipe Magno de Almeida e3c8b280c6 c++: Reorganized C++ binding generation
Moved all generation to a single Makefile_Cxx.am file instead of
throughout the whole project. And fixed C++ generation on Elementary
after elm merge.
2016-05-23 15:05:50 -03:00
Davide Andreoli 930f39b91b Slideshow: Fix doc to reflect the real behaviour of the widget. 2016-05-23 19:47:21 +02:00
Tom Hacohen 405c7ee269 Eo override: Fix compilation issues.
I thought I compiled, but it seems that @q66 managed to distract
me and I thought wrong and didn't actually. Oh well, fixed now.

Thanks to @zmike for letting me know.
2016-05-23 17:11:47 +01:00
Tom Hacohen 376fcc7ac4 Eo override: Document class. 2016-05-23 16:48:27 +01:00
Daniel Kolesa dc16644fef eo: FIXME for wref_del so I don't forget 2016-05-23 16:15:04 +01:00
Daniel Kolesa e984e5a11a eolian: remove pointers from complex and class types
Complex types (i.e. list, array, hash, accessor etc.) now do not require
pointers with them anymore (the pointer is implied) and the same goes for
class handles. Eolian now explicitly disallows creating pointers to these
as well. This is the first part of the work to remove pointers from Eolian
completely, with the goal of simplifying the DSL (higher level) and therefore
making it easier for bindings (as well as easier API usage).

@feature
2016-05-23 15:58:33 +01:00
Ji-Youn Park 0c6b0efaee elm_win: add elm_win_indcator_type and elm_win_indicator_enabled into window's eo.
elm_window will be changed to control layout related with conformant.
remove opacity and overlap mode and add type set.
2016-05-23 19:44:54 +08:30
Daniel Kolesa 4bdb1f73b8 eolian: handle invalid keywords correctly
Before this Eolian segfaulted when an invalid keyword was used.

Fixes T3672.
2016-05-23 10:49:42 +01:00
Tom Hacohen 83a2ed5e70 Eo: Fix wrong allocation.
We weren't allocating the correct amount. Oops.

CID 1355594.
2016-05-23 08:36:16 +01:00
Nicolas Aguirre 85682678e6 evas: gl_common add define for missing EGL_WAYLAND_Y_INVERTED_WL 2016-05-22 23:41:18 +02:00
Davide Andreoli f891cdc251 FDO icons: better icons for zoom-* 2016-05-22 13:25:21 +02:00
Davide Andreoli 07a47cae0d FDO icons: added all the Devices icons 2016-05-21 18:54:37 +02:00
Vincent Torri 63d5b07951 Efreet test: fix warning on Windows
Summary:
comp.h is redefining some macros on Windows. So just rename all the macros
with the TANGO prefix

Test Plan: compilatioN

Reviewers: cedric, jpeg, zmike

Differential Revision: https://phab.enlightenment.org/D3968
2016-05-21 10:40:34 -04:00
Carsten Haitzler 2c07846b7d eina vector - fix indenting and 80 col overflow in inline header 2016-05-21 23:37:07 +09:00
Carsten Haitzler 668e6091fb eina vector inline header - replace last equal with approx macro
rthis replaces double a == double b with a macro that keeps a close
enough range using epsilon (which is the error range for a dobule).

this fixes T3245
2016-05-21 23:36:38 +09:00
Andy Williams dde7aefa69 elementary: Add correct icon fallback for fdo icons
Fixes missing app icons (and others) when using elementary icon theme.
This is required to comply with the fdo icon spec.
Now that we have a fuller icon theme in elementary it's not intrusive
2016-05-21 10:14:45 +01:00
Andy Williams 278ec8383a elementary: Icon config don't disable elements
Use some smarter logic to make elementary vs fdo selection mutually exclusive
2016-05-21 09:54:42 +01:00
Derek Foreman d93db5bcaa gl_drm: switch to GLERRV macro for error reporting
eglGetError() is actually somewhat heavy, so hide it behind the GLERRV
macro which compiles out the test by default.
2016-05-20 15:53:20 -05:00
Derek Foreman f8976aed13 gl_drm: Fix silly run time warning for wayland dmabuf
DMABuf buffers destroy their glimage in the unbind callback, so it's
usually already gone for the free callback.

Now we test if we actually need to destroy anything.

Also, switch to GLERRV macro for error reporting - it saves us the heavy
eglGetError() unless we've built it in intentionally.
2016-05-20 15:47:21 -05:00
Mike Blumenkrantz ba06327527 elm_win: define EFL_TEAMWORK_VERSION in all cases 2016-05-20 16:10:28 -04:00
Mike Blumenkrantz 7510e42c1b elm_win: implement v2 of teamwork api using window-based display protocol
this adds support for wayland and makes teamwork integration trivial for any
application

@feature
2016-05-20 14:54:06 -04:00
Daniel Kolesa 9be179d740 eolian: add warnings for class/complex types with pointers (with env var) 2016-05-20 17:15:20 +01:00
Chris Michael 9ecc3ba38d elput: Check return of calibration_get_default_matrix function
We should be checking the return value when we try to get the default
matrix calibration for an input device so we can fail properly

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-20 11:30:33 -04:00
Tom Hacohen 6dcc2e6cc4 Edje cc out: Make list removal slightly more efficient. 2016-05-20 16:24:06 +01:00
Tom Hacohen b7ef3bcf0d Edje cc: Rename shadowing variables. 2016-05-20 16:24:06 +01:00
Chris Michael 6cd9605029 elput: Don't calculate pointer constraints twice
As constraints for pointer movement are already handled in the
function which sends the pointer motion event, there is no need to
handle them inside the function which gets pointer position.

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-20 11:18:21 -04:00
Tom Hacohen 7b2b623180 Eo: Fix compilation for people using GCC.
Apparently you can't cast when initializing static consts, even if
the cast is to the same type. This commit splits the macro used
so we have an additional one that casts and thus works with
eo_override().
2016-05-20 16:16:17 +01:00
Carsten Haitzler a52c7da714 evas 3d - fix mesh savers/loaders to not leave memory unset
i've been gettign persistent evas test suite suite failures ffor a
while. annoying as i can't get 100% pass anymore. it's due to segv's
in evas test suite thanks to chunks of uninitialized memory in the
mesh loaders/saver code.

this fixes that

@fix
2016-05-20 21:46:50 +09:00
Carsten Haitzler f40a452ee1 fix warnings about double/float comparisons in eina vector
this should fix T3245

this is basicall where we go double a == double b and due to precision
issues this may not always be right, but this means that the
equivalent now checks for "really close values" rather than perfectly
exact.

@fix
2016-05-20 21:46:50 +09:00
Tom Hacohen 5e95d7f2d8 Eo super: Validate class in eo_super instead of call_reslove.
This is more correct and fixes a segfault that occurs when eo_id is
disabled.
2016-05-20 11:47:32 +01:00
Tom Hacohen 5f46df619b Eo tests: Fix compilation warnings with eoid disabled. 2016-05-20 11:39:36 +01:00
Tom Hacohen 06f65ab2b1 Eo: Implement eo_override() to enable overriding functions of objects.
This change lets you override the functions of objects so that those
functions will be called instead of the functions of the class. This
lets you change objects on the fly and makes using the delegate pattern
easier (no need to create a class every time anymore).
You can see the newly added tests (in this commit) for usage examples.

@feature
2016-05-20 10:25:00 +01:00
Tom Hacohen c450efdcde Eo: Improve error message when overriding functions. 2016-05-20 10:25:00 +01:00
Tom Hacohen e1efe2e651 Eo: Reorganise the vtable in classes and add pointer from objects.
This is the first step towards supporting eo_override().
More details about eo_override() to follow.
2016-05-20 10:25:00 +01:00
Tom Hacohen b5511464a1 Eo: Remove useless test.
We no longer have a call stack, so there's no need to have
this test.
2016-05-20 10:25:00 +01:00
Cedric Bail 4f43c27450 ecore: promise for timeout and job are clearly never optional, so return them. 2016-05-20 02:25:48 -07:00
Daniel Kolesa 7344417306 eolian: enable incorrect property doc warnings with env var
This adds env var EOLIAN_PROPERTY_DOC_WARN which enables extra
warnings for properties that don't have a general doc but have
getter/setter doc. This will eventually become an error and
will be enabled by default. For now it's too verbose.
2016-05-19 16:57:12 +01:00
Chris Michael ac4ac88a72 ecore-wl2: Minor formatting fix
NB: No functional changes, just making this readable for me

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-19 09:12:29 -04:00
Chris Michael 843ad74adc evas-vg: Don't fetch parent if we are not going to use it
Essentially, this removes a compiler warning wrt 'parent' being set
but not used.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-19 08:43:32 -04:00
Subhransu Mohanty 655ed09ab4 evas: propagate the change to child when object is a vector graphic container
Summary: let me know whats your thought

Reviewers: Hermet, cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-05-19 02:23:56 -07:00
Jee-Yong Um ce4a9ee6c8 elementary: remove elm_mapbuf_eo.h target from Makefile.am
Reviewers: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-05-19 02:23:56 -07:00
Jee-Yong Um 9bf261fa24 LazEDC: introduce simple external param syntax
Summary:
EXTERNAL parts can have parameters, and its form is like the next.
   params.string: "param_name" "param_value";

This patch will shorten above line by the next syntax.
   params.param_name: "param_value";

The type of param will be determined by the type of inserted value.

Reviewers: cedric, raster, Hermet

Subscribers: jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-05-19 02:23:56 -07:00
Subhransu Mohanty a3cdafe9a2 evas: changed the interpolate() implementaion
Reviewers: Hermet, cedric

Reviewed By: cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-05-19 02:23:56 -07:00
Subhransu Mohanty 74cee52900 evas: fix the ref issue of newly created object in shape_dup() function
Summary:
There are couple of issue.

    By adding the gradient to both parent container as well as to the shape. when we dupe the container it copies twice.
    Usually we create one gradient and set it to multiple shape , in that case when we call dupe() function it is going to make a separate copy for each of the shape.

The patch fixes 1st issue. for 2nd one we need to maybe change the way we implemented dupe function

Reviewers: Hermet, cedric

Reviewed By: cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-05-19 02:23:56 -07:00