Amitesh Singh [Wed, 17 May 2017 01:28:49 +0000 (10:28 +0900)]
Efl.Ui.Autorepeat: add 'autorepeat' prefix to methods.
Thanks to Dave for pointing out this.
Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
Andy Williams [Tue, 16 May 2017 22:19:34 +0000 (23:19 +0100)]
elm_code: Add a save_as API call for writing buffers to a new file
Andy Williams [Tue, 16 May 2017 21:10:56 +0000 (22:10 +0100)]
elm_code: Fix insertion of multiline content in widget
A small refactoring to reduce code duplication as well :)
Stefan Schmidt [Tue, 16 May 2017 19:58:35 +0000 (21:58 +0200)]
examples: evas: fix else block by adding needed parenthesis
This was broken since over a year. Happened during the automatic eo4
migration in
f21ade6123b9053fca8d1632644c48525a99d6e0.
Thanks goes to the gcc warning misleading-indentation:
evas-3d-shadows.c:163:4: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
else
^~~~
evas-3d-shadows.c:165:6: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘else’
evas_canvas3d_node_look_at_set(scene->mediator, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 3.0, 0.0, EVAS_CANVAS3D_SPACE_PARENT, 0.0, 5.0, 0.0);
Jean-Philippe Andre [Tue, 16 May 2017 08:54:37 +0000 (17:54 +0900)]
evas: Rename evas_types to evas_canvas3d_types
Now evas_types has nothing but canvas3d definitions.
Fixes T5312
Jean-Philippe Andre [Tue, 16 May 2017 08:48:19 +0000 (17:48 +0900)]
evas: Remove unnecessary imports of evas_types
Ref T5312
Jean-Philippe Andre [Tue, 16 May 2017 08:46:36 +0000 (17:46 +0900)]
evas: Remove Efl.Canvas.Text.Annotation from evas_types.eot
This moves it to efl/interfaces which may not be the best...
@herdsman should know where to place this opaque definition.
Ref T5312
Jean-Philippe Andre [Tue, 16 May 2017 08:41:09 +0000 (17:41 +0900)]
evas: Add seat arg to modifier/lock EO APIs
This now matches the new seat-related set of APIs present as EAPI.
Jean-Philippe Andre [Tue, 16 May 2017 08:23:00 +0000 (17:23 +0900)]
evas: Remove Evas.Modifier from EO
Similar to the previous patch with Evas.Lock
Ref T5312
Jean-Philippe Andre [Tue, 16 May 2017 07:48:58 +0000 (16:48 +0900)]
evas: Use enum instead of string in Efl.Input.State
Ref T5312
Jean-Philippe Andre [Tue, 16 May 2017 07:59:05 +0000 (16:59 +0900)]
ecore_x: Fix build warning (invalid enum used)
Jean-Philippe Andre [Tue, 16 May 2017 07:25:23 +0000 (16:25 +0900)]
evas: Remove Evas.Lock from EO
This is a step towards the removal of the modifier & lock API
as it is and use enums exclusively.
Ref T5312
Jean-Philippe Andre [Tue, 16 May 2017 06:42:04 +0000 (15:42 +0900)]
evas: Move Efl_Gfx_Fill_Spread to legacy
This was never implemented and was translated to EO without
any implementation.
Jean-Philippe Andre [Tue, 16 May 2017 06:38:35 +0000 (15:38 +0900)]
evas: Move evas event info types to Evas_Legacy.h
This moves the following definitions from Common to Legacy:
- Evas_Event_Mouse_Down
- Evas_Event_Mouse_Up
- Evas_Event_Mouse_In
- Evas_Event_Mouse_Out
- Evas_Event_Mouse_Move
- Evas_Event_Mouse_Wheel
- Evas_Event_Multi_Down
- Evas_Event_Multi_Up
- Evas_Event_Multi_Move
- Evas_Event_Key_Down
- Evas_Event_Key_Up
- Evas_Event_Hold
- Evas_Event_Axis_Update
Jean-Philippe Andre [Tue, 16 May 2017 06:33:58 +0000 (15:33 +0900)]
evas: Move Evas_Engine_Info to Evas_Legacy.h
Jean-Philippe Andre [Tue, 16 May 2017 06:29:14 +0000 (15:29 +0900)]
gesture: Use new EO API to grab Ctrl key
See previous commit
Jean-Philippe Andre [Tue, 16 May 2017 02:16:28 +0000 (11:16 +0900)]
evas: Replace Evas.Modifier_Mask with Efl.Input enums
This removes Evas.Modifier_Mask from EO.
This introduces two new types instead:
- Efl.Input.Modifier
- Efl.Input.Lock
Those are enums, not strings, containing all the known and
currently supported lock and modifier keys. The enums are
bit masks.
This effectively removes the ability for an application to
create and handle specific modifier or lock keys - with EO
API (legacy compatibility is unchanged, of course). I wonder
who ever required this?
Jean-Philippe Andre [Tue, 16 May 2017 05:38:26 +0000 (14:38 +0900)]
evas: Remove evas_key_modifier_mask_get from EO
Such an ugly API. This is an API to match a string to a number,
build a bitmask from it, and then use that. The supported
strings are well known (should be enum) and would need a
recompilation (ABI update) to support anything new anyway.
Jean-Philippe Andre [Tue, 16 May 2017 11:43:58 +0000 (20:43 +0900)]
elm: Add missing eo.c file for elm_button
This fixes a recently introduced crash in elm.
Amitesh Singh [Tue, 16 May 2017 06:57:16 +0000 (15:57 +0900)]
Efl.Ui.Autorepeat: Add efl autorepeat interface
Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
Derek Foreman [Mon, 15 May 2017 19:29:55 +0000 (14:29 -0500)]
ecore_drm2: Clear next fb if we use it
Fixes a race that's either really hard to hit if you're a developer
or really easy to hit if you're a user.
Thanks to ApB for the debug assistance.
Fix T5484
Bryce Harrington [Mon, 15 May 2017 09:07:48 +0000 (11:07 +0200)]
evas: Improve linespacing consistency
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D4879
Bryce Harrington [Mon, 15 May 2017 09:07:06 +0000 (11:07 +0200)]
ecore_evas: Omit redundant return info in doxygen
Summary:
These routines all already have a @return line that states the return
values appropriately; it's unnecessary to restate the return values in
the documentation text.
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4878
Jean-Philippe Andre [Mon, 15 May 2017 08:27:22 +0000 (17:27 +0900)]
photocam: Fix invalid type in legacy header
Sorry, this temporarily broke the build of external apps.
Jean-Philippe Andre [Mon, 15 May 2017 08:23:11 +0000 (17:23 +0900)]
evas: Remove Evas.Coord from EO
This may be a bit more controversial...
But Evas_Coord really is just an int and all the internals
of EFL assume that the base coordinate type is a 32-bit int.
So this type is a bit redondant and can't easily be changed
to, say, a float or int64.
Ref T5312
Jean-Philippe Andre [Mon, 15 May 2017 07:47:34 +0000 (16:47 +0900)]
evas: Remove font_hinting from EO
We only need it in elm_config.
This removes the type Evas_Font_Hinting_Flags from EO,
as well as the functions font_hinting_set/get and
font_hinting_can_hint.
Ref T5312
Jean-Philippe Andre [Mon, 15 May 2017 06:17:38 +0000 (15:17 +0900)]
evas: Remove evas touch_point from EO
Note: it seems the EAPI evas_touch_point_list_xy_get() was
lst at some point, as it doesn't appear in the headers anymore.
It looks like we fail to catch an ABI break! abi_checker didn't
catch this!?
Ref T5312
Jean-Philippe Andre [Mon, 15 May 2017 06:07:43 +0000 (15:07 +0900)]
evas: Remove Evas_Border_Fill_Mode from EO
Ref T5312
Jean-Philippe Andre [Mon, 15 May 2017 05:59:45 +0000 (14:59 +0900)]
evas: Remove Evas_Image_Orient from EO
Ref T5312
Jean-Philippe Andre [Mon, 15 May 2017 05:48:03 +0000 (14:48 +0900)]
photocam: Move image_orient to legacy
This makes photocam implement Efl.Flipable and Efl.Orientation
in order to use the proper API.
image_orient is now split into two function calls.
Ref T5312
Jean-Philippe Andre [Mon, 15 May 2017 04:33:00 +0000 (13:33 +0900)]
evas: Remove some types from EO
Those are legacy only.
Ref T5312
Jean-Philippe Andre [Fri, 12 May 2017 10:11:15 +0000 (19:11 +0900)]
evas: Remove Evas_Callback_Type from EO
This moves the enum to legacy only, but in Evas_Common.h and not
Evas_Legacy.h because some other legacy things are in Evas_Common.h
Ref T5312
Jean-Philippe Andre [Fri, 12 May 2017 09:46:12 +0000 (18:46 +0900)]
elm_widget: Remove widget_event_propagate from EO
It is an internal only API.
Ref T5312 (one less use of a legacy type)
Jean-Philippe Andre [Fri, 12 May 2017 09:39:34 +0000 (18:39 +0900)]
evas: Remove Evas_Text_Style_Type from EO
It belongs to legacy only... Evas.Text is not part of EO.
Ref T5312
Jean-Philippe Andre [Fri, 12 May 2017 09:10:24 +0000 (18:10 +0900)]
evas: Remove Evas_Font_Size from EO
Ref T5312
Derek Foreman [Sun, 14 May 2017 18:13:34 +0000 (13:13 -0500)]
ecore_drm2: Fix use after free
In trying to clean up some code and fix a hypothetical buffer leak, I added
a use after free error that can break rendering on the drm and gl_drm
evas engines.
Coverity did the heavy lifting for me on this one.
Fix Coverity CID 1375047
Fix T5484
Derek Foreman [Fri, 12 May 2017 19:51:39 +0000 (14:51 -0500)]
ee_drm: Remove some commented out code
I think this was intended as a reminder to do something that's already
been done. Or something.
Derek Foreman [Fri, 12 May 2017 19:42:02 +0000 (14:42 -0500)]
ecore_drm2: Add some safety checks for accessing dead fbs
Accessing an fb after discarding it is bad karma, so we should log something
if it ever happens.
Derek Foreman [Fri, 12 May 2017 19:41:03 +0000 (14:41 -0500)]
ecore_drm2: refcount fbs
Removes the previous "busy" flag, as now we might have an fb attached to
multiple outputs at once, and need to be careful to destroy them only
after they've been removed from all outputs.
Removed the old "busy_set" API which nothing used, and renames fb_destroy
to fb_discard to make it more clear that it's not immediately destroyed.
It's all beta api, so I can do this.
Cedric BAIL [Fri, 12 May 2017 22:24:25 +0000 (15:24 -0700)]
evas: simplify fb engine.
Cedric BAIL [Fri, 12 May 2017 22:10:28 +0000 (15:10 -0700)]
evas: simplify buffer engine.
Cedric BAIL [Fri, 12 May 2017 22:03:05 +0000 (15:03 -0700)]
evas: stat introducing a concept of engine and output in the backend.
Stephen 'Okra' Houston [Fri, 12 May 2017 20:35:46 +0000 (15:35 -0500)]
Shelf/Gadget themes... Update with proper horiz/vert theme strings for future theme developers.
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add functions for proxying a selection receive externally
in some cases (e.g,, x11 bridged selections) it is necessary to use
alternate means when transferring a selection, and so performing the
entire piped receive is not necessary. instead, extend the lifetime
of the data offer until the proxied receive has completed
@feature
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add function for setting a drag source's actions without a drag
in some cases it may be desired to have a drag data source without ever
initiating a drag, so ensure that it's possible to set the actions of the
source which will be passed for drag operations in this case
@feature
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add function for accepting a single mime type
@feature
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: do not offer a null mime first in ecore_wl2_offer_mimes_set()
this seems to have been done to account for the case where no mimes were
passed, but sending null in this way is bad behavior for a client. the
spec indicates that null should be sent only when no mimes are accepted
@fix
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add events for changes in keymap, selection, and kbd repeat rate
@feature
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add 'cancelled' to Ecore_Wl2_Event_Data_Source_End
it's impossible to know the result of a drag operation without this
member
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add display object to all events
this is required in order to determine which connection an event originated
from
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add const to internal function param
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add seat id to most events
seat id is required in order to handle multiseat environments
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
elm_cnp: only attempt to manage wl selections which are created by elm_cnp
use serials of the selections and events to avoid mangling external selections
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: emit serials in selection-related events
these allow apps to match the serial of their selection to the related
event in order to avoid mangling selections from other components
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: change selection setting apis to return the serial of the request
in the case where multiple places in an app may be handling selections, this
is necessary in order to manage the selections accurately
@feature
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: remove ERR when trying to find the focused window id
this can trigger in the case where a selection transfer occurs and
no input resource has received an enter (e.g., the window is not focused)
@fix
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: correctly refcount display objects during events
ensure lifetime of display object is longer than events in which
the object is passed
@fix
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add safety check in ecore_wl2_display_inputs_get()
ensure this is not called on server displays
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: handle case where session recovery listener triggers on dead surface
@fix
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add function for checking if a client connection sync is done
@feature
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add some accessors for useful Ecore_Wl2_Input struct members
@feature
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: split data offers into selection and drag
these are distinct objects and can coexist simultaneously; a drag
source should not overwrite an existing selection source
@fix
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: store names for inputs and add api for retrieving name
@feature
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-wl2: add checks for a valid display object in ecore_wl2_input fns
no display = invalid object, so this needs checking
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-evas: account for framespace when processing mouse movement
in some cases (e.g., the mouse-out emission from the ee wl engine),
this was calculating wrong coordinates, which would lead to a broken
chain of events like:
object mouse out -> object mouse in -> object mouse out
which would severely break some apps
@fix
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore-evas: add function for unsetting a specific seat's cursor
@feature
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
ecore: allow creation of fd handlers with no flags
it's possible to set flags to 0 with another function, so allowing
creation with 0 makes the api more consistent without breaking the
documented behavior
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
elm_entry: request both text and markup when pasting
setting this to only markup means that it's impossible to paste into
an elm_entry from a plaintext app under wayland
@fix
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
elm_cnp: don't explicitly set wl window type when starting drag
this is no longer necessary
Mike Blumenkrantz [Fri, 12 May 2017 16:08:32 +0000 (12:08 -0400)]
evas: ensure even no-op renders emit RENDER_PRE
ref
67fae7aa0fdc9d778e8db88fc49bc149576994d2
Stefan Schmidt [Fri, 12 May 2017 11:21:24 +0000 (13:21 +0200)]
tests: win_dialog: remove unused variable
Carsten Haitzler (Rasterman) [Fri, 12 May 2017 10:19:29 +0000 (19:19 +0900)]
efl ui win -> add test for centering + fix center of window before show
we haven't gotten replies yet on what our position or size should be,
so we should store them so centering works before show but after
resizing is evaluated (that also fixed by forcing an eval).
@fix
Bryce Harrington [Fri, 12 May 2017 09:08:30 +0000 (11:08 +0200)]
efreet: Fix failure to save list data to output
Summary:
This fixes a typo in the fix
55676b33, which introduced an invalid early
return from the save_list function, preventing it from outputing the
list data to the file.
@fix CID1375005, CID1375004
Reviewers: jpeg
Reviewed By: jpeg
Subscribers: stefan_schmidt, cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4873
Jean-Philippe Andre [Fri, 12 May 2017 07:28:56 +0000 (16:28 +0900)]
evas gl: Fix typo and revert hack (GLES 3.1)
Omg... Thanks Daekwang Ryu for pointing me to my error. I remember
struggling a lot with this OpenGL API and libGLdispatch (glvnd) when
in fact this was all just a typo in the code.
GLES 3.1 and the upcoming 3.2 support need a proper test case...
See
c68a40987404375b36460b6a7f5ccceb45444b57
@fix
Shilpa Singh [Fri, 12 May 2017 06:10:37 +0000 (15:10 +0900)]
elm_entry: Cursor disappears on calling select function in an empty entry.
Summary:
Issue: Selection cannot happen on an empty entry, if selection functions
are called on empty entry, cursor is hidden, even if entry is focused.
Soln: Check for whether entry is empty or not before proceeding with selection.
Test Plan:
1. Call select_all, select_region_set on a focused entry
2. You can observe cursor cannot be seen.
Reviewers: jpeg
Reviewed By: jpeg
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4862
JinYong Park [Fri, 12 May 2017 05:59:32 +0000 (14:59 +0900)]
popup: move "visible_set(FALSE)" before calling dismissed callback
Summary:
After hiding animation is finished, "dismissed" callback will be called.
It means popup's visible state is FALSE.
But if evas_object_show(popup) is called in it's custom dimssed callback function,
popup's visible state is TRUE, so evas_object_show is canceled.
So visible_set(FALSE) is must done before call dimissed callback.
@fix
Reviewers: Hermet, herb, jpeg, cedric, singh.amitesh, raster
Reviewed By: jpeg
Subscribers: woohyun
Differential Revision: https://phab.enlightenment.org/D4869
JinYong Park [Fri, 12 May 2017 05:57:01 +0000 (14:57 +0900)]
popup: enable to set last_button_number to 0
Summary:
If last added button is removed, any statements to set last_button_number in for loop doesn't be executed.
So last button number has previous value, not 0.
Because of that, action area is not removed, but that area has zero height, so it doesn't be shown.
@fix
Reviewers: herb, jpeg, cedric, singh.amitesh, raster
Reviewed By: jpeg
Subscribers: woohyun
Differential Revision: https://phab.enlightenment.org/D4870
Bryce Harrington [Fri, 12 May 2017 05:46:55 +0000 (14:46 +0900)]
evas: Revise documentation for evas_async_events*()
Summary:
Straightens up grammar and simplifies phrasing to make the functions
purposes clearer.
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4874
Bryce Harrington [Fri, 12 May 2017 05:42:29 +0000 (14:42 +0900)]
examples/evas: Fix weird use of word synchrony in comment
Summary: 'keep in sync' is more familiar programmer jargon.
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4876
Bryce Harrington [Fri, 12 May 2017 05:42:04 +0000 (14:42 +0900)]
efl_ui_focus_manager: Fix misspellings in comments
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4877
Bryce Harrington [Fri, 12 May 2017 05:41:49 +0000 (14:41 +0900)]
evas: Fix two whitespace errors
Summary:
Removes extraneous newline, and fixes the indentation of the while
statement's sub-clause (which looked like a code error at first
glance).
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4875
Youngbok Shin [Fri, 12 May 2017 05:17:30 +0000 (14:17 +0900)]
evas textblock: fix dereferenced memory after free issue for ellipsis
Summary:
_layout_ellipsis_item_new() function deallocates "ellip_ti" and
allocates memory for new one. The local "ellip_ti" pointer should be
updated.
@fix
Test Plan: N/A
Reviewers: raster, cedric, herdsman, jpeg, woohyun
Differential Revision: https://phab.enlightenment.org/D4854
Jean-Philippe Andre [Fri, 12 May 2017 03:02:24 +0000 (12:02 +0900)]
evas map: Rename raw_coord to coord_absolute
This is more in line with the other "absolute" APIs.
Jean-Philippe Andre [Thu, 11 May 2017 08:03:21 +0000 (17:03 +0900)]
elm_test: Add EO version of "Flip Page" test
This is a copy of the "Flip Page" map usage example that relies
on the new set of APIs for EO. This was used to test the API
and show its usage.
The calculation being done in absolute values, this does not
really exploit the new API, but instead proves that it is on
par feature-wise.
The performance is worse than with legacy, because of extra list
walkings, map calculations, small struct allocations and eo calls.
This fixes the shadow of the page which was broken with the legacy
API (as color_get did not recalc the map).
A better implementation can probably be done without having
to rely so much on absolute coordinates.
Jean-Philippe Andre [Thu, 11 May 2017 07:59:54 +0000 (16:59 +0900)]
evas map: Reach feature parity with legacy API
I've done this by translating "Flip Page" to this new set of
EO APIs. In particular, absolute coordinates need to be used
in some calls, and the map needs to be calculated between
get and set operations.
This required an adjustment of the raw_coord API as the flip_page
code does some math after reading and then writing to the map.
Same for color. Those two properties now act like commands (ie.
like the other gfx map functions).
This also introduces a duplicate set of APIs to handle absolute
coordinates. Other solutions included:
- Use an enum to specify the type of coordinates (but then the
unit of cx,cy varies between non-unit relative position and
pixel position. Also this adds an extra argument to all those
function calls.
- Pass a special value (an empty eo object) as the argument for
pivot. Same remark about the unit as above. This way was
deemed too confusing because of the weird object.
Those two options have been discarded after asking the opinion
of a few developers I could reach.
@feature
Jean-Philippe Andre [Wed, 26 Apr 2017 06:11:51 +0000 (15:11 +0900)]
evas map: Introduce new API for maps (Efl.Gfx.Map)
This implements an entirely new API model for Evas Map by relying
on high-level transformations on the object rather than an external
Evas_Map structure that needs to be constantly updated manually.
The implementation relies on Evas_Map.
To rotate an object all you need to do now is
efl_gfx_map_rotate(obj, 45.0, NULL, 0.5, 0.5);
Or with a C++ syntax:
obj.rotate(45.0, NULL, 0.5, 0.5);
Or even simply (with default arguments):
obj.rotate(45.0);
The map transformation functions are:
- rotate
- rotate_3d
- rotate_quat
- zoom
- translate (new!)
- perspective_3d
- lightning_3d
@feature
Jean-Philippe Andre [Wed, 26 Apr 2017 05:41:03 +0000 (14:41 +0900)]
evas map: Replace EO APIs for populate with reset
Manual points population will eventually be useless as the
map API will become more like a transformation API, where
the current object geometry doesn't matter as much as which
transformation is applied to it.
Jean-Philippe Andre [Wed, 26 Apr 2017 05:04:21 +0000 (14:04 +0900)]
evas map: Move Efl.Gfx.Map mixin to its own C file
Jean-Philippe Andre [Thu, 11 May 2017 04:05:58 +0000 (13:05 +0900)]
ecore_evas: Use proper enum values in axis events
Somehow the evas enum values were used instead of the ecore ones.
But I believe this is just a cosmetic change as their integral
values was the same.
Jean-Philippe Andre [Tue, 25 Apr 2017 08:54:44 +0000 (17:54 +0900)]
evas examples: Fix invalid assumption about proxy
In the map examples, the map image UV size was based on the image
source geometry, rather than the image geometry itself.
In the example, this affects how the glass is mirrored. Before this
patch, the reflection is a single line stretched. EFL 1.18 and 1.19
seem to have the same issue, while 1.17 simply fails to show any
reflection. 1.16 fails miserably and the entire window is black.
If the original code was correct, then I believe that map and/or
proxy rendering have been modified in a way that affects the meaning
of those image UV parameters. But this seems like the regression (if
it is one) is in fact quite old.
@fix
Jean-Philippe Andre [Tue, 25 Apr 2017 06:29:34 +0000 (15:29 +0900)]
edje: Fix shadow variable warning
Jean-Philippe Andre [Tue, 25 Apr 2017 06:28:22 +0000 (15:28 +0900)]
mapbuf: Make point_color a property
Jean-Philippe Andre [Tue, 25 Apr 2017 06:11:08 +0000 (15:11 +0900)]
container: Remove method part_name_get
Remove this for now, as it may not apply to all contents.
Note that this was a new API in EO.
Stefan Schmidt [Thu, 11 May 2017 07:34:53 +0000 (09:34 +0200)]
efreet: free the allocated buffer before returning
This fixes the commit
169a08c03a6a7270e185bda85d4ab9afd9063c8e (efreetd:
BSD optimizations). Coverity rightly pointed out six different leaks of
various buffers on error paths.
CID: 1374949 1374950 1374951 1374952 1374953 1374954
Derek Foreman [Wed, 10 May 2017 21:10:49 +0000 (16:10 -0500)]
gl_drm: Fix rendering problems with dmabuf
Somehow this long standing bug wasn't obvious until wayland 1.13.0 made
some additions to an opaque structure.
This changed the frequency that new buffers came to us with the exact
same pointer value of a buffer that had just been freed.
This shortcut in eng_image_native_set has always been wrong - we need to
proceed to the end to make sure we pick up new dmabuf attributes.
Al Poole [Wed, 10 May 2017 19:26:04 +0000 (12:26 -0700)]
efreetd: BSD optimizations.
Summary: Related to ticket T5475.
Reviewers: raster, cedric
Subscribers: jpeg, cedric, raster
Differential Revision: https://phab.enlightenment.org/D4865
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Bryce Harrington [Wed, 10 May 2017 09:03:37 +0000 (11:03 +0200)]
examples/evas: Improve linespacing consistency
Summary:
Also fixes a handful of obvious indentation irregularities,
including some reformatting of some printf() multi-line indents that
commit
a71b770b did not properly adjust.
No functional code changes.
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D4864
Bryce Harrington [Wed, 10 May 2017 08:49:17 +0000 (10:49 +0200)]
ecore_evas: Improve linespacing consistency
Summary:
Adds a line between each function so it's more obvious what doc goes
with what API routine. Reorganize the doxygen elements so they're
consistently ordered and spaced.
No code or documentation changes; mostly just whitespace.
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D4866
Cedric BAIL [Tue, 9 May 2017 22:54:45 +0000 (15:54 -0700)]
evas: adjust pointer mode set to work in headless scenario.
With the wayland backend, it is posible to have no seat connected
until later. This would lead to calling evas_object_pointer_mode_set
and fail without returning a boolean it was impossible to detect it
did fail. This patch correct it.
Cedric BAIL [Tue, 9 May 2017 22:39:58 +0000 (15:39 -0700)]
evas: make sure that even when nothing is rendered there is a pair of RENDER_PRE and RENDER_POST events generated.