Commit Graph

9156 Commits

Author SHA1 Message Date
Jean-Philippe Andre 4381d3a824 Evas events: Store position as double only
This splits pixel and subpixel precision by using
different methods rather than two different storage values.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 02716d03c8 Efl event: Remove useless method declaration 2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 0a27c78a33 Evas events: Split pointer events
This is going back to the same idea as legacy. We will have
events such as:
- move
- down
- up
- in
- out
- wheel
- cancel ("new" - very rare)

Now the question is whether/how we should divide "multi" events
which start from the 2nd finger from standard mouse events. The first
multitouch finger should by default look like a mouse event.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 1950fb6fde Elm win: Forward pointer events from evas to window
This will allow applications to listen to those events
on the whole window. Necessary since they won't have access
to Evas with EO APIs.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre c68f71239c Evas events: Add EO APIs for lock & modifiers
This moves Efl.Pointer.Event back to Evas. Originally I wanted
to share this class with Ecore but eventually I didn't need to
do so, since only ecore_evas (which depends on evas) really needs
access to these.

The internal data struct is not moved out of efl (yet?)
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 2ca159dc58 Evas events: Replace calls to event feed with internal func 2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 4c7272720b Evas events: Pass Efl_Pointer_Event for proxy source events 2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 7658ed7ae3 Evas events: Forward more pointer events
This continues the work started in the previous commit:
forward full event info (Efl_Pointer_Event) from evas to
the upper layers.

This also includes more support for IN and OUT.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 37d894abb1 evas: send eo pointer events on mouse move
This is still VERY experimental and not fully done yet.
All other pointer events need to be sent as well.

The legacy event system is used as a transportation mechanism,
as it is too hard to change the logic. This only adds an extra
eo event in case of move. Obviously for performance we might
want to listen to callback_add,del but that's an optimization
for later.

The whole point of sending those pointer events is to carry more
information than can be sent over legacy evas events, and unify
the events in a common format.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 8e31929aab Efl.Pointer.Event: Add dup() method to copy an event 2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 1c739cada9 evas_events: Propagate more eo pointer events
This covers mouse in,out,cancel. Axis (joystick) is still
todo.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre ef843e8801 efl: Simplify pointer event names + add missing
No more difference between touch & mouse.
Add axis, cancel, in and out.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre c1be667a6c ecore_evas: Pass mouse down,up,move with eo
This way, ecore sends eo events to evas, which can then
be listened to by other clients (FIXME: the events will
need to be propagated from evas to the elm window).

Current support:
- mouse/multi down
- mouse/multi up
- mouse/multi move
- mouse wheel
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre f119327495 evas: Move event feed and input to legacy 2016-05-31 19:03:04 +09:00
Jean-Philippe Andre d764d8710a ecore_evas: Feed evas events with eo (down, up) 2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 21bc2f89f5 ecore_input: Pass all events through direct cb first
Since the direct input event callback returns true if the
event has been processed, we can easily support legacy and
progressively implement full support for eo input events.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 5aa00004a5 ecore_evas: Register direct input cb from modules
If the ecore_evas modules were using
ecore_event_window_register() then they can also redirect
everything though the direct callback instead.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre bd70604ee8 ecore_evas: Add private direct callback for ecore
All ecore_input_evas events should be passed through ecore_evas
in order to avoid any information loss between ecore and evas.

This is a private API.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre ea8c6e5632 Evas: Extend pointer events and add legacy conversion routines
To be honest, this commit is a bit of a mess since it's a
rebased version of some temporary work patches.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre c06cdadca2 Evas: Fix compilation warnings (enum implicit cast)
Moving enums to Efl renames them but keeps the value the same.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre fb35171186 Evas.Canvas: Move some event_feed to legacy
Paving the way to Efl.Pointer.Event...
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre 645a7b7d6c Efl: Add storage class Efl.Pointer.Event
This object is the data carried over in an event data pointer.

The private data should be accessible by Ecore and Evas, but
not externally. This means we should be able to easily extend
the feature set, adding more and more information, without
breaking API / ABI.

Also, this should allow applications to create fake input
events easily without exposing our internal structures, or
functions with more and more parameters (such as feed multi).

This is only a storage class, shouldn't contain any logic.
In the future, some logic may be added for gestures support
for instance, or input smoothing / resampling (eg. if input
frequency is 90Hz and screen refresh rate is 60Hz).

The aim is to replace:
- Evas_Event_Mouse_Xxx
- Evas_Event_Multi_Xxx
- Ecore_Event_Mouse_Xxx

We might want to also support Axis, Gestures, etc... with the
same model or even same storage class.
2016-05-31 19:03:04 +09:00
Jean-Philippe Andre ce5688a388 Evas: EO-ify Evas_Device and partly move to Efl
So, this is not a very clean solution, but this mostly
makes Evas_Device an Eo object of class Efl.Input.Device.
Since evas_device relies on some Evas knowledge (evas
callbacks, canvas private data), it can't be fully moved
to lib/efl/.

Making the input device an interface rather than a class
was also not a great solution, as the goal is to share
the data structure around EFL internals (Ecore and Evas).
2016-05-31 19:03:04 +09:00
Carsten Haitzler 5e90b86063 ethumb - don't complain to stderr about things that are handled by api
things like load failures are up to api to deal with, not logs.
2016-05-31 19:01:50 +09:00
Jaeun Choi ab23a53094 elm_image: add a new eo property 'align' and implement related functions
previously, elm_image refered to align values
set by evas_object_size_hint_align_set function
to position the internal image inside an image object.
size hint value is for positioning the image object inside its container object,
so the previous code is inappropriate.
this commit adds 'align' property for positioning the internal image.
2016-05-30 20:26:34 +09:00
Carsten Haitzler 58d50e2b13 elm init - add args event with ne efl loop args 2016-05-30 19:55:43 +09:00
Carsten Haitzler f0335bde28 efl loop - add an args event and ability to produce it
this is an args event. right now we don't use it, but this should be
done by some of the setup/init of an app and then produce an args
event. the idea would be that this can be used by single-instance apps
like web browsers, terminology to treat launch as an event.
2016-05-30 19:47:21 +09:00
godly.talias afb4a194a8 Added feature to bring focused item to viewport on click
Summary:
Currently when an item in gengrid is focused and if it is scrolled
off the viewport halfly and if it user clicks on it, it won't be
scrolled into viewport. Only non-focused items will be scrolled into
viewport when clicked.

Test Plan:
elementary_test -> Gengrid focus -> Click an item ->
           Scroll it little bit out of viewport -> Click again

Reviewers: prince.dubey, shilpasingh, cedric, raster, SanghyeonLee

Subscribers: seoz, rajeshps, govi, jpeg

Differential Revision: https://phab.enlightenment.org/D3977
2016-05-30 14:39:37 +09:00
junsu choi 610b766db2 eet_image.c : Fix build warning
Summary: initialized two variable for uninitialized build warning

Test Plan: N/A

Reviewers: woohyun, raster

Reviewed By: raster

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3990
2016-05-30 14:18:31 +09:00
Jaehyun Cho 075ccc5022 elc_naviframe: Hide preserved content after its item is popped.
Previously, preserved content was shown unexpectedly after its naviframe
item was popped because the preserved content was not removed but was
unset from its naviframe item.

Since popped naviframe item becomes hidden on the screen, the preserved
content of the popped naviframe item should become hidden by default as
well.
2016-05-30 14:02:52 +09:00
Jean-Philippe Andre 3092e08a83 elm: Fix efl_part inheritance
So, I was storing a single "sd" pointer (class private data)
but using it in two different places, ie. as if it were two
different classes. Crashes happened, complaints were heard.

See T3714.
2016-05-30 13:35:34 +09:00
Jaehwan Kim 945932e1b1 Elementary: fix the indentation 2016-05-30 11:39:00 +09:00
Jean-Philippe Andre c59d222f6d elm_hover: Fix crash with efl_part
This fixes T3714

Efl.Part uses a basic inheritance for layout objects, but somehow
this completely falls apart when the child class overrides all
the functions. Weird. I'll check that more.
2016-05-30 11:14:43 +09:00
Jaehwan Kim 62cf70034d widget: set the parent-child relation again, when the widget is unset
Summary:
When the widget is unset from any container, a parent of the widget
doesn't exist. So we should set its parent to the top object.
But if we just set sd->parent, the parent can not find the widget as a
child. So the container widgets set the parent-child relation when
sub object is unset.
This commit is related to 0822ad2195.

@fix

Test Plan:
Check this issue.
https://phab.enlightenment.org/D3855
The unset widget don't added any widget as child.
So when it set scale, the widget can not reload the thmeme.

Reviewers: raster, cedric, Hermet, reutskiy.v.v

Reviewed By: Hermet, reutskiy.v.v

Subscribers: cedric, jpeg

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

Conflicts:
	src/lib/elementary/elm_mapbuf.c
2016-05-30 09:49:04 +09:00
Jean Guyomarc'h 37adb060dd ector: fix redefinition of type and bizarre typedef
Maybe there is a trick here I am not aware of, but
redefining a type as itself seems a mistake to me.
This raised a warning anyway. Now it's gone.
2016-05-28 22:17:22 +02:00
Jean Guyomarc'h 3a63eacbcb ector: fix redefinition of types 2016-05-28 22:17:22 +02:00
Jean Guyomarc'h 5bfaef58f1 evas: fix warning: redefinition of types
Fixes warnings raised by cland such as:
warning: redefinition of typedef 'Efl_VG' is a C11 feature
[-Wtypedef-redefinition]
2016-05-28 22:17:22 +02:00
Jean Guyomarc'h 092ce1f83b eina: fix warning when clockid is not defined
Unused parameter was unused...
2016-05-28 21:49:33 +02:00
Jean Guyomarc'h 9ee8ea196b eina: make eina backtrace portable
Backtrace relied on non-portable code.
Platform-specific code is now enclosed
within macros defined at configuration-time.
2016-05-28 19:18:46 +02:00
Hermet Park 01c7fd7cda eio: fix build break.
there were missing eo headers.
fix and make it work again.
2016-05-28 19:08:03 +09:00
Stephen Houston c21c821f3a Elm Image: The introduction of elm_image_scale_type broke elm. Make TYPE_FILL the default.
The default scale type should not be none as this breaks elm icon and elm image as it doesn't follow the default view of elm image before elm image scale was added.  The default behavior is fill so this commit makes fill the default.
2016-05-27 21:38:06 -05:00
Davide Andreoli 860b821f00 Elm Win legacy: Fix wrong function names
This fixes errors from 2 commits:
ec464939d9
589eae9a8b

Ji-Youn Park: SPANK!
2016-05-27 21:57:04 +02:00
Chris Michael 09805d2b15 ecore-drm2: Add API functions to support cacheing of context & keymap
@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Chris Michael 0416aa6bf3 ecore-drm2: Add API function to calibrate input devices
This adds a new API function that Ecore_Evas can call to calibrate
input devices given size of the output

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
Mike Blumenkrantz da8bcbc7c6 ecore-drm2: update to latest elput 2016-05-27 11:57:53 -04:00
Mike Blumenkrantz c1253164b2 ecore-drm2: perform logind connection after finding device path in ecore_drm2_device_find 2016-05-27 11:57:53 -04:00
Chris Michael 7b5af2f0df ecore-drm2: Add API function to set left-handed mouse mode
This commit adds an API function used to set a mouse to be left-handed

@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 11:57:53 -04:00
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 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 66dade5604 eolian-cxx: Removed useless commented code 2016-05-26 16:46:40 -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 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
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 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
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 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 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
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 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 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
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
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
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 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 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
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
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
Ji-Youn Park 3046b8ac4c elm_win: add elm_win_indcator_overlap mode into window's eo.
elm_window will be changed to control layout related with conformant.
one of features is overlap between indicator and layout.
2016-05-19 17:19:40 +08:30
Jaehwan Kim e0bbc2aced sclae : add the feature for rounding off
Add the feature for rounding off to the nearest in ELM_SCALE_SIZE
macro. It makes to be more close to calculated value.
2016-05-19 11:13:36 +09:00
Jean Guyomarc'h cec8a49b51 edje: fix condition scope
Commit 3faf3f3fc converted an eo_do() into two functions.
However the eo_do() was implicitely enclosed within an if,
which after conversion led to the if coverting only one
of these functions instead of both.

Pointed out by GCC's -Wmisleading-indentation.
2016-05-18 22:29:59 +02:00
Chris Michael 08d286fdaf ecore-wl2: Minor formatting fixes
NB: No function changes, just formatting

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-18 16:08:46 -04:00
Jean Guyomarc'h 147ef32b2b efl: fix misleading indentation
GCC's -Wmisleading-indentation is complaining...
It is a warning flag introduced in GCC 6.x, and
is enabled by -Wall.
2016-05-18 21:57:02 +02:00
Jean Guyomarc'h 64ce45b9b4 eina: add missing header guards 2016-05-18 21:56:58 +02:00
Chris Michael 101a153d52 elementary: Add missing EINA_UNUSED for unused parameter
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-18 15:19:29 -04:00
Derek Foreman 72b1997f06 evas: Add wayland dmabuf native surface type
Add the structures required for supporting dmabuf native surfaces
2016-05-18 11:52:24 -05:00
Cedric Bail 75a53ece10 eo: for consistency use object like all our API. 2016-05-18 08:18:04 -07:00
Carsten Haitzler 72adab7222 eo datarefcount - only use in debug mode 2016-05-18 23:11:00 +09:00
Taehyub Kim 55a6bd7fbb elc_popup: add escape key binding
Summary:
There are no methods to close the popup with key down.
So I added the escape key binding to close the popup with escape key.

Test Plan:
1. patch this code
2. delete /home/{user}/.elementary to refresh the config value
3. launch elementary_test -to "popup"
4. click one example of the list and press escape key
5. see closing the popup

Reviewers: cedric, raster, jpeg, Jaehyun_Cho, Hermet

Reviewed By: Hermet

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

Conflicts:
	src/lib/elementary/elm_priv.h
2016-05-18 22:15:08 +09:00
Tom Hacohen 96624b9725 Eo: Fix singleton pattern and add a test to make sure it works. 2016-05-18 13:31:30 +01:00
Yeshwanth Reddivari 26316058f0 Index : Use orientation interface APIs instead of horizontal set/get APIs
Test Plan: elementary_test

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

Subscribers: Hermet

Differential Revision: https://phab.enlightenment.org/D3954
2016-05-18 18:33:53 +09:00
Yeshwanth Reddivari 5f87f5f673 index: Avoid SIGSEV in elm_index_item_sorted_insert
Summary:
Avoid SIGSEV in elm_index_item_sorted_insert when cmp_data_func returns >=0
After deleting eo_item and making it NULL in above case, view(it) is created which resulted in crash.

Test Plan: elementary_test -to 'index 2'

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

Reviewed By: Hermet

Subscribers: Hermet

Differential Revision: https://phab.enlightenment.org/D3956
2016-05-18 18:33:07 +09:00
Cedric Bail 45bc4f30eb efl: change name of animator,tick event in C. 2016-05-18 02:20:13 -07:00
Jee-Yong Um 80c42bc3a5 elm_list: perform a null check before accessing its member
Summary:
In inline function _elm_list_item_free, null check is performed
after accessing its member.

@fix

Reviewers: cedric, Hermet

Reviewed By: Hermet

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3955
2016-05-18 17:56:47 +09:00
Jihoon Kim 2b8d93a5d1 ecore_imf: Add multiline hint in input hint
@feature
2016-05-18 15:21:12 +09:00
Carsten Haitzler 9e04c6824f ecore wl2 - remove warning with unused goto label 2016-05-18 02:02:45 +09:00
Carsten Haitzler 43661180f7 efl - key/data/value/obj attach to eo objects - make these properties
the key data now is a property so they come out in bindings really
nicely like:

  obj.key_data["blah"] = x;

  x = obj.key_data["blah"];

etc.
2016-05-18 02:02:45 +09:00
Daniel Kolesa 7782c0bcb9 eolian: add event_prefix and have classes follow that or eo_prefix by default
Previously events used to use class name as a prefix and ignored eo_prefix
when specified. This is no longer the case. Events follow eo_prefix by default
now. In order to get around this for classes where this is undesirable, a new
field event_prefix was added which takes priority over eo_prefix. If neither
is specified, class name is used like previously.

@feature
2016-05-17 17:50:43 +01:00
Amitesh Singh f007380fb9 Panes: Use orientation interface APIs instead of horizontal set/get APIs
Differential Revision: https://phab.enlightenment.org/D3919
2016-05-18 00:36:09 +09:00
Tom Hacohen 546ff7bbba Eo: Remove eo_del() and make eo_unref() the replacement.
We used to have eo_del() as the mirrored action to eo_add(). No longer,
now you just always eo_unref() to delete an object. This change makes it
so the reference of the parent is shared with the reference the
programmer has. So eo_parent_set(obj, NULL) can free an object, and so
does eo_unref() (even if there is a parent).

This means Eo no longer complains if you have a parent during deletion.
2016-05-17 16:23:23 +01:00
Tom Hacohen e9c4e7bf76 Eo name: Rename Eo.Base.id to Eo.Base.name.
This is there to reduce confusion with Eo_Id and also the name
is just better.
2016-05-17 16:00:13 +01:00
Cedric Bail aa4da11b33 ecore: do not create another main loop object
So ecore main loop does restart everything with an main loop shutdown
and init when it detect a bad fd. This can happen if you del a fd after
you have destroyed it. Something terminology is doing (and should be
legal), but that then ended up with a main loop with no event handler
registered and the process was looking like stuck with nothing happening.
2016-05-17 07:41:13 -07:00
Shuhrat Dehkanov cab208e83f docs: progressbar: correct minor typos
Reviewers: q66, stefan_schmidt

Subscribers: cedric, seoz, jpeg

Differential Revision: https://phab.enlightenment.org/D3950
2016-05-17 15:05:37 +02:00
perepelits.m d200d483ef edje: attaching viewport of camera to the image part
Summary:
According to D3710 new field "camera" in edc was added for IMAGE parts.
It is the name of the CAMERA part to set its viewport as a source of image if no image name is given.

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: jpeg, artem.popov

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-05-17 05:21:45 -07:00
Cedric Bail a5216d4f79 elementary: mapbuf is legacy for now and should be automatic in the future. 2016-05-17 05:17:53 -07:00
Tom Hacohen 9ef65788f4 Eo: Rename an internal function to reduce confusion.
@raster added eo_id_get() which was confusing because we already had
_eo_id_get() that was used internally.
2016-05-17 10:29:16 +01:00
Tom Hacohen 79575d8943 Eo children: Make children tracking an inlist instead of a list.
This saves us a pointer in every eo object and a pointer indirection
when accessing children.
2016-05-17 10:26:54 +01:00
Tom Hacohen 2373fd5fd2 Eo: change refcount to short from int.
A short is more than enough for reference counting.
2016-05-17 10:26:54 +01:00
Mykyta Biliavskyi 328607f3b9 Edje_edit: generate code of the image sets.
Added support generate the edc code of the image sets in the image top level block.
And correct support inside the image.normal attribute.
2016-05-17 12:01:11 +03:00
Jinyong Park 1b765359ee popup: add popup default scrollable flag config for other profiles.
Summary:
The default scrollable flag of popup can be different in each profiles.
So I added the scrollable configuration of popup.
@feature

Test Plan:
1. Before
 1) elementary_test -to popup
 2) resize window to smaller
 3) Click 15th item, "popup-center-title + genlist content + 1 button"
 4) Then popup will show, but its list is very long, only small part of popup could be shown.

2. After Patch
 1) change "popup_scroller" value to 1 in base.src, then run elementary_test -to popup or ELM_POPUP_SCROLLABLE=1 elemantary_test -to popup
 2) resize window to smaller
 3) Click 15th item, "popup-center-title + genlist content + 1 button"
 4) Then popup will show, popup's genlist will be in scroller, so entire popup can be shown.

Reviewers: jaehwan, id213sin, cedric, raster, singh.amitesh, SanghyeonLee, Hermet

Subscribers: Hermet, minkyu, herb, jpeg

Differential Revision: https://phab.enlightenment.org/D3856
2016-05-17 10:22:07 +09:00
Tom Hacohen fa9145d469 Eo name find: Fix possible out of bounds write in eo name find.
CID1354840
2016-05-16 17:41:59 +01:00
Mykyta Biliavskyi d027a2f65c Edje_edit: generate states of the box and table part edc code with inheritance.
Generate inheritance box and table attributes from similar state.
2016-05-16 15:53:48 +03:00
Mykyta Biliavskyi fa17ff96e1 Edje_edit: generate states of the proxy part edc code with inheritance.
Generate inheritance proxy attribute "source" from similar state.
2016-05-16 15:53:42 +03:00
Mykyta Biliavskyi 5b0b0da92b Edje_edit: generate states of the image part edc code with inheritance.
Generate inheritance image attributes from similar state.
2016-05-16 15:53:38 +03:00
Mykyta Biliavskyi 3c3a21d614 Edje_edit: generate states of the text part edc code with inheritance.
Generate inheritance text attributes from similar state.
2016-05-16 15:53:31 +03:00
Mykyta Biliavskyi 303fea96ca Edje_edit: generate state code with inheritance map block.
Add ability to generate inherited code for map block.
2016-05-16 15:53:26 +03:00
Mykyta Biliavskyi bbeae532ac Edje_edit: generate state code with inheritance rel block.
Add ability to generate inherited code for relative block.
2016-05-16 15:53:20 +03:00
Mykyta Biliavskyi 2d63b59221 Edje_edit: generate state code with inheritance general attributes.
Support inheritance for part states on the edc code generate time.
Only for general attributes are supported, except relative and
map blocks.
Added functions for calculation coefficient of similarity
between two different states of the same part.
2016-05-16 15:53:16 +03:00
Mykyta Biliavskyi f4379eaa4c Edje_edit: move text state edc code generate to standalone func.
Created internal function _edje_generate_source_state_text.
This is needed for implementation generate inheritance
states in edc code.
2016-05-16 15:53:09 +03:00
Chris Michael f7796faa59 ecore-wl2: Remove erroneous check for wayland display
NB: No real major changes, just removal of an extra 'if' block. If
getenv of wayland display fails, we hard-code the default wayland
display name so subsequent check for 'if (n)' is erroneous

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-16 06:53:27 -04:00
Marcel Hollerbach ca55a920d9 ecore_wl2: connect to default display
Summary: if there is no env var AND no name, connection to wayland-0

Reviewers: raster, jpeg, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3945
2016-05-16 19:14:40 +09:00
Andy Williams b92029f422 elementary: Fix icon name to standard 2016-05-16 09:12:21 +01:00
Ji-Youn Park 0c2ad7ff10 elm_win: move quickpanel feature from eo to legacy
all quickpanel APIs were only supported in X.
quickpanel property can be managed by name property.
zone set canbe managed by aux_hint
minor, and major set are not used anymore
2016-05-16 15:36:58 +08:30
Davide Andreoli d7c9790450 Revert "popup: default scrollable option change to TRUE"
This reverts commit 2ddbc5fc9a.

You cannot change default behaviour of released code!
In this way you make applications behave differently on different
efl version.
2016-05-15 18:56:57 +02:00
Carsten Haitzler c8c61d2e85 efl - ui box - remove unised deficit variable 2016-05-15 23:59:14 +09:00
Carsten Haitzler 408e15d78c elm - map: fix warning with possibly uninitted vars 2016-05-15 23:59:14 +09:00
Carsten Haitzler 50d5f50589 evas - fix warning comparing agianst wrong enum
fixed enum compare due to efl intefaces changes.
2016-05-15 23:59:14 +09:00
Carsten Haitzler 25c42176e6 evas - make func indenting more redable with overflow lines aligned 2016-05-15 23:59:14 +09:00
Chris Michael 08c9c70c27 elementary: Cleanup compiler warnings when not using X11
This patch cleans up various unused variables and unused function
parameters when not building for X11.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-15 09:53:16 -04:00
Chris Michael d857445571 elementary: Conditionally define functions based on x11/wayland
These functions are only used if we are compiled with X11 support, so add
an #ifdef to remove it from wayland builds

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-15 09:53:16 -04:00
Chris Michael 8ed0aa02cf elementary: Don't define handlers if we are not going to use them
These handlers are only used when building for X11, not for Wayland,
so conditionally compile them in/out

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-15 09:53:16 -04:00
memeka b01af6e57c elementary: Fix build issue when x11 is disabled
When we compile efl using --with-x11=none, then
_tempfile_new and _tmpinfo_free end up being undefined, however these
functions are used by wayland too so they need to be defined regardless.

@fix
2016-05-14 06:44:39 -04:00
Andy Williams 6551aa4471 elementary: Use standard down arrow 2016-05-14 11:20:41 +01:00
Chris Michael fb76fe55a5 ecore-wl2: Add environment variable to optionally disable wobbly windows
As not everyone needs/wants extra eye-candy, add a check for
EFL_WAYLAND_DISABLE_WWW environment variable to be able to disable
wobbly windows support

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-14 05:26:27 -04:00
Chris Michael 63787ee459 elput: Don't multiply pointer axis value
Reporting of mouse axis values should not be multiplied by 10. This
will cause serious jumps in wheel events. Loosely based on
1a339c9e59

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-14 03:35:09 -04:00
Derek Foreman 1a339c9e59 ecore_drm: Handle wheel scrolling separately from finger scrolling
Wheels are discrete and scroll in clicks, fingers are continuous and scroll
in fractional pixels.

This change causes wheel based scrolling to be returned in "clicks"
instead of "degrees" - allowing us to roll a single menu item with a click.

It also will allow us to reduce the speed of two finger scrolling without
messing up the speed of wheel scrolling.
2016-05-13 16:36:42 -05:00
Amitesh Singh 4214193bd4 Eo: declare lk_init explicitly unsigned
In some build environment, anonymous char delcaration can be interpreted
as "unsigned char". Although lk_init can be only 0, 1 or 2 so there
won't be any unexpected result. This change is just to make static code
analyzer happy.
2016-05-13 15:32:02 +05:30
Jinyong Park 2ddbc5fc9a popup: default scrollable option change to TRUE
Summary:
Usually, popup have a scroll bar when its content is too long to display in popup's size.
But now, default option is unscrollable.
So change default option and popup's test case.

Reviewers: jaehwan, Hermet, herb

Subscribers: cedric, singh.amitesh, jpeg

Differential Revision: https://phab.enlightenment.org/D3941
2016-05-13 14:49:18 +09:00
Youngbok Shin 91437fafb0 Elementary toolbar: Don't call "clicked" callback when item is just selected
Summary:
"clicked" callback must be called when an item is really clicked.
But, toolbar had called it whenever an item was selected.
Even, it could be triggered by "elm_toolbar_item_selected_set()" API.
So, "clicked" callback will be called when only an item is clicked.
Also, it changed confusing names of related internal functions.
@fix

Test Plan: N/A

Reviewers: jaehwan, woohyun, cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3937
2016-05-13 14:06:18 +09:00
Vitalii Vorobiov e80d8d9a71 Edje_Edit: more API for proxy fields like source_clip and source_visible
Setters and getters like
edje_edit_state_proxy_source_clip_set
edje_edit_state_proxy_source_clip_get
edje_edit_state_proxy_source_visible_set
edje_edit_state_proxy_source_visible_get
2016-05-12 19:31:49 +03:00
Tom Hacohen 6bdf4af016 Add legacy_prefix now that the default has changed to null. 2016-05-12 17:27:35 +01:00
Tom Hacohen 96c4c88070 Efl: Remove "legacy_prefix: null;" as it's now the default. 2016-05-12 17:27:35 +01:00
Daniel Kolesa 1a0566452f eolian: do not generate legacy without explicit class legacy_prefix 2016-05-12 17:27:34 +01:00
Daniel Kolesa 7e94eb22b4 eolian: mark pure virtual funcs outside of implements
This is a better syntax and should've been like this in the first place.
2016-05-12 16:15:24 +01:00
Tom Hacohen 6cacef2503 Eo abstract class: Rename to Eo.Class. 2016-05-12 14:33:40 +01:00
Tom Hacohen 485ce14889 Ector cairo software: Fix namespacing to use . and not _. 2016-05-12 12:27:54 +01:00
Tom Hacohen 587560f82c Efl canvas surface: Fix namespacing to use . and not _. 2016-05-12 12:23:27 +01:00
Tom Hacohen 345a02eac0 Elm segment control item: Fix namespacing to use . and not _. 2016-05-12 12:22:10 +01:00
Tom Hacohen b7cf001c31 Evas image orient: Fix namespacing to use . and not _. 2016-05-12 12:20:34 +01:00
Tom Hacohen 1e61025c17 Evas smart cb: Fix namespacing to use . and not _. 2016-05-12 12:20:34 +01:00
Tom Hacohen 8183d6363e Elm image: Fix namespacing to use . and not _. 2016-05-12 12:20:34 +01:00
Tom Hacohen c5ea7962e9 Eet: Fix namespacing to use . and not _. 2016-05-12 12:20:34 +01:00
Tom Hacohen 739ccea3d9 Eo event description: Fix namespacing to use . and not _. 2016-05-12 12:20:34 +01:00
Tom Hacohen 684d005970 Eldbus: Fix namespacing to use . and not _. 2016-05-12 12:20:34 +01:00
Tom Hacohen 5a93ae6b0f Efl ui box: Fix namespacing to use . and not _. 2016-05-12 12:20:34 +01:00
Tom Hacohen 504cdda351 Efl gfx stroke: Fix namespacing to use . and not _. 2016-05-12 12:20:34 +01:00
Tom Hacohen 7c96c972bd Ecore con: Fix namespacing to use . and not _. 2016-05-12 12:20:34 +01:00
Tom Hacohen 3d6238c044 Ecore exe: Fix namespacing to use . and not _. 2016-05-12 12:20:34 +01:00
Tom Hacohen 6760e05968 Elm interface atspi editable text: Fix namespacing. 2016-05-12 11:45:46 +01:00
Tom Hacohen 646839ce4b Elm interface fileselector: Fix namespacing to use . and not _. 2016-05-12 11:37:57 +01:00
Tom Hacohen 45d96b1c21 Elm interface atspi: Fix namespacing to use . and not _. 2016-05-12 11:37:43 +01:00
Tom Hacohen 6668d77b09 Efl text properties: Fix namespacing to use . and not _. 2016-05-12 11:35:52 +01:00
Tom Hacohen 5defd35cef Efl image: Fix namespacing to use . and not _. 2016-05-12 11:35:21 +01:00