Commit Graph

20394 Commits

Author SHA1 Message Date
Cedric BAIL 8b95fdbfd3 evas: refactor drm engine to have useless function redirection. 2017-08-25 10:49:32 -07:00
Cedric BAIL 262ab2bd54 evas: refactor wayland_shm backend to have less useless function redirection. 2017-08-25 10:49:28 -07:00
Cedric BAIL 8c16402a2c evas: refactor fb engine to have less useless function redirection. 2017-08-25 10:49:23 -07:00
Cedric BAIL 93531868c7 evas: refactor buffer engine to have less indirect useless call. 2017-08-25 10:49:19 -07:00
Cedric BAIL 3e88aa37bc evas: Render_Engine_Swap_Mode is actually about output swap. 2017-08-25 10:49:15 -07:00
Cedric BAIL e31707743a evas: Render_Engine_Merge_Mode is actually about output. 2017-08-25 10:49:11 -07:00
Cedric BAIL f4afd5f1bd evas: reduce duplication of merge_mode getenv logic. 2017-08-25 10:49:06 -07:00
Cedric BAIL d179a5c2a9 efl: remove PS3 backend.
This backend has received no patch and maintenance from anyone who could
actually test it over the last few years. After talking with KaKaRoTo it
is best to remove it. If anyone want to take over its maintenance, you
are welcome to revert this patch.
2017-08-25 10:48:42 -07:00
Cedric BAIL e6b4878a9e evas: follow all other engines convention and use ORD macro. 2017-08-25 10:48:37 -07:00
Cedric BAIL 29cde0ee81 evas: make the info size a parameter of the function to make it safer to roll in. 2017-08-25 10:48:20 -07:00
Cedric BAIL 22beae8b73 evas: refactor the creation of the output info logic in libevas. 2017-08-25 10:48:17 -07:00
Cedric BAIL 46e1df839b evas: factorize call to info and info_free. 2017-08-25 10:48:13 -07:00
Cedric BAIL 1e2bbf8fea evas: all this function (info, setup and update) are really output related. 2017-08-25 10:48:09 -07:00
Cedric BAIL 8017fab100 evas: nobody actually call the tile size set API. 2017-08-25 10:48:05 -07:00
Cedric BAIL 6f3980f55e evas: Render_Engine_GL_Generic is actually an output. 2017-08-25 10:48:00 -07:00
Cedric BAIL cac667e402 evas: do not loose tile size when resizing output. 2017-08-25 10:47:56 -07:00
Cedric BAIL 8ffc0f2b9e evas: prevent double tilebuf creation/destruction during window resize. 2017-08-25 10:47:52 -07:00
Cedric BAIL 600a5fa76c evas: all GL backend require strict tilebuf, let's make that the default. 2017-08-25 10:47:48 -07:00
Cedric BAIL 741ecaf2cf evas: no need to double init tilebuf as it is created by software generic. 2017-08-25 10:47:39 -07:00
Cedric BAIL bf2439b501 evas: Render_Engine_Software_Generic is actually Render_Output_Software_Generic. 2017-08-25 10:47:11 -07:00
Cedric BAIL 268d9984b4 evas: engine should not access Evas canvas directly. 2017-08-25 10:47:03 -07:00
Hosang Kim 4b74a4cd55 scroller: fix getting content position.
Summary:
Widgets that don't have content like as genlist, gengrid.
They don't have geometry of content also.
So position of pan will be used when calculating postion to scroll.

Test Plan:
tested in elementary_test and check working properly.
this may be the problem when extern pan set on scrollable interface.

Reviewers: SanghyeonLee, cedric, felipealmeida, larry, bu5hm4n

Reviewed By: SanghyeonLee

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5127
2017-08-25 14:53:09 +09:00
Daniel Hirt af1f4157f2 Canvas text: fix uninitialized value
Bug was introduced in f696cc8893.
2017-08-24 19:32:17 +03:00
Chris Michael 474da25165 ecore-drm2: Add API to allow setting pointer acceleration profile
Small patch to allow setting pointer acceleration profile (for
wayland) from within Enlightenment.

ref T4736

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-08-24 11:42:57 -04:00
Chris Michael b43f6c14dd ecore-drm2: Add API function to allow setting pointer acceleration speed
Small patch to add a new API function which can be called from
Enlightenment in order to allow setting pointer acceleration speed.

ref T4736

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-08-24 11:32:51 -04:00
Chris Michael d798eca247 elput: Add API to set pointer acceleration speed
Small patch to add an API which can be called to set pointer
acceleration speed under Wayland.

ref T4736

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-08-24 11:28:31 -04:00
Gustavo Sverzut Barbieri 9ac1cb4fad eina_value: add helper: eina_value_struct_desc_get().
this helper will validate a struct and fetch its description, also
checking if the user version matches.
2017-08-24 11:13:56 -03:00
Daniel Hirt e63be982d9 Canvas text: prevent change of context width field
The 'c->w' field gets manipulated for querying cutoffs of text with its
boundaries. Better to keep it a read-only field, to reduce confusion.
Also updated querying internal functions for better readability.
2017-08-24 12:38:13 +03:00
Daniel Hirt e20a44b7e7 Canvas text: reduce usage of data_scope_get()
During layout, this data is unchanged and there is no need to keep
asking for it.
2017-08-24 12:17:21 +03:00
Daniel Hirt f696cc8893 Canvas text: move obstacles logic to proper place
Will likely reduce number of update requests.
2017-08-24 12:17:21 +03:00
Myoungwoon Roy, Kim c017ab2dc0 docs: Add information about texture size limitations
Summary: I had added some information about texture size limitations to Elm image API reference.

Test Plan: Doxygen Revision

Reviewers: raster, cedric, stefan, jpeg, Jaehyun_Cho

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D5106
2017-08-24 14:29:45 +09:00
WooHyun Jung 7738ba5b37 elm_widget: remove redundant null check 2017-08-24 13:29:39 +09:00
Gustavo Sverzut Barbieri 103b134916 eina_value_util: eina_value_X_get() helpers.
These helpers will validate the type prior to get its value, also
enforcing the correct pointer is passed.
2017-08-23 18:32:13 -03:00
Gustavo Sverzut Barbieri f4b02d87d6 eina_value_util: init helpers (stack/return).
These helpers are similar to eina_value_X_new(), however do not
allocate the Eina_Value, rather return it.

These are useful when the value struct storage was already there but
needs to be initialized in a single line, like as stack variables or
when returning a value.
2017-08-23 18:32:13 -03:00
Gustavo Sverzut Barbieri c158d5c17a eina_value_util: add missing eina_value_*_new() for basic types.
make all basic types available as _new() helpers.
2017-08-23 18:32:13 -03:00
Gustavo Sverzut Barbieri 39acaab5e9 eina_value_util: remove "_util" from names.
these utilities are very useful, but names became too long. Since they
do not conflict with anything else, shorten them.

Since they were available before as inline function, provide a macro
to rename them for old source that's compiled against newer library.
2017-08-23 18:32:13 -03:00
Guilherme Iscaro 6cbfe100d5 Eina_Value type EINA_value. 2017-08-23 18:32:13 -03:00
Guilherme Iscaro 3ed176370d Eina: Add EINA_VALUE_TYPE_ERROR
This new type will be used by the new promise/future implementation,
which will be used to flag errors.
2017-08-23 18:32:13 -03:00
Gustavo Sverzut Barbieri 4da53492ae add EINA_VALUE_EMPTY, allow flushing empty values.
EINA_VALUE_EMPTY is basically a zeroed Eina_Value, handy for declaring
and returning.

To cope with the rest of efl, free/del/flush on NULL shouldn't
complain, so flusing an empty value should be quiet.
2017-08-23 18:32:13 -03:00
Jean-Philippe Andre 3f9c239b27 widget: Make sub_object add/del protected (EO)
Also prefix with widget.

I want to rename this as child rather than sub. It's inconsistent with
the other parent/child hierarchies. Anyway the various hierarchies are
confusing, so let's keep this name :)

Ref T5363
2017-08-23 20:56:37 +09:00
Jean-Philippe Andre c071fd453b eo: Mark name_find as const
The search should not require a mutable object.
See the previous commit on elm_widget.
2017-08-23 20:53:20 +09:00
Jean-Philippe Andre 876ad24815 widget: Remove name_find from EO
This is already implemented at the Efl.Object level, under the same
name: "name_find".

Ref T5363
2017-08-23 20:53:20 +09:00
Jean-Philippe Andre 1d39c2d175 widget: Remove highlight_ignore from EO 2017-08-23 20:53:20 +09:00
Jean-Philippe Andre 3f5f675c74 widget: Reshuffle EO file for clarity
Also marks theme.set/get as beta.

Ref T5363
2017-08-23 20:53:20 +09:00
Jean-Philippe Andre f1ab8c8fee widget: Remove more functions from EO
Internaaaaaaaalsssss....

Ref T5363
2017-08-23 20:53:20 +09:00
Jean-Philippe Andre 1d62f9dc7c widget: Remove some more functions from EO
Internals...

Ref T5363
2017-08-23 20:53:20 +09:00
Jean-Philippe Andre 8a20251795 widget: Remove highlight_in_theme from EO
Removes EO APIs:
 - highlight_in_theme
 - access_highlight_in_theme

Ref T5363
2017-08-23 20:53:20 +09:00
Jean-Philippe Andre fcae72b0e3 widget: Remove 2 focus APIs from EO
They are internal and use an undefined type.
Also, completely deprecated with the new focus manager.

Ref T5363
2017-08-23 20:53:20 +09:00
Jean-Philippe Andre 91f9f41471 widget: Remove hover_object from EO
Internal

Ref T5363
2017-08-23 20:53:20 +09:00
Jean-Philippe Andre 1a65b7018d widget: Remove tree_unfocusable from EO
It was deprecated (in elm_object API) a very long time ago.

Ref T5363
2017-08-23 20:53:20 +09:00
Jean-Philippe Andre 5e7de75914 widget: Remove focus_tree_unfocusable_handle (EO)
Ref T5363
2017-08-23 20:53:20 +09:00
Jean-Philippe Andre 53c966b790 widget: Rename top to widget_top (EO)
Ref T5363
2017-08-23 20:53:15 +09:00
Jean-Philippe Andre ec264c5002 widget: Remove tooltip_add/del from EO
It's pretty much an internal function.
NOTE: Tooltip API is not bound to EO (yet).

Ref T5363
2017-08-23 19:20:47 +09:00
Carsten Haitzler 10ea932262 elm init - fix init seq and quicklaunch as we shut down x before evas
... and others. this leads to crashes if x ops are busy in a thread or
engine evas thread shutdown happens to call engine calls that then do
x calls... should apply in general to wl too. fixes some segv's on
shutdown given the new gl thread patches.

@fix
2017-08-23 17:25:43 +09:00
Jean-Philippe Andre 87aa053e58 elm_test: Remove calls to fill+expand (EO)
Wherever the EO API is used, i.e. efl_add() is used to create evas
objects, we can skip the calls to set fill/expand.

This new set of defaults indeed saves ~60 loc in the tests (out of 115
objects created). I found only 3 cases where the align had to be set
manually (to the old default of 0.5).

See 1a1b8bc451
And e8b7f5f255

Ref T5301
2017-08-23 15:57:49 +09:00
Jean-Philippe Andre e8b7f5f255 evas: Set default align to FILL for EO objects
See also 1a1b8bc451
2017-08-23 15:24:37 +09:00
Jean-Philippe Andre 29bacf5988 gfx: Remove size hint request (EO)
This hint is simply not supported by any container.
Add the EO API back if the containers support it.

Ref T5487
2017-08-23 15:24:37 +09:00
Jean-Philippe Andre 20e6c2e908 js: Fix javascript generator's compilation
javascript bindings are broken, because of function pointers but it
seems something else as well (Eina_Slice?).
2017-08-23 15:24:37 +09:00
Jean-Philippe Andre eb5d9a07ec ecore: Fix shadow warning (with nodejs enabled) 2017-08-23 15:24:37 +09:00
Jean-Philippe Andre cec45f616a js: Fix some js examples usage of orient API
This was not tested. How to test js?
2017-08-23 15:24:37 +09:00
Jean-Philippe Andre db4950ba2f efl: Remove Efl.Orientation horiz & vert (EO)
They are now replaced by Efl.Ui.Dir

NOTE: The name Efl.Ui.Dir is not satisfactory. Maybe we should use
Direction_Type or Direction_Value?

Ref T5870
2017-08-23 15:24:37 +09:00
Jean-Philippe Andre d28510a37b test: Fix EO API usage (direction) 2017-08-23 15:24:37 +09:00
JinYong Park 948d20ab54 test_check: fix build warning
Summary:  In state_changed_cb2 callback function, obj is used. so it should not be EINA_UNUSED

Reviewers: Jaehyun_Cho, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5122
2017-08-23 13:52:25 +09:00
JinYong Park 6f87330fe2 layout: call size calculating after text_set(NULL)
Summary:
When text set NULL, size is not changed even text is removed.
So, fix that case logic

1. send text,hidden signal
2. remove text
3. call sizing eval to resize layout

Test Plan:
1. run elementary_test -to check
2. change value last check object
3. compare before and after

Reviewers: Jaehyun_Cho, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5086
2017-08-23 13:29:14 +09:00
Jean-Philippe Andre 06ec847a7c widget: Use EO function pointer for on_show_region
This is as much a test of the EO function pointer as it is a clean up of
this widget API.
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 509ed86cdf widget: Remove unused legacy function name
Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 5cfd698894 win: Remove types socket and fake from EO
Fake: This should never have had the fake_canvas_set API. It already can
not work after efl_finalize. And Ecore_Evas isn't part of EO API so it
doesn't make sense at this point to try to expose the fake window as
part of EO API.

Socket: This is the only type of window that implements socket_listen.
So we can just move this function to a new subclass.

NOTE: Socket & plug are currently broken, even in 1.20 (at least for me)!

Ref T5322
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre e9dffa723d win: Add Efl.Ui.Win_Inlined and remove parent2
Inlined windows are the only use case for parent2. We might as well want
to create a separate subclass for those special windows.

Ref T5322
Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 964fafe429 widget: Remove parents_bounce from EO
It's specific to scroller and can be implemented there. Moved.

Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 6a08d4c519 widget: Remove inexisting property parent_widget
We also have widget_parent.

Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 3137c2c01e widget: Clean up doc for focus & focus_allow
I'm not sure about the name for focus_allow:
 - can_focus
 - focusable
 - focus_allow
 - ???

Also, it looks like focus should just be the evas object function
overridden.

Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre ef4cbfc9ff widget: Clean up orientation_mode_disabled
Only doc.

Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre b588cefbae config: Automatically fix some key bindings
This changes the name used in the config file, without changing the
system config files yet. This restores key bindings for:
 - Win
 - Image
 - Video
 - Photocam

See also the previous commit.
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 031ae12c2f elm: Rename some EO widget class names
It was discussed a while ago that Zoomable was a poor name in some
languages, like python.

This changes, in Efl.Ui, to use underscores:
 - Image.Zoomable
 - Grid.Static
 - Box.Flow
 - Box.Stack
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre c4ac589455 widget: Remove all legacy event stuff in propagate
The EO API is now clean! Yay!

Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 66d241eadf elm: Process all input events with EO
This removes all uses of type & event_info in the method widget_event.

Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre acdef50276 photocam: Fix key zoom in/out
Zoom +/- doesn't work well as this is a multiplication factor.

Test scenario:
 - elementary_test -to Photocam

Then click on the image, and press + or - on the keyboard.

@fix
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 20a5968c12 elm: Use a macro to handle key bindings
This factorizes the code and makes most widgets handle key down events
in the same way:
 - check that the object is not disabled, event is not on hold
 - figure out the key binding based on the class name
 - mark event as on hold

The class name is usually MY_CLASS_NAME but in some cases it was
MY_CLASS_NAME_LEGACY which may be different from the EO class name (eg.
elm_win vs. Efl.Ui.Win). In that case the key bindings are broken.

This breaks key bindings for the following widgets:
 - Win (focus)
 - Image ("clicked")
 - Video (move, play)

This fixes key bindings for the following widgets:
 - Nstate

Some widgets remain broken:
 - Photocam / Efl.Ui.Image.Zoomable

A patch will be applied to restore the key bindings for the above
breaks.
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 069747b9de widget: Add eo event info inside widget_event
This is an internal function that should probably become an overridable
protected method, as it's required for proper event handling in widgets.
Next step: use eo_event_info in the widgets implementations. Then remove
legacy event struct.

Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre e8826062eb eo: Define Efl.Event in EO
This can be used in the widgets propagation mechanism later. I don't see
any really good reason to not define this struct in EO anyway.

Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 47070c7d14 widget: Remove import edje_types from EO
Ref T5363
2017-08-23 11:16:45 +09:00
Jean-Philippe Andre 1a1b8bc451 evas: Set weight to "expand" by default
This is a semi experimental patch to set the default weight
of objects to (1, 1), i.e. EXPAND. This seems like a more
sensible default value than no weight. Some objects may not
need the expand weight, but this seems to be the minority,
not the majority.

Ref T5301
2017-08-23 11:16:45 +09:00
Felipe Magno de Almeida a7649a7897 eolian-cxx: Add workaround for function pointer types 2017-08-22 22:40:13 -03:00
Daniel Zaoui 2f53bdfe60 Move efl interfaces from evas to efl directory
You may need to remove your installed directory to avoid conflicts
2017-08-22 09:53:24 +03:00
Woochan Lee d1631d8a86 elm_spinner: Support min,max filter for float format case.
Summary: The previous min, max filter doesn't support float format case.

Test Plan: elementary_test -> spinner.

Reviewers: jpeg, cedric, woohyun, myoungwoon

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5016
2017-08-22 14:42:27 +09:00
Woochan Lee 4656f98e22 efl_ui_clock: Parses the format recursively.
Summary:
Some of locale formats convert as extension format.
For example,
             uk_UA d_t_fmt is "%a, %d-%b-%Y %X %z".
             The %X will convert as %T.
             The %T format has to convert one more time to convert as %H:%M:%S.

ref : https://lh.2xlibre.net/locale/uk_UA/

We need to parse the format recursively to support that kind of case.

@fix

Test Plan:
Change the locale as uk_UA.
Run elementary_test -> datetime
See the time field is not appear.

Reviewers: jpeg, cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5021
2017-08-22 14:17:41 +09:00
Jean-Philippe Andre b433592b03 edje: Fix warning message
efl_version is a top-level value

@fix
2017-08-22 11:50:31 +09:00
Jean-Philippe Andre 76d4c965c4 evas: Add safety checks to avoid crash
Without more information or clear reproduction scenario (this crash
doesn't happen for me), this is probably the best we can do.

Fixes T5532
2017-08-22 11:50:31 +09:00
Jean-Philippe Andre ba36214a47 evas: Fix experimental code related to visibility
This is to pretend the object is visible when it's been added with
efl_add but evas hasn't started rendering yet (it's in the queue).

This code is not enabled (yet?) although I think it could very well be
(I don't observe the same bugs as I did the first time I tried this
patch).
2017-08-22 09:44:07 +09:00
Jean-Philippe Andre 85d04a74d4 elm_box: Fix support of aspect hints
Test scenario: ephoto without a recent patch (47fe2b9ab03c151b0f4).
Before any further explanation, ephoto was definitely misusing the
aspect API here. A label most definitely shouldn't be sized based on an
aspect ratio, that's just crazy (you really want to make it as tall as
it's wide?)

If a box has an aspected item, it needs to run its min calc loop twice:
 1. Once to determine the "true" min size in the direction of the box
    (ie.  in X in case of a horizontal box), and
 2. Once more in order to apply the aspect ratio to aspected items and
    augment the perpendicular min size (ie. Y for horizontal).

After that, it can go and layout the items based on the available size.

As we may guess from the above description (1) determines min W and
(2) determines min H (in horizontal mode).

BUT, there were two problems:
 - The wrong item min size was used inside the 2nd loop (the code was
   not symmetrical between horizontal and vertical modes). These are the
   changes in _smart_extents_non_homogeneous_calc.
 - The box min length was based on the actual size of aspected items,
   rather than their min size. This goes against the observation. These
   are the changes in _smart_extents_calculate.

Ref T5888

@fix
2017-08-21 18:35:31 +09:00
Jean-Philippe Andre 7270a98d8c popup: Avoid error messages on NULL
Those were spotted in ephoto (with no config, first run).
2017-08-21 16:30:21 +09:00
Carsten Haitzler 6226e88b6e evas - fix build dependencies that cause failed builds
missing dev on ecore_wl2 so fix...
2017-08-21 16:04:43 +09:00
Jean-Philippe Andre 9da7e98dcf evas gl: Improve GL_ERRORS (internal debug code) 2017-08-21 13:53:30 +09:00
Jean-Philippe Andre d44cbb618a glview: Fix ALWAYS render policy
@fix
2017-08-21 13:53:29 +09:00
Jean-Philippe Andre d3f2696838 eina: Add EINA_UNUSED in eina_pass_through_from
Fixes a warning
2017-08-21 13:53:28 +09:00
Amitesh Singh e2724b300d elm segment control: delete event cbs on obj delete.
@fix
2017-08-19 16:32:59 +09:00
Derek Foreman 8c917daa06 wayland: Tick like a boss
Instead of the clever but awful manual_render_set hack, actually do ticks
based on frame callbacks.

Fix T5850
2017-08-18 14:27:32 -05:00
Derek Foreman 913e216ea3 ecore_wl2: Send configure complete when windows don't need configure
The intent of the "configure complete" event is to indicate that the
window is configured and ready to receive buffers.

For "windows" like mouse cursors, that's immediate - let them know.
2017-08-18 14:27:32 -05:00
Derek Foreman 9df39b5616 ecore_wl2: Refactor out code to send window configure complete event 2017-08-18 14:27:32 -05:00
Derek Foreman f95f17ae37 wayland_egl: Call ecore_wl2_window_buffer_attach
This lets ecore_wl2 know that there's a buffer attached - even if we don't
know what it is because it's hidden by gl.
2017-08-18 14:27:32 -05:00
Derek Foreman 3290e6da10 wayland_shm: Use ecore_wl2_window_buffer_attach
No longer calling wl_surface_attach directly.
2017-08-18 14:27:32 -05:00
Derek Foreman 5f0fa08467 wayland_shm: Don't attach null buffers from surface_post
This is protected against elsewhere.
2017-08-18 14:27:32 -05:00
Derek Foreman 51768ff62b ecore_wl2: Add ecore_wl2_window_buffer_attach API
Let ecore_wl2 track some buffer related state so we can more easily sync
things between ecore_evas and the evas_engines.
2017-08-18 14:27:32 -05:00
Derek Foreman 90a032587a wayland_egl: Add ecore_wl2_window_commit
Use ecore_wl2_window_commmit() in addition to eglSwapBuffers in order
to set up a frame callback and handle pending update tracking.
2017-08-18 14:27:32 -05:00
Derek Foreman a8c44938f3 wayland: Switch to ecore_wl2_window_commit()
Use ecore_wl2_window_commit() instead of directly calling wl_surface_commit
2017-08-18 14:27:32 -05:00
Derek Foreman 972633e7e8 wayland_shm: Remove direct access to wl_surface
Querying it through Ecore_Wl2_Window now
2017-08-18 14:27:32 -05:00
Derek Foreman 8f038b2591 ecore_wl2: Add new APIs ecore_wl2_window_frame_callback_add/del()
Abstract frame callbacks through ecore_wl2_window so we can add them in
multiple places without having the wayland compositor generate more than
one.

Also allows us to keep a callback registered over hide/unhide of a window
easily.
2017-08-18 14:27:32 -05:00
Derek Foreman b599b1b900 ecore_wl2: Add API ecore_wl2_window_pending_get()
Lets us test if a commit has been requested but the compositor hasn't
yet told use to draw new content for it.
2017-08-18 14:27:32 -05:00
Derek Foreman 11d3bf7939 ecore_wl2: Add API ecore_wl2_window_commit()
Abstract wl_surface commits in ecore_wl2_window.
2017-08-18 14:27:32 -05:00
Derek Foreman e3b9fbaed8 wayland: Put Ecore_Wl2_Win instead of wl_surface into the engines
We'll need to track some state in a common way, so attaching it to the
window seems like a good idea.
2017-08-18 14:27:31 -05:00
Derek Foreman ccc4ffc80d wayland: Make the wayland evas engines dependent on ecore_wl2
Seems like the best place to put some common code.
2017-08-18 14:27:31 -05:00
Mike Blumenkrantz dc073c1ea3 wayland: fix num/caps lock handling in events
locks are not the same as modifiers, and the corresponding event flag must
be set based on whichever value(s) are set instead of yolo mixing and matching

@fix

ref T5737
2017-08-18 15:24:37 -04:00
Mike Blumenkrantz 850bba4986 evas: make top object returning functions return the top object
this previously just returned the top clipper at the specified points

@fix
2017-08-18 15:24:37 -04:00
Bryce Harrington 829cc94aee ecore_sdl: Add API doc for ecore_sdl_feed_events
Reviewers: cedric, devilhorns

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5097
2017-08-18 09:48:59 -04:00
Bryce Harrington 4202c29996 examples: Improve error message text from Evas examples
Reviewers: cedric, devilhorns

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5103
2017-08-18 09:47:45 -04:00
Bryce Harrington 73c02f0b2c examples/evas: Fix sp. of 'Coult' in warning
Reviewers: cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5102
2017-08-18 09:46:48 -04:00
Jean-Philippe Andre 49d339b72e elm_color_class: Save all cc overlays
It seems that cc overlays that didn't change got lost in the process of
saving elm_config and then reloading it (automatically happens because
the file changed... which we just wrote to).

Fixes T3682
2017-08-18 16:54:58 +09:00
Jean-Philippe Andre 9008dd88bc colorselector: Fix invalid API (orient vs. dir) 2017-08-18 16:54:58 +09:00
Jean-Philippe Andre fbf294d9ee vieet: Add read-only mode
Really ugly scripting right there.
2017-08-18 16:38:19 +09:00
Jean-Philippe Andre fb57bc0106 elm_config: Add env var to skip profile save
This only skips writing the profile name to
  ~/.elementary/config/profile.cfg

This allows easier testing of elementaryt apps (and E) with custom
profiles.

export ELM_PROFILE_NOSAVE=1
2017-08-18 16:38:15 +09:00
Jean-Philippe Andre e78e075a37 elm_test: Fail nicely if plug can't connect
This makes sure that
  elementary_test -to "Window Plug"
exits nicely (with the exit policy on all window close) instead of
hanging forever with an invisible window.

@fix
2017-08-18 15:00:27 +09:00
Jean-Philippe Andre a43740c074 ecore_evas_extn: Fix socket & plug windows
Socket & Plug were broken after 38e6780262.
Multiple problems here:
 - The invalid path was used for the lock file.
 - The invalid buffer ID was used for unlock in render_post. That's
   because the buffer was switched during output_flush which happens
   before render_post. So the buffer would remain locked forever on the
   server side (unless maybe some animation was happening there).

@fix
2017-08-18 14:53:20 +09:00
Cedric BAIL a21f25b0eb evas: do not double include interface.
This lead to unproperly defined symbol (as they should be build in libefl) on
windows with actually no need for it.
2017-08-17 15:02:11 -07:00
Bryce Harrington 67fff04cc7 evas: Fix spelling/grammar errors
Summary:
Fixes some basic punctuation and grammar errors, corrects spelling and
word order/choice in various places.

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5098
2017-08-17 10:45:35 -04:00
Bryce Harrington f377f722e6 evas: Drop excessive use of 'just' and 'which'
Reviewers: cedric, devilhorns

Reviewed By: devilhorns

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5099
2017-08-17 10:44:05 -04:00
Bryce Harrington c4a5b7b19c evas_rectangle_main: Whitespace cleanup
Summary: Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

Reviewers: cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5100
2017-08-17 10:43:08 -04:00
Bryce Harrington e3e2a37b0f elput: Fix @brief's in docs
Summary:
It is not necessary to specify @brief since the first line will
automatically be used, but if it is used it should be only for the brief
description, not the detailed description.

Also reformat other docs in this file to follow convention for the brief
docs.

Reviewers: cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5101
2017-08-17 10:41:26 -04:00
Guilherme Iscaro 0309981eba Elm Examples: Fix undefined function references.
They were renamed by 599bb616ec

Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
2017-08-17 10:33:53 +09:00
Jean-Philippe Andre c7ca7221ab evas: Fix auto-show of EO objects
Objects show should happen as early as possible during the render cycle,
as it affects smart objects calculation and everything else.

Thanks @JackDanielZ for the report!

Fixes T5880
2017-08-17 10:28:10 +09:00
Thiep Ha 7d5e5f749e ui.box: add aspect ratio support
Adding support for aspect ratio.

ref T5487
2017-08-17 10:04:36 +09:00
Thiep Ha 5ab5d823fa ui.box: Add handling for weight + align
Issue: If the item has weight and non-filled align, item is not resized.
This patch fixes this issue.
Test: elementary_test -> ui.box -> Equal weight. Buttons Btn1, BtnA, B, C
do not resize when resize the window.

ref T5487
2017-08-17 07:56:23 +09:00
Jean-Philippe Andre b3722c05f9 evas: Fix crash with filters
Since the EO APIs are defined as weak symbols, invalid definitions of
EAPI lead to runtime crashes on non-public APIs. This is a fix following
a series of changes wrt. EAPI definitions.
2017-08-16 14:06:51 +09:00
Gustavo Sverzut Barbieri 4cd1257b1b value size is stored in type, no need to manually specify them. 2017-08-15 19:01:23 -03:00
Vincent Torri dee65b525c ector: fix EAPI on Windows
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-08-15 14:13:25 -07:00
Cedric BAIL f4f926f2bd eina: remove tests and benchmark for long dead mempool. 2017-08-15 13:46:38 -07:00
Cedric BAIL b94390a6aa eina: add tests for from. 2017-08-15 13:46:38 -07:00
Cedric BAIL 30816a0cf1 eina: add support for from in pass through 2017-08-15 13:46:37 -07:00
Cedric BAIL 04010f7307 eina: add support for from in one big. 2017-08-15 13:46:37 -07:00
Cedric BAIL 5bec2415c9 eina: add support for from in chained mempool. 2017-08-15 13:46:36 -07:00
Cedric BAIL b5cede94ea eina: add an API to check if a pointer is a valid element of a mempool. 2017-08-15 13:46:34 -07:00
Vincent Torri 45bcc87e76 eio: fix correct stat structure on Windows 32 bits
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-08-14 10:17:24 -07:00
Vincent Torri c2abb9a946 ecore_evas: win32 module - fix possibly uninitialized variables
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-08-14 10:16:59 -07:00
Vincent Torri 15108ecad0 evas: move EAPI undef to the correct place
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-08-14 10:16:44 -07:00
Vincent Torri 9816cc90b2 evas: undef EAPI properly.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-08-14 10:16:19 -07:00
Vincent Torri ff0d8ef0a4 evas GDI engine: improve speed
expedite mean value goes from ~125 to ~205

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-08-14 10:16:05 -07:00
Mike Blumenkrantz 595aa6bbb4 efl: add EFL_VERSION_1_21
indicate that features from this version can be used
2017-08-14 07:25:04 -04:00
Amitesh Singh b3532d16ab Efl.ui.panes: move legacy APIs at bottom of file 2017-08-14 09:55:38 +09:00
Cedric Bail a0ee90d9f3 Revert "evas: we should be able to access this data during an object being destroyed."
This reverts commit 207cab086f.

Better make efl_data_scope_safe_get work during EFL_EVENT_DEL.
2017-08-13 13:18:08 -07:00
Cedric Bail 87acc90fc7 eo: only return NULL when the object is destructed.
There is a problem with the previous version. The object can still be
alive due to the use of manual_free in evas. So you wouldn't be able
for example to remove a callback from an object that hasn't been
destroyed yet. If that callback is triggered by the destruction
of the object, you would end up with an unexpected and impossible to
prevent effect of access after free on a callback that you had removed.

Not sure if that still solve the original problem that the code was
trying to prevent in Ecore_Evas.
2017-08-13 13:18:04 -07:00
Marcel Hollerbach 190af04983 ecore_evas: define the predefine for wl2 instead of wayland 2017-08-12 15:30:53 +02:00