platform/upstream/efl.git
7 years agoevas: simplify drm output cleanup code.
Cedric BAIL [Fri, 25 Aug 2017 17:49:46 +0000 (10:49 -0700)]
evas: simplify drm output cleanup code.

7 years agoevas: refactor ddraw engine to have less useless indirection function call.
Cedric BAIL [Fri, 25 Aug 2017 17:49:42 +0000 (10:49 -0700)]
evas: refactor ddraw engine to have less useless indirection function call.

7 years agoevas: refactor gdi to have less useless function redirection.
Cedric BAIL [Fri, 25 Aug 2017 17:49:37 +0000 (10:49 -0700)]
evas: refactor gdi to have less useless function redirection.

7 years agoevas: refactor drm engine to have useless function redirection.
Cedric BAIL [Fri, 25 Aug 2017 17:49:32 +0000 (10:49 -0700)]
evas: refactor drm engine to have useless function redirection.

7 years agoevas: refactor wayland_shm backend to have less useless function redirection.
Cedric BAIL [Fri, 25 Aug 2017 17:49:28 +0000 (10:49 -0700)]
evas: refactor wayland_shm backend to have less useless function redirection.

7 years agoevas: refactor fb engine to have less useless function redirection.
Cedric BAIL [Fri, 25 Aug 2017 17:49:23 +0000 (10:49 -0700)]
evas: refactor fb engine to have less useless function redirection.

7 years agoevas: refactor buffer engine to have less indirect useless call.
Cedric BAIL [Fri, 25 Aug 2017 17:49:19 +0000 (10:49 -0700)]
evas: refactor buffer engine to have less indirect useless call.

7 years agoevas: Render_Engine_Swap_Mode is actually about output swap.
Cedric BAIL [Fri, 25 Aug 2017 17:49:15 +0000 (10:49 -0700)]
evas: Render_Engine_Swap_Mode is actually about output swap.

7 years agoevas: Render_Engine_Merge_Mode is actually about output.
Cedric BAIL [Fri, 25 Aug 2017 17:49:11 +0000 (10:49 -0700)]
evas: Render_Engine_Merge_Mode is actually about output.

7 years agoevas: reduce duplication of merge_mode getenv logic.
Cedric BAIL [Fri, 25 Aug 2017 17:49:06 +0000 (10:49 -0700)]
evas: reduce duplication of merge_mode getenv logic.

7 years agoefl: remove PS3 backend.
Cedric BAIL [Fri, 25 Aug 2017 17:48:42 +0000 (10:48 -0700)]
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.

7 years agoevas: follow all other engines convention and use ORD macro.
Cedric BAIL [Fri, 25 Aug 2017 17:48:37 +0000 (10:48 -0700)]
evas: follow all other engines convention and use ORD macro.

7 years agoevas: make the info size a parameter of the function to make it safer to roll in.
Cedric BAIL [Fri, 25 Aug 2017 17:48:20 +0000 (10:48 -0700)]
evas: make the info size a parameter of the function to make it safer to roll in.

7 years agoevas: refactor the creation of the output info logic in libevas.
Cedric BAIL [Fri, 25 Aug 2017 17:48:17 +0000 (10:48 -0700)]
evas: refactor the creation of the output info logic in libevas.

7 years agoevas: factorize call to info and info_free.
Cedric BAIL [Fri, 25 Aug 2017 17:48:13 +0000 (10:48 -0700)]
evas: factorize call to info and info_free.

7 years agoevas: all this function (info, setup and update) are really output related.
Cedric BAIL [Fri, 25 Aug 2017 17:48:09 +0000 (10:48 -0700)]
evas: all this function (info, setup and update) are really output related.

7 years agoevas: nobody actually call the tile size set API.
Cedric BAIL [Fri, 25 Aug 2017 17:48:05 +0000 (10:48 -0700)]
evas: nobody actually call the tile size set API.

7 years agoevas: Render_Engine_GL_Generic is actually an output.
Cedric BAIL [Fri, 25 Aug 2017 17:48:00 +0000 (10:48 -0700)]
evas: Render_Engine_GL_Generic is actually an output.

7 years agoevas: do not loose tile size when resizing output.
Cedric BAIL [Fri, 25 Aug 2017 17:47:56 +0000 (10:47 -0700)]
evas: do not loose tile size when resizing output.

7 years agoevas: prevent double tilebuf creation/destruction during window resize.
Cedric BAIL [Fri, 25 Aug 2017 17:47:52 +0000 (10:47 -0700)]
evas: prevent double tilebuf creation/destruction during window resize.

7 years agoevas: all GL backend require strict tilebuf, let's make that the default.
Cedric BAIL [Fri, 25 Aug 2017 17:47:48 +0000 (10:47 -0700)]
evas: all GL backend require strict tilebuf, let's make that the default.

7 years agoevas: no need to double init tilebuf as it is created by software generic.
Cedric BAIL [Fri, 25 Aug 2017 17:47:39 +0000 (10:47 -0700)]
evas: no need to double init tilebuf as it is created by software generic.

7 years agoevas: Render_Engine_Software_Generic is actually Render_Output_Software_Generic.
Cedric BAIL [Fri, 25 Aug 2017 17:47:11 +0000 (10:47 -0700)]
evas: Render_Engine_Software_Generic is actually Render_Output_Software_Generic.

7 years agoevas: engine should not access Evas canvas directly.
Cedric BAIL [Fri, 25 Aug 2017 17:47:03 +0000 (10:47 -0700)]
evas: engine should not access Evas canvas directly.

7 years agoscroller: fix getting content position.
Hosang Kim [Fri, 25 Aug 2017 05:53:09 +0000 (14:53 +0900)]
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

7 years agoCanvas text: fix uninitialized value
Daniel Hirt [Thu, 24 Aug 2017 16:26:36 +0000 (19:26 +0300)]
Canvas text: fix uninitialized value

Bug was introduced in f696cc88933bfa1ac6e5d6da26bc9ba7b2c3e2fa.

7 years agoecore-drm2: Add API to allow setting pointer acceleration profile
Chris Michael [Thu, 24 Aug 2017 15:42:57 +0000 (11:42 -0400)]
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>
7 years agoecore-drm2: Add API function to allow setting pointer acceleration speed
Chris Michael [Thu, 24 Aug 2017 15:32:51 +0000 (11:32 -0400)]
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>
7 years agoelput: Add API to set pointer acceleration speed
Chris Michael [Thu, 24 Aug 2017 15:24:54 +0000 (11:24 -0400)]
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>
7 years agoeina_value: add helper: eina_value_struct_desc_get().
Gustavo Sverzut Barbieri [Thu, 24 Aug 2017 14:13:56 +0000 (11:13 -0300)]
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.

7 years agoCPUMonitor theme: Don't set aspect in theme.
Stephen 'Okra' Houston [Thu, 24 Aug 2017 13:05:44 +0000 (08:05 -0500)]
CPUMonitor theme: Don't set aspect in theme.

7 years agoCanvas text: prevent change of context width field
Daniel Hirt [Wed, 23 Aug 2017 18:43:51 +0000 (21:43 +0300)]
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.

7 years agoCanvas text: reduce usage of data_scope_get()
Daniel Hirt [Fri, 18 Aug 2017 11:50:36 +0000 (14:50 +0300)]
Canvas text: reduce usage of data_scope_get()

During layout, this data is unchanged and there is no need to keep
asking for it.

7 years agoCanvas text: move obstacles logic to proper place
Daniel Hirt [Mon, 21 Aug 2017 09:43:19 +0000 (12:43 +0300)]
Canvas text: move obstacles logic to proper place

Will likely reduce number of update requests.

7 years agodocs: Add information about texture size limitations
Myoungwoon Roy, Kim [Thu, 24 Aug 2017 04:57:05 +0000 (13:57 +0900)]
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

7 years agoelm_widget: remove redundant null check
WooHyun Jung [Thu, 24 Aug 2017 04:29:39 +0000 (13:29 +0900)]
elm_widget: remove redundant null check

7 years agoCpumonitor Theme: Add a theme for the base and the core. This fixes aspect.
Stephen 'Okra' Houston [Thu, 24 Aug 2017 00:01:52 +0000 (19:01 -0500)]
Cpumonitor Theme: Add a theme for the base and the core. This fixes aspect.

7 years agoLuncher Theme: Use a proxy for the overlay effect.
Stephen 'Okra' Houston [Wed, 23 Aug 2017 22:06:10 +0000 (17:06 -0500)]
Luncher Theme: Use a proxy for the overlay effect.

7 years agoeina_value_util: eina_value_X_get() helpers.
Gustavo Sverzut Barbieri [Wed, 23 Aug 2017 21:28:06 +0000 (18:28 -0300)]
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.

7 years agoeina_value_util: init helpers (stack/return).
Gustavo Sverzut Barbieri [Wed, 23 Aug 2017 21:08:14 +0000 (18:08 -0300)]
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.

7 years agoeina_value_util: add missing eina_value_*_new() for basic types.
Gustavo Sverzut Barbieri [Wed, 23 Aug 2017 20:29:31 +0000 (17:29 -0300)]
eina_value_util: add missing eina_value_*_new() for basic types.

make all basic types available as _new() helpers.

7 years agoeina_value_util: remove "_util" from names.
Gustavo Sverzut Barbieri [Wed, 23 Aug 2017 20:18:03 +0000 (17:18 -0300)]
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.

7 years agoEina_Value type EINA_value.
Guilherme Iscaro [Thu, 17 Aug 2017 17:36:47 +0000 (14:36 -0300)]
Eina_Value type EINA_value.

7 years agoEina: Add EINA_VALUE_TYPE_ERROR
Guilherme Iscaro [Tue, 8 Aug 2017 19:57:31 +0000 (16:57 -0300)]
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.

7 years agoadd EINA_VALUE_EMPTY, allow flushing empty values.
Gustavo Sverzut Barbieri [Wed, 23 Aug 2017 20:24:52 +0000 (17:24 -0300)]
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.

7 years agoGadget themes: Remove shines.
Stephen 'Okra' Houston [Wed, 23 Aug 2017 20:26:55 +0000 (15:26 -0500)]
Gadget themes: Remove shines.

7 years agowidget: Make sub_object add/del protected (EO)
Jean-Philippe Andre [Wed, 23 Aug 2017 11:41:37 +0000 (20:41 +0900)]
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

7 years agoeo: Mark name_find as const
Jean-Philippe Andre [Wed, 23 Aug 2017 11:33:54 +0000 (20:33 +0900)]
eo: Mark name_find as const

The search should not require a mutable object.
See the previous commit on elm_widget.

7 years agowidget: Remove name_find from EO
Jean-Philippe Andre [Wed, 23 Aug 2017 11:32:58 +0000 (20:32 +0900)]
widget: Remove name_find from EO

This is already implemented at the Efl.Object level, under the same
name: "name_find".

Ref T5363

7 years agowidget: Remove highlight_ignore from EO
Jean-Philippe Andre [Wed, 23 Aug 2017 11:12:47 +0000 (20:12 +0900)]
widget: Remove highlight_ignore from EO

7 years agowidget: Reshuffle EO file for clarity
Jean-Philippe Andre [Wed, 23 Aug 2017 11:11:49 +0000 (20:11 +0900)]
widget: Reshuffle EO file for clarity

Also marks theme.set/get as beta.

Ref T5363

7 years agowidget: Remove more functions from EO
Jean-Philippe Andre [Wed, 23 Aug 2017 10:51:49 +0000 (19:51 +0900)]
widget: Remove more functions from EO

Internaaaaaaaalsssss....

Ref T5363

7 years agowidget: Remove some more functions from EO
Jean-Philippe Andre [Wed, 23 Aug 2017 10:39:19 +0000 (19:39 +0900)]
widget: Remove some more functions from EO

Internals...

Ref T5363

7 years agowidget: Remove highlight_in_theme from EO
Jean-Philippe Andre [Wed, 23 Aug 2017 10:25:44 +0000 (19:25 +0900)]
widget: Remove highlight_in_theme from EO

Removes EO APIs:
 - highlight_in_theme
 - access_highlight_in_theme

Ref T5363

7 years agowidget: Remove 2 focus APIs from EO
Jean-Philippe Andre [Wed, 23 Aug 2017 09:02:42 +0000 (18:02 +0900)]
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

7 years agowidget: Remove hover_object from EO
Jean-Philippe Andre [Wed, 23 Aug 2017 08:54:49 +0000 (17:54 +0900)]
widget: Remove hover_object from EO

Internal

Ref T5363

7 years agowidget: Remove tree_unfocusable from EO
Jean-Philippe Andre [Wed, 23 Aug 2017 08:27:04 +0000 (17:27 +0900)]
widget: Remove tree_unfocusable from EO

It was deprecated (in elm_object API) a very long time ago.

Ref T5363

7 years agowidget: Remove focus_tree_unfocusable_handle (EO)
Jean-Philippe Andre [Wed, 23 Aug 2017 08:01:03 +0000 (17:01 +0900)]
widget: Remove focus_tree_unfocusable_handle (EO)

Ref T5363

7 years agowidget: Rename top to widget_top (EO)
Jean-Philippe Andre [Wed, 23 Aug 2017 07:24:05 +0000 (16:24 +0900)]
widget: Rename top to widget_top (EO)

Ref T5363

7 years agowidget: Remove tooltip_add/del from EO
Jean-Philippe Andre [Wed, 23 Aug 2017 07:04:49 +0000 (16:04 +0900)]
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

7 years agoelm init - fix init seq and quicklaunch as we shut down x before evas
Carsten Haitzler (Rasterman) [Wed, 23 Aug 2017 08:23:57 +0000 (17:23 +0900)]
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

7 years agoelm_test: Remove calls to fill+expand (EO)
Jean-Philippe Andre [Wed, 23 Aug 2017 06:54:03 +0000 (15:54 +0900)]
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 1a1b8bc45155dcb96129013c4177d742a06434e6
And e8b7f5f255ce37fbc47dbe38bd379bf1e824e0d2

Ref T5301

7 years agoevas: Set default align to FILL for EO objects
Jean-Philippe Andre [Wed, 23 Aug 2017 06:23:50 +0000 (15:23 +0900)]
evas: Set default align to FILL for EO objects

See also 1a1b8bc45155dcb96129013c4177d742a06434e6

7 years agogfx: Remove size hint request (EO)
Jean-Philippe Andre [Wed, 23 Aug 2017 06:16:22 +0000 (15:16 +0900)]
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

7 years agojs: Fix javascript generator's compilation
Jean-Philippe Andre [Wed, 23 Aug 2017 04:51:40 +0000 (13:51 +0900)]
js: Fix javascript generator's compilation

javascript bindings are broken, because of function pointers but it
seems something else as well (Eina_Slice?).

7 years agoecore: Fix shadow warning (with nodejs enabled)
Jean-Philippe Andre [Wed, 23 Aug 2017 04:45:24 +0000 (13:45 +0900)]
ecore: Fix shadow warning (with nodejs enabled)

7 years agojs: Fix some js examples usage of orient API
Jean-Philippe Andre [Wed, 23 Aug 2017 04:39:10 +0000 (13:39 +0900)]
js: Fix some js examples usage of orient API

This was not tested. How to test js?

7 years agoefl: Remove Efl.Orientation horiz & vert (EO)
Jean-Philippe Andre [Wed, 23 Aug 2017 04:30:45 +0000 (13:30 +0900)]
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

7 years agotest: Fix EO API usage (direction)
Jean-Philippe Andre [Wed, 23 Aug 2017 04:30:33 +0000 (13:30 +0900)]
test: Fix EO API usage (direction)

7 years agotest_check: fix build warning
JinYong Park [Wed, 23 Aug 2017 04:52:24 +0000 (13:52 +0900)]
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

7 years agolayout: call size calculating after text_set(NULL)
JinYong Park [Wed, 23 Aug 2017 04:29:14 +0000 (13:29 +0900)]
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

7 years agowidget: Use EO function pointer for on_show_region
Jean-Philippe Andre [Tue, 22 Aug 2017 06:16:54 +0000 (15:16 +0900)]
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.

7 years agowidget: Remove unused legacy function name
Jean-Philippe Andre [Thu, 17 Aug 2017 16:06:16 +0000 (01:06 +0900)]
widget: Remove unused legacy function name

Ref T5363

7 years agowin: Remove types socket and fake from EO
Jean-Philippe Andre [Thu, 17 Aug 2017 15:29:02 +0000 (00:29 +0900)]
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

7 years agowin: Add Efl.Ui.Win_Inlined and remove parent2
Jean-Philippe Andre [Thu, 17 Aug 2017 14:48:06 +0000 (23:48 +0900)]
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

7 years agowidget: Remove parents_bounce from EO
Jean-Philippe Andre [Thu, 17 Aug 2017 14:26:34 +0000 (23:26 +0900)]
widget: Remove parents_bounce from EO

It's specific to scroller and can be implemented there. Moved.

Ref T5363

7 years agowidget: Remove inexisting property parent_widget
Jean-Philippe Andre [Thu, 17 Aug 2017 14:21:01 +0000 (23:21 +0900)]
widget: Remove inexisting property parent_widget

We also have widget_parent.

Ref T5363

7 years agowidget: Clean up doc for focus & focus_allow
Jean-Philippe Andre [Thu, 17 Aug 2017 13:45:08 +0000 (22:45 +0900)]
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

7 years agowidget: Clean up orientation_mode_disabled
Jean-Philippe Andre [Thu, 17 Aug 2017 13:17:53 +0000 (22:17 +0900)]
widget: Clean up orientation_mode_disabled

Only doc.

Ref T5363

7 years agoconfig: Update default key bindings (class names)
Jean-Philippe Andre [Thu, 17 Aug 2017 08:39:55 +0000 (17:39 +0900)]
config: Update default key bindings (class names)

See also the previous commit.

7 years agoconfig: Automatically fix some key bindings
Jean-Philippe Andre [Thu, 17 Aug 2017 08:31:14 +0000 (17:31 +0900)]
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.

7 years agoelm: Rename some EO widget class names
Jean-Philippe Andre [Thu, 17 Aug 2017 10:36:17 +0000 (19:36 +0900)]
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

7 years agowidget: Remove all legacy event stuff in propagate
Jean-Philippe Andre [Thu, 17 Aug 2017 09:14:52 +0000 (18:14 +0900)]
widget: Remove all legacy event stuff in propagate

The EO API is now clean! Yay!

Ref T5363

7 years agoelm: Process all input events with EO
Jean-Philippe Andre [Thu, 17 Aug 2017 09:05:23 +0000 (18:05 +0900)]
elm: Process all input events with EO

This removes all uses of type & event_info in the method widget_event.

Ref T5363

7 years agophotocam: Fix key zoom in/out
Jean-Philippe Andre [Thu, 17 Aug 2017 08:50:57 +0000 (17:50 +0900)]
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

7 years agoelm: Use a macro to handle key bindings
Jean-Philippe Andre [Thu, 17 Aug 2017 06:08:00 +0000 (15:08 +0900)]
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.

7 years agowidget: Add eo event info inside widget_event
Jean-Philippe Andre [Thu, 10 Aug 2017 06:41:25 +0000 (15:41 +0900)]
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

7 years agoeo: Define Efl.Event in EO
Jean-Philippe Andre [Thu, 17 Aug 2017 05:52:41 +0000 (14:52 +0900)]
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

7 years agowidget: Remove import edje_types from EO
Jean-Philippe Andre [Thu, 10 Aug 2017 06:16:18 +0000 (15:16 +0900)]
widget: Remove import edje_types from EO

Ref T5363

7 years agoevas: Set weight to "expand" by default
Jean-Philippe Andre [Thu, 27 Jul 2017 11:46:17 +0000 (20:46 +0900)]
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

7 years agoNetstatus: Use arrows for up and down net traffic indicators.
Stephen 'Okra' Houston [Wed, 23 Aug 2017 01:44:14 +0000 (20:44 -0500)]
Netstatus: Use arrows for up and down net traffic indicators.

7 years agoeolian-cxx: Add workaround for function pointer types
Felipe Magno de Almeida [Wed, 23 Aug 2017 01:31:55 +0000 (22:31 -0300)]
eolian-cxx: Add workaround for function pointer types

7 years agoMove efl interfaces from evas to efl directory
Daniel Zaoui [Wed, 2 Aug 2017 18:32:30 +0000 (21:32 +0300)]
Move efl interfaces from evas to efl directory

You may need to remove your installed directory to avoid conflicts

7 years agoelm_spinner: Support min,max filter for float format case.
Woochan Lee [Tue, 22 Aug 2017 05:31:04 +0000 (14:31 +0900)]
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

7 years agoefl_ui_clock: Parses the format recursively.
Woochan Lee [Tue, 22 Aug 2017 05:17:41 +0000 (14:17 +0900)]
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

7 years agoedje: Fix warning message
Jean-Philippe Andre [Tue, 22 Aug 2017 02:41:29 +0000 (11:41 +0900)]
edje: Fix warning message

efl_version is a top-level value

@fix

7 years agoevas: Add safety checks to avoid crash
Jean-Philippe Andre [Tue, 22 Aug 2017 00:37:39 +0000 (09:37 +0900)]
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

7 years agoevas: Fix experimental code related to visibility
Jean-Philippe Andre [Mon, 21 Aug 2017 10:18:53 +0000 (19:18 +0900)]
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).

7 years agotheme: fix dialog sizing when no buttons are present
Mike Blumenkrantz [Mon, 21 Aug 2017 14:16:58 +0000 (10:16 -0400)]
theme: fix dialog sizing when no buttons are present

ensure that the content is used for min sizing and not the icon

@fix

7 years agoelm_box: Fix support of aspect hints
Jean-Philippe Andre [Mon, 21 Aug 2017 09:25:39 +0000 (18:25 +0900)]
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