platform/upstream/efl.git
7 years agoefl_io_copier: Use the new Eina_Future API.
Guilherme Iscaro [Wed, 30 Aug 2017 20:25:28 +0000 (17:25 -0300)]
efl_io_copier: Use the new Eina_Future API.

7 years agoefl_net: Use the new Eina_Future API.
Guilherme Iscaro [Wed, 30 Aug 2017 20:24:27 +0000 (17:24 -0300)]
efl_net: Use the new Eina_Future API.

7 years agoEfl_Loop: add job, timeout and idle based on Eina_Future.
Gustavo Sverzut Barbieri [Sat, 26 Aug 2017 22:59:39 +0000 (19:59 -0300)]
Efl_Loop: add job, timeout and idle based on Eina_Future.

Since some clash with old version, then add Eina_FutureXXX to their
name, later we'll sed.

7 years agoexport efl_future_then() for Eina_Future syntax sugar.
Gustavo Sverzut Barbieri [Sat, 26 Aug 2017 22:39:23 +0000 (19:39 -0300)]
export efl_future_then() for Eina_Future syntax sugar.

This is actually written as efl_future_Eina_FutureXXX_then() as the
old API clashes, after removing the old code we'll "sed" to fix those.

7 years agoEina_Future: add eina_future_resolved()
Gustavo Sverzut Barbieri [Sat, 26 Aug 2017 22:04:43 +0000 (19:04 -0300)]
Eina_Future: add eina_future_resolved()

This is a helper that creates a promise, then a future and immediately
resolves the promise, this will let the future be dispatched as usual,
from a clean main loop context.

7 years agoEina_Promise/Eina_Future: Add example and tests.
Guilherme Iscaro [Tue, 8 Aug 2017 21:11:23 +0000 (18:11 -0300)]
Eina_Promise/Eina_Future: Add example and tests.

7 years agoEfl_Object: Add integration with Eina_Future.
Guilherme Iscaro [Fri, 25 Aug 2017 22:53:15 +0000 (19:53 -0300)]
Efl_Object: Add integration with Eina_Future.

This commit adds the EO support for the new future infra.
From now on there's no need to efl_future_link()/efl_future_unlink()
object and futures since the new API already handles that internally.

7 years agoEina: Add Eina_Promise/Eina_Future.
Guilherme Iscaro [Tue, 8 Aug 2017 21:10:36 +0000 (18:10 -0300)]
Eina: Add Eina_Promise/Eina_Future.

This commit adds a new promise/future API which aims to replace
efl_future.

7 years agoeina: properly track valgrind use of the mempool.
Cedric Bail [Mon, 4 Sep 2017 10:08:33 +0000 (03:08 -0700)]
eina: properly track valgrind use of the mempool.

T5966

7 years agoevas: proceed glyph iterator to handle next index properly
Youngbok Shin [Mon, 4 Sep 2017 07:18:05 +0000 (10:18 +0300)]
evas: proceed glyph iterator to handle next index properly

Summary:
When harfbuzz is enabled, _content_create_ot() function will be used
for shaping. If evas_common_font_int_cache_glyph_get() failed in some reason,
it never proceed gl_itr until the end.
It can cause weird rendering result. Because, all of gl_itr after the failure
can't have proper x_bear, y_bear and width.
@fix

Test Plan: N/A

Reviewers: raster, cedric, herdsman, jpeg

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

7 years agonaviframe: Fix to finish transition for newly pushed item
Jaehyun Cho [Mon, 4 Sep 2017 05:58:39 +0000 (14:58 +0900)]
naviframe: Fix to finish transition for newly pushed item

If current item was deleted while new item was pushed, then the signals
for the newly pushed item was not sent.

The above issue happened if the transition effect was implemented by
using deferred signals (i.e. "pushed,deferred" and "popped,deferred").

To resolve the above issue, the signals only for the deleted item is not
sent.

7 years agoelm_widget: move the complete regsiter/unregister logic
Marcel Hollerbach [Sat, 2 Sep 2017 17:08:18 +0000 (19:08 +0200)]
elm_widget: move the complete regsiter/unregister logic

We had here a little problem, state focus_state_eval function handled
the unregisteration and consideration of the focus flags and then only
called a helper function (which was a widget function), that then did
the registeration in logical or regular mode.

Elm scroller for example took that function overwrote it and did onyl
permit logical registrations. Then again a evaluation of the focus state
and flags took place, and the function considered elm_scroller should be
registered as regular object, but found it to be logical. This lead to
the problem that we permantently unregistered Elm.Scroller and
registered it again as logical just to unregister it again. This was on
the one side a performance downside. But also a bug since all items from
within the Elm_Scrollers sub manager are getting reparent onto the
parent, which means not the root of the scroller (the scroller itself)
is the logical entrypoint to the widget but rather this reparented
widget, which led to unexpected focus  warps like described in T5923.

tldr: this fixes T5923

7 years agoefl_ui_focus_manager: present a slightly better error message
Marcel Hollerbach [Sat, 2 Sep 2017 17:41:30 +0000 (19:41 +0200)]
efl_ui_focus_manager: present a slightly better error message

with this and the backtrace you can probebly figure out if you just
registered the same widget twice for different types

7 years agoefl_ui_focus_manager_sub: not needed anymore, handled by calc
Marcel Hollerbach [Fri, 1 Sep 2017 16:12:13 +0000 (18:12 +0200)]
efl_ui_focus_manager_sub: not needed anymore, handled by calc

7 years agoelm_widget: eval everything when the parent changes
Marcel Hollerbach [Fri, 1 Sep 2017 15:58:41 +0000 (17:58 +0200)]
elm_widget: eval everything when the parent changes

7 years agoefl_ui_win: specify the correct manager
Marcel Hollerbach [Fri, 1 Sep 2017 15:32:06 +0000 (17:32 +0200)]
efl_ui_win: specify the correct manager

a widget in higher hirachies is not registered in the lower one.

7 years agoefl_ui_focus_manager_calc: do not swallow a focus event
Marcel Hollerbach [Fri, 1 Sep 2017 15:31:06 +0000 (17:31 +0200)]
efl_ui_focus_manager_calc: do not swallow a focus event

if we have been redirecting before, we would have lost that event due to
  the element here beeing at the top of that focus stack

7 years agoefl_ui_focus_manager_sub: make it a mixin
Marcel Hollerbach [Thu, 13 Jul 2017 08:12:50 +0000 (10:12 +0200)]
efl_ui_focus_manager_sub: make it a mixin

This just brings the functionality, the manager that is used as sub can
still be decided and be brought in via inheritance or compositition

7 years agoecore_exe - fix failed finalize fork to reutrn NULL not ecore_exe_free
Carsten Haitzler (Rasterman) [Sat, 2 Sep 2017 13:33:00 +0000 (22:33 +0900)]
ecore_exe - fix failed finalize fork to reutrn NULL not ecore_exe_free

dont delete the obj during finalize... just retyurn NULL to fail.
fork() failed for me so i found this... ask not why fork failed... but
it did... and thus found this error handling case.

@fix

7 years agowayland_shm - clean out ptrs after free - seeing invalid mem/ptr access
Carsten Haitzler (Rasterman) [Sat, 2 Sep 2017 12:47:18 +0000 (21:47 +0900)]
wayland_shm - clean out ptrs after free - seeing invalid mem/ptr access

enlightenment internal windows insta segv e on rpi. after much hunting
it seems a fallback is happening and bunk ptrs are being used. this at
least will make the problems more reliable with null ptrs.

7 years agowayland_shm: Try a little harder to verify exynos dmabuf capabilities
Derek Foreman [Fri, 1 Sep 2017 19:49:22 +0000 (14:49 -0500)]
wayland_shm: Try a little harder to verify exynos dmabuf capabilities

Turns out the "device_open" function pretty much just tests calloc
functionality, and doesn't open any device.  So let's allocate a
tiny bo and discard it to make sure we're actually on exynos.

7 years agoLuncher: Remove the engage feature.
Stephen 'Okra' Houston [Fri, 1 Sep 2017 18:45:09 +0000 (13:45 -0500)]
Luncher: Remove the engage feature.

The engage feature was mainly there as a demo of the capabilities of bryce.  Now that we are nearing release we need to clean up our gadgets.  The engage style for the luncher gadget is not complete, and does not work adequately, and quite honestly better belongs as a feature of bryce itself not luncher.

7 years agoelm_win: Stop hiding the mouse cusor on window out under wayland
Derek Foreman [Fri, 1 Sep 2017 18:28:36 +0000 (13:28 -0500)]
elm_win: Stop hiding the mouse cusor on window out under wayland

We needed to do this to prevent burning cpu with animated cursors
before we did frame callback based animating.

Now the compositor will stop our frame callbacks when our cursor
is implicitly visible when the pointer isn't over our window,
so we don't have to use window hides for it.

7 years agoevas: fix event grabber child stacking
Mike Blumenkrantz [Thu, 31 Aug 2017 20:13:01 +0000 (16:13 -0400)]
evas: fix event grabber child stacking

broken in 0516cdc0f9dc0969ac96df6984af2413680cad01

@fix

7 years agoevas: handle object names with a list hash
Mike Blumenkrantz [Thu, 31 Aug 2017 20:13:01 +0000 (16:13 -0400)]
evas: handle object names with a list hash

a canvas can have multiple objects with the same name. assuming that name:obj
is a 1:1 ratio means that name-finding functions are likely to return invalid
objects

@fix

7 years agoecore_wl2: Don't set up callbacks on initial commit
Derek Foreman [Fri, 1 Sep 2017 17:03:49 +0000 (12:03 -0500)]
ecore_wl2: Don't set up callbacks on initial commit

We don't want to do frame callbacks until after we can actually draw stuff

7 years agoeolian: fix float parsing with locales with ',' decpoint
Daniel Kolesa [Fri, 1 Sep 2017 14:07:45 +0000 (16:07 +0200)]
eolian: fix float parsing with locales with ',' decpoint

7 years agobuild: Drop wayland protocol requirement to 1.9
Derek Foreman [Fri, 1 Sep 2017 13:45:47 +0000 (08:45 -0500)]
build: Drop wayland protocol requirement to 1.9

Some distros are sitting at 1.9 for a long time now, and 1.10
didn't add any critical functionality for us.

7 years agoSoftware gdi: fix build on Windows.
Mykyta Biliavskyi [Fri, 1 Sep 2017 10:50:34 +0000 (13:50 +0300)]
Software gdi: fix build on Windows.

Summary:
Function argument was renamed, but in function body still uses old
variable name.

Test Plan: Build on Windows host

Reviewers: cedric, vtorri

Reviewed By: vtorri

Subscribers: jpeg

Tags: #windows, #efl

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

7 years agoelm: rename elm spinner to Efl.Ui.Spinner
Amitesh Singh [Mon, 28 Aug 2017 08:05:22 +0000 (17:05 +0900)]
elm: rename elm spinner to Efl.Ui.Spinner

Ref T5900

7 years agoefl_config: Fix type of returned value (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 11:31:54 +0000 (20:31 +0900)]
efl_config: Fix type of returned value (EO)

An ugly const char * is returned from strdup, freed later with a custom
function that just calls free(). This was probably intended for
stringshare but now free is used. We have to fix the free function for
the EO API so let's keep free(). I'd rather avoid declaring
elm_config_profile_dir_free in the EO files.

7 years agoelm: Drop unused class inheritance (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 11:18:04 +0000 (20:18 +0900)]
elm: Drop unused class inheritance (EO)

7 years agoelm_test: Scale down icon by 8x
Jean-Philippe Andre [Thu, 31 Aug 2017 10:41:12 +0000 (19:41 +0900)]
elm_test: Scale down icon by 8x

This makes the icon test actually work. Otherwise the icon data is too
big and basically seems ignored by the compositor or X.

Note: In E (X11) it seems that the window icon remains unchanged? xprop
shows the proper data, though. Ping @zmike.

7 years agoeina_array: Fix magic checks to return
Jean-Philippe Andre [Thu, 31 Aug 2017 10:25:26 +0000 (19:25 +0900)]
eina_array: Fix magic checks to return

The EINA_MAGIC check inside eina_array were just printing the error
message, without failing. This could lead to more crashes than
necessary.

@fix

7 years agowin: Fixup doc & code of icon_object
Jean-Philippe Andre [Thu, 31 Aug 2017 09:32:02 +0000 (18:32 +0900)]
win: Fixup doc & code of icon_object

Ref T5322

7 years agowin: Use array for available_profiles (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 08:57:40 +0000 (17:57 +0900)]
win: Use array for available_profiles (EO)

The legacy API wraps the EO API.
All tested with "Configuration" test case in elm_test.

Ref T5322

7 years agowin: Drop calls to lower when using the EO API
Jean-Philippe Andre [Thu, 31 Aug 2017 07:58:02 +0000 (16:58 +0900)]
win: Drop calls to lower when using the EO API

Note: The distinction is made on how the window was created, not on
which API is used (evas_object_lower or efl_gfx_stack_lower or
elm_win_lower).

Ref T5322

7 years agowin: Implement raise from stack (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 07:45:08 +0000 (16:45 +0900)]
win: Implement raise from stack (EO)

I think the intercept is not required anymore. All raise functions call
the ecore evas raise function.

Ref T5322

7 years agofocus: Fix shadow warning
Jean-Philippe Andre [Thu, 31 Aug 2017 07:28:42 +0000 (16:28 +0900)]
focus: Fix shadow warning

7 years agowidget: Forward focus_highlight_style to win
Jean-Philippe Andre [Thu, 31 Aug 2017 07:10:43 +0000 (16:10 +0900)]
widget: Forward focus_highlight_style to win

See the previous commits. All focus_highlight APIs are defined in the
Widget class but only implemented at the Window level. For consistency I
believe this call should also be forwarded to the window. The previous
logic had absolutely no effect at all, except storing a stringshare.

The day focus_highlight becomes widget-specific (i.e. each widget has
its own highlight style) then this can be changed.

Note: This will apply to legacy API as well.

Ref T5363

7 years agowin: Move focus_highlight_animate to widget (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 07:08:10 +0000 (16:08 +0900)]
win: Move focus_highlight_animate to widget (EO)

Similar to the previous commits. Moved for consistency.

Ref T5363
Ref T5322

7 years agowin: Move focus_highlight_enabled to widget (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 06:57:53 +0000 (15:57 +0900)]
win: Move focus_highlight_enabled to widget (EO)

This was actually declared in the internal legacy API in widget.
Forwards the calls to the window.

Ref T

7 years agowin: Merge focus_highlight_style with widget (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 06:42:52 +0000 (15:42 +0900)]
win: Merge focus_highlight_style with widget (EO)

Note: elm_test "Focus Style" can be used to test this API. The test case
is a bit broken (overly complex EDC?) but if you're patient you can see
the difference between "glow" and "glow_effect".

Ref T5363
Ref T5322

7 years agowidget: Rename on_focus to on_focus_update (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 06:20:33 +0000 (15:20 +0900)]
widget: Rename on_focus to on_focus_update (EO)

on_focus seems to imply that focus was just given to the widget, but
that function is called on any focus change (in and out).

Ref T5363

7 years agowin: Merge focus with elm_widget's (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 06:15:58 +0000 (15:15 +0900)]
win: Merge focus with elm_widget's (EO)

I believe this should work fine!

Ref T5363
Ref T5322

7 years agogfx_size_hint: Fix int vs. double (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 07:22:54 +0000 (16:22 +0900)]
gfx_size_hint: Fix int vs. double (EO)

Thanks Sanghyeon for letting me know!

7 years agoecore_wl2: Fix session recovery
Derek Foreman [Thu, 31 Aug 2017 16:11:59 +0000 (11:11 -0500)]
ecore_wl2: Fix session recovery

I broke this in commit 1bb45f6e6194fa046d3d1409e1aacecc14dc4b4f

We intentionally *don't* flush in window_semi_free, as this could be
when there's no compositor left to flush to (in the case of session
recovery).

7 years agodocs: elm/evas: document some missing return values
Stefan Schmidt [Thu, 31 Aug 2017 15:37:52 +0000 (17:37 +0200)]
docs: elm/evas: document some missing return values

With this patch we finally reached 100% doc coverage in EO files again.
It would be nice to keep it like this.

7 years agodocs: efl_canvas_object: document last missing part
Stefan Schmidt [Thu, 31 Aug 2017 15:37:22 +0000 (17:37 +0200)]
docs: efl_canvas_object: document last missing part

7 years agodocs: efl_ui_panes: document last missing part
Stefan Schmidt [Thu, 31 Aug 2017 15:35:48 +0000 (17:35 +0200)]
docs: efl_ui_panes: document last missing part

7 years agodocs: elm_widget: document function pointer for on show region
Stefan Schmidt [Thu, 31 Aug 2017 15:35:04 +0000 (17:35 +0200)]
docs: elm_widget: document function pointer for on show region

7 years agodocs: efl_ui_focus_manager: fill in missing docs
Stefan Schmidt [Thu, 31 Aug 2017 15:34:23 +0000 (17:34 +0200)]
docs: efl_ui_focus_manager: fill in missing docs

7 years agodocs: efl_text_annotate: fill in missing documentation
Stefan Schmidt [Thu, 31 Aug 2017 15:33:01 +0000 (17:33 +0200)]
docs: efl_text_annotate: fill in missing documentation

7 years agodocs: efl_inout_device: fill in missing docs
Stefan Schmidt [Thu, 31 Aug 2017 15:32:21 +0000 (17:32 +0200)]
docs: efl_inout_device: fill in missing docs

7 years agodocs: even give the external types some documentation
Stefan Schmidt [Thu, 31 Aug 2017 15:29:31 +0000 (17:29 +0200)]
docs: even give the external types some documentation

7 years agodocs: efl_text_cursor: add missing documentation for many parts
Stefan Schmidt [Thu, 31 Aug 2017 14:15:32 +0000 (16:15 +0200)]
docs: efl_text_cursor: add missing documentation for many parts

7 years agodocs: efl_text_font: fill in missing parts of documentation
Stefan Schmidt [Thu, 31 Aug 2017 13:26:17 +0000 (15:26 +0200)]
docs: efl_text_font: fill in missing parts of documentation

7 years agodocs: efl_text_format: fill missing parts documentation
Stefan Schmidt [Thu, 31 Aug 2017 13:16:17 +0000 (15:16 +0200)]
docs: efl_text_format: fill missing parts documentation

7 years agodocs: efl_text_style: fill in missing documentation parts
Stefan Schmidt [Thu, 31 Aug 2017 13:03:47 +0000 (15:03 +0200)]
docs: efl_text_style: fill in missing documentation parts

7 years agodocs: efl_text_style: document color components in styles
Stefan Schmidt [Thu, 31 Aug 2017 12:42:26 +0000 (14:42 +0200)]
docs: efl_text_style: document color components in styles

RGBA should be pretty clear for most cases but it does not cost us much
to document these values as well and make the documentation maybe easier
to understand for some people.

7 years agodocs: efl_ui_textpath: add documentation for all other missing parts
Stefan Schmidt [Thu, 31 Aug 2017 09:58:52 +0000 (11:58 +0200)]
docs: efl_ui_textpath: add documentation for all other missing parts

When bringing in new EO files I would appreciate if people would
document all parts. Even if they seem small and self explaining.

7 years agodocs: efl_ui_textpath: document newly added textpath direction enum
Stefan Schmidt [Thu, 31 Aug 2017 09:47:03 +0000 (11:47 +0200)]
docs: efl_ui_textpath: document newly added textpath direction enum

7 years agodocs: efl_ui_manager: document newly added struct
Stefan Schmidt [Thu, 31 Aug 2017 09:42:02 +0000 (11:42 +0200)]
docs: efl_ui_manager: document newly added struct

This was added recently and thus has a since 1.21 tag

7 years agodocs: evas_canvas_text: document missing events
Stefan Schmidt [Thu, 31 Aug 2017 09:25:13 +0000 (11:25 +0200)]
docs: evas_canvas_text: document missing events

7 years agoelm focus manager - dont leak child lists when updating focus order
Carsten Haitzler (Rasterman) [Thu, 31 Aug 2017 08:34:30 +0000 (17:34 +0900)]
elm focus manager - dont leak child lists when updating focus order

REALLY fix T5800 by duplicating lists rather than taking ownership

@fix

7 years agofocus manager - fix spelling of variable
Carsten Haitzler (Rasterman) [Thu, 31 Aug 2017 07:45:49 +0000 (16:45 +0900)]
focus manager - fix spelling of variable

saved_order not safed_order

7 years agoelm - focus manager - revert free list
Carsten Haitzler (Rasterman) [Thu, 31 Aug 2017 07:42:19 +0000 (16:42 +0900)]
elm - focus manager - revert free list

revert 65d2dfc8925a183bf7f2709677d87edcd759e9c3

no no. this fixes the leak ... but it adds new segv bugs. revrt it.

7 years agonaviframe: Fix to load default style if the given style does not exist
Jaehyun Cho [Thu, 31 Aug 2017 07:21:08 +0000 (16:21 +0900)]
naviframe: Fix to load default style if the given style does not exist

Naviframe item theme name is combined with item style name and widget
style name.
Therefore, if the item theme name is not found, then "item/basic" item
style name should be loaded as a default item style name.

7 years agoelm focus manager - dont leak child lists when updating focus order
Carsten Haitzler (Rasterman) [Thu, 31 Aug 2017 07:12:57 +0000 (16:12 +0900)]
elm focus manager - dont leak child lists when updating focus order

this should fix T5800

@fix

7 years agoefl_ui_clock: Add 'O' character to ignore POSIX alternative format in format.
Woochan Lee [Thu, 31 Aug 2017 05:16:26 +0000 (14:16 +0900)]
efl_ui_clock: Add 'O' character to ignore POSIX alternative format in format.

Summary:
_parse_format() function filtering "_/-/0/^/*" to filter POSIX alternatvie/extension formats,
But the Datetime do not appear in some locale(fa_IR, lzh_TW, my_MM, or_IN) with 'O'.

+ improve code. (not compare with all of the characters. instead of that using strchr)

https://lh.2xlibre.net/values/d_t_fmt/

@fix

Test Plan: Set locale as fa_IR and create DateTime. and see fields, not appears.

Reviewers: jpeg, cedric

Subscribers: cedric, jpeg

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

7 years agombe: Fix infinite recursion on focus change
Jean-Philippe Andre [Thu, 31 Aug 2017 05:14:50 +0000 (14:14 +0900)]
mbe: Fix infinite recursion on focus change

Ref D4882

7 years agomultibuttonentry: Separate selected item and focused item logic.
Woochan Lee [Thu, 31 Aug 2017 05:01:04 +0000 (14:01 +0900)]
multibuttonentry: Separate selected item and focused item logic.

Summary:
When user set a selected item on MBE creation time.
The internal logic will be broke.
So we need to separate logic them.

@fix

Test Plan:
Calling elm_multibuttonentry_item_selected_set() before MBE got a focus. in elementary_test.

Reviewers: cedric, jpeg, woohyun

Subscribers: bu5hm4n, marcelhollerbach, cedric, jpeg

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

7 years agowidget: Fix legacy for focus_mouse_up_handle (EO)
Jean-Philippe Andre [Thu, 31 Aug 2017 02:27:49 +0000 (11:27 +0900)]
widget: Fix legacy for focus_mouse_up_handle (EO)

This removes the special code in the legacy API for
elm_widget_focus_mouse_up_handle. Add an internal helper to find the
first widget parent. And mark as protected.
Apparently this functions is still required for the new focus manager.

Ref T5363

7 years agowidget: Mark old focus API as beta.
Jean-Philippe Andre [Wed, 30 Aug 2017 07:40:22 +0000 (16:40 +0900)]
widget: Mark old focus API as beta.

It's not beta. It's about to die.
Also, move #define ELM_WIDGET_BETA to the common header file, as it is
consequently required by ALL widgets. :(

Ping @bu5hm4n :)

Ref T5363

7 years agoLuncher Theme: Set no border for alpha. This needs to be backported.
Stephen 'Okra' Houston [Thu, 31 Aug 2017 01:14:20 +0000 (20:14 -0500)]
Luncher Theme: Set no border for alpha. This needs to be backported.

7 years agoefl_ui_focus_manager_calc: only focus none NULL candidates
Marcel Hollerbach [Wed, 30 Aug 2017 20:38:51 +0000 (22:38 +0200)]
efl_ui_focus_manager_calc: only focus none NULL candidates

7 years agoefl_ui_focus_manager: make logical_end work better
Marcel Hollerbach [Wed, 30 Aug 2017 20:33:04 +0000 (22:33 +0200)]
efl_ui_focus_manager: make logical_end work better

it turns out that we should also repsect logical elements that are
having a redirect_manager, since they are more at the "end" then a
potential regular node.

The user now needs to handle the logical_end call on this manager, or
handle at all what he wants to do with this information.

efl_ui_win now handles it in the way that it just focuses that logical
node, (which results in the redirect manager beeing set, then calling
again logical_end on that manager. Repeating this until we have finally
found a regular node that does fit out needs.

7 years agoecore_wl2: Kill the wl idle enterer
Derek Foreman [Wed, 30 Aug 2017 19:53:46 +0000 (14:53 -0500)]
ecore_wl2: Kill the wl idle enterer

We do flushes when we need them now, so we don't need this somewhat
non deterministic flush mechanism anymore.

Anything that breaks as a result of this should be fixable by adding an
ecore_wl2_display_flush() somewhere appropriate.

7 years agoecore_wl2: Use ecore_wl2_window_commit for all wl_surface_commits
Derek Foreman [Wed, 30 Aug 2017 19:52:29 +0000 (14:52 -0500)]
ecore_wl2: Use ecore_wl2_window_commit for all wl_surface_commits

This adds an explicit flush to every surface commit.

7 years agoecore-wl2: Formatting
Chris Michael [Wed, 30 Aug 2017 14:22:33 +0000 (10:22 -0400)]
ecore-wl2: Formatting

NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agowayland: Force a display flush when committing surfaces
Derek Foreman [Wed, 30 Aug 2017 17:29:48 +0000 (12:29 -0500)]
wayland: Force a display flush when committing surfaces

We had a hack in place to flush the display from an idle enterer instead
of after a surface commit.  This led to a problem where the idle
enterer dispatch order was:

renderer for main canvas
wayland dispatch idle enterer
renderer for mouse cursor canvas

The surface commit for the mouse cursor was never dispatched, so the mouse
cursor animation would only update at the rate other events occurred.

By flushing at the appropriate times instead we ensure a proper update.

ref T5850

7 years agoecore_wl2: Add ecore_wl2_display_flush() api
Derek Foreman [Wed, 30 Aug 2017 17:24:16 +0000 (12:24 -0500)]
ecore_wl2: Add ecore_wl2_display_flush() api

Allowing engines to explicitly flush at the right times will remove some
awkwardness and bugs from our current display flush paradigm

7 years agowayland: Store Ecore_Wl2_Display instead of wl_display in engines
Derek Foreman [Wed, 30 Aug 2017 17:22:49 +0000 (12:22 -0500)]
wayland: Store Ecore_Wl2_Display instead of wl_display in engines

We'll need to call ecore_wl2 functions on it soon, and anything that
really needs the wl_display can query it.

7 years agowalyand_shm: Remove unused variable
Derek Foreman [Wed, 30 Aug 2017 17:17:13 +0000 (12:17 -0500)]
walyand_shm: Remove unused variable

Nothing in here actually cares about the wl_display anymore.

7 years agoecore_wl2: Fix small bug in flush handler
Derek Foreman [Wed, 30 Aug 2017 17:16:34 +0000 (12:16 -0500)]
ecore_wl2: Fix small bug in flush handler

If wl_display_flush() returns a non negative number it was successful,
so we should disable the write handler then.  We were theoretically always
doing an extra flush on an empty buffer.

This is mostly cosmetic as that's not a costly operation.

7 years agoecore_drm2: Fix warning with a dirty hack
Derek Foreman [Wed, 30 Aug 2017 17:10:33 +0000 (12:10 -0500)]
ecore_drm2: Fix warning with a dirty hack

So because we include wayland-server.h we're told that wl_buffer is
deprecated - however clients are still expected to use it, it's only
deprecated for usage in a compositor.

Making these into void pointers shuts up the warning.

We need to include wayland-server.h since some of the code provided by
ecore_wl2 is for compositors, but some of it is also for clients...

7 years agoevas font: do floating point division for calculating more accurately
Youngbok Shin [Wed, 30 Aug 2017 18:40:26 +0000 (11:40 -0700)]
evas font: do floating point division for calculating more accurately

Summary:
Assigning a result of integral division to a double type variable is
not useful for next division calculation. For more accurate calculation,
it needs to be casted to double before doing division.
It does not fix some bugs. It was reported by a code quality advisor.

Test Plan: N/A

Reviewers: raster, cedric, jpeg, herdsman, eunue

Reviewed By: cedric

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
7 years agoelua: load regular file if bytecode cache fails
Daniel Kolesa [Wed, 30 Aug 2017 18:19:24 +0000 (20:19 +0200)]
elua: load regular file if bytecode cache fails

If bytecode is requested and fails to load, load original file
instead. Force re-write of bytecode if that succeeds.

This is useful if there is bytecode newer than the source file that
the current Lua version can't load, for example when migrating from
LuaJIT 2.0 to 2.1, which changed bytecode format.

Fixes confusing cases such as in T2728.

7 years agoelua: update eolian bindings and make docgen work again
Daniel Kolesa [Wed, 30 Aug 2017 17:38:53 +0000 (19:38 +0200)]
elua: update eolian bindings and make docgen work again

7 years agoeolian: remove c_only
Daniel Kolesa [Wed, 30 Aug 2017 17:31:23 +0000 (19:31 +0200)]
eolian: remove c_only

Unused and of questionable value.

7 years agoevas: we always do use the common backend, so always init.
Cedric Bail [Wed, 30 Aug 2017 17:01:17 +0000 (10:01 -0700)]
evas: we always do use the common backend, so always init.

7 years agoefl_ui_focus_manager: reset focus stack once we are changing redirect
Marcel Hollerbach [Wed, 30 Aug 2017 15:55:51 +0000 (17:55 +0200)]
efl_ui_focus_manager: reset focus stack once we are changing redirect

ref T5923

7 years agoeolian: @extern for function pointers
Daniel Kolesa [Wed, 30 Aug 2017 14:02:30 +0000 (16:02 +0200)]
eolian: @extern for function pointers

7 years agoeolian: clean up and fix function pointer generation
Daniel Kolesa [Wed, 30 Aug 2017 13:45:20 +0000 (15:45 +0200)]
eolian: clean up and fix function pointer generation

Out/inout params are now correctly handled.

7 years agoefl interfaces: fix incorrect enum val
Daniel Kolesa [Wed, 30 Aug 2017 13:34:31 +0000 (15:34 +0200)]
efl interfaces: fix incorrect enum val

7 years agoeolian gen: clean up param gen
Daniel Kolesa [Wed, 30 Aug 2017 13:12:01 +0000 (15:12 +0200)]
eolian gen: clean up param gen

7 years agoeolian: remove unused variable
Daniel Kolesa [Wed, 30 Aug 2017 11:53:22 +0000 (13:53 +0200)]
eolian: remove unused variable

7 years agoecore-wl2: Formatting
Chris Michael [Wed, 30 Aug 2017 13:04:05 +0000 (09:04 -0400)]
ecore-wl2: Formatting

NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agowidget: Simplify & document "translate"
Jean-Philippe Andre [Wed, 30 Aug 2017 09:47:21 +0000 (18:47 +0900)]
widget: Simplify & document "translate"

This is a protected function. It doesn't need to return anything, as all
implementation just returned true, always. Also, the legacy API was just
a wrapper doing nothing special (except verify that we have a widget,
which the recursive code already does).

Tested with fr_FR :)

Ref T5363

7 years agowidget: Remove part_text from EO
Jean-Philippe Andre [Wed, 30 Aug 2017 09:14:29 +0000 (18:14 +0900)]
widget: Remove part_text from EO

It should be implemented as a efl_part() API.

For now I've only done a quick hack, as the only overrides were:

 - notify: already a Part implementation. Also it turns out the default
   theme does not even have any text part in the notify group.

 - combobox: not a Part implementation, but also very badly defined wrt.
   parts in general. efl_part() is handled by the parent class (button)
   which makes it tricky to override just for one function.

With this patch I'm trying to keep the same behaviour as earlier (where
efl_part() is used for layouts and there is a special path for
combobox).

Ref T5363