Commit Graph

17723 Commits

Author SHA1 Message Date
Carsten Haitzler 8594417a8d elm main - fix unused param in cb warn 2018-12-06 12:06:17 -05:00
Carsten Haitzler f3d5fd36ae elm toolbar - fix unused param warn 2018-12-06 12:06:17 -05:00
Carsten Haitzler de5191e3d6 elm colorselector - fix unused param warn 2018-12-06 12:06:17 -05:00
Carsten Haitzler 64044e564f efl ui focus manager - fix unused param warn 2018-12-06 12:06:17 -05:00
Carsten Haitzler 90b8b7678e efl ui focus manager - remove unused local vars warn 2018-12-06 12:06:17 -05:00
Carsten Haitzler 34e754ebb4 elm glview - fix unused param warn 2018-12-06 12:06:17 -05:00
Carsten Haitzler c255a72b3d eldbus model - remove unused vars warn 2018-12-06 12:06:17 -05:00
Carsten Haitzler 8c55cbff95 eldbus model - fix signed compare warn 2018-12-06 12:06:17 -05:00
Carsten Haitzler 4d7d199ace efl model loop - fix unused param (add EINA_UNUSED) - warn 2018-12-06 12:06:17 -05:00
Carsten Haitzler a5dbb49b68 eina - iterator - remove unused variable - warn 2018-12-06 12:06:17 -05:00
Marcel Hollerbach 68462553d1 elm_scroller: update behaviour to match legacy behaviour more closely
This implements scrolling the scroller when the scroller is not in the
maximum position of the requested relation, but there is no more focus
object in that relation.

Summing up, the scroller is scrolled manually, when the focus object is
not fitting in the viewport, and the object is beeing out of the
viewport in the requested direction. Or the scroller is not at its max
position in the requested direction, and there is no more focusable
object in this requested direction.

ref T6804

Differential Revision: https://phab.enlightenment.org/D7382
2018-12-06 12:06:17 -05:00
Marcel Hollerbach d24ed5f1d3 efl_ui_focus_manager_root_focus: ensure that adapter is part of viewport
This ensures that the adapter part is part of the viewport elements and
border elements. This is done in order to support cases where a
elm_scroller content is not focusable. Before the element was not
correctly in viewport, and so not correctly registered.

ref T6804

Differential Revision: https://phab.enlightenment.org/D7364
2018-12-06 12:06:17 -05:00
Marcel Hollerbach 03f73ac371 elm_interface_scrollable: add support for *jumping* into a scroller
Until recently we have been only registering the border elements of the
graph, (so only the elements that don't have a neighboor). However this
lead to the situation that a scroller that is scrolled into the middle
(so not the x nor the y axis is scrolled to the max), is not accessable.

Now, we register all elements that have a neighboor in the outside.
The patch in the test suite is required in order to provide the correct
geometry to the implementation of efl_ui_focus_manager_sub.

Differential Revision: https://phab.enlightenment.org/D7360
2018-12-06 12:06:17 -05:00
Marcel Hollerbach 907ee1a497 meson: use eolian_gen with -S
this ensures that eolian does not parse installed .eo files

Differential Revision: https://phab.enlightenment.org/D7405
2018-12-06 12:06:16 -05:00
Carsten Haitzler fc7acd0e38 ecore evas - buffer - init ecore event evas as many times as shutdown
so ecore_event_evas_shutdown() was getting called much more than
ecore_event_evas_init() - missing an init in the ee + img obj creator
in ecore evas. this adds it in and ensures in allocation failures we
dont over-init or shutdown too.

@fix
2018-12-06 12:06:16 -05:00
Carsten Haitzler 8c32f8bb22 elm - fix config version bump correctly
bump version right and fix eec7bc458e
properly.
2018-12-06 12:06:16 -05:00
Marcel Hollerbach e3caf6ef84 elm_config: repair configs
Summary:
in eec7bc458e the epoch offset was edited,
which seems to be wrong, as this caused every single config to be
deleted. This also updates the configs in the elementry base configs
as they have been forgotten.

This brings back the ability to edit the config in elementary_config.

Reviewers: segfaultxavi, devilhorns, ManMower, raster

Reviewed By: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7403
2018-12-06 12:06:16 -05:00
Carsten Haitzler 66df2617bc efl ui text - check if string exists beofre using it...
don't segv.
2018-12-06 12:06:16 -05:00
Carsten Haitzler bbd70d1c20 eina+evas cpu - add theoretical SVE support
SVE is a new-ish ARM vector instruction set like neon... but with
wider vectors (and variable vector sizes). this adds the flags and
hwcaps checks.
2018-12-06 12:06:16 -05:00
Carsten Haitzler 09f648ed81 ecore_evas - fix aninmator based frame render ticking to full framerate
so i was seeing ecore evas only rendering every 2nd frame... this is
because it was adding and deleting animatiors every time it rendered
instead of keeping one around as lon as updates where there to render
and then remove it afterwards. this caused nasty timing problems and
thus problems assessing framerate of rendered content etc. etc. ...
not good. this fixes that. this only happened if you only used pure
legacy ecore animators. if you used the efl animator tick events it
worked right.

@fix
2018-12-06 12:06:16 -05:00
Cedric BAIL 108069fa62 ecore_con: simplify code by using helper that create future directly.
The new helper help replace call to eina_future_resolved and eina_future_rejected with
a scheduler lookup to just one function call.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7342
2018-12-06 12:06:16 -05:00
Cedric BAIL 7f733378b9 ecore: simplify code by using helper that build future directly.
The new helper help replace call to eina_future_resolved and eina_future_rejected with
a scheduler lookup to just one function call.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7341
2018-12-06 12:06:16 -05:00
Cedric BAIL 29faf24a1d eldbus: simplify code by using helper that create future directly.
The new helper help replace call to eina_future_resolved and eina_future_rejected with
a scheduler lookup to just one function call.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7340
2018-12-06 12:06:16 -05:00
Cedric BAIL 6600a035c6 eio: simplify code by using helper that generate future directly.
The new helper help replace call to eina_future_resolved and eina_future_rejected with
a scheduler lookup to just one function call.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7339
2018-12-06 12:06:16 -05:00
Cedric BAIL 0b8da6e945 eio: we do not need to actually loop explicitely for the loop here.
Actually efl_loop_future_scheduler_get does lookup on the object and its provider
someone that could be a loop provider and find a scheduler. There is no need to
custom look for a loop provider.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7338
2018-12-06 12:06:16 -05:00
Cedric BAIL bf82792a22 ecore: add an helper on Efl.Loop_Consumer to build resolved and rejected future more easily.
This make all object that inherit from Efl.Loop_Consumer have an easy ability to create a future
from their link to a loop provider. This way there is no need to further lookup for a scheduler.

This can by applied after the patch series from T7471.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7337
2018-12-06 12:06:16 -05:00
Cedric BAIL 11be2ae234 elementary: simplify code by using proper helper.
efl_loop_promise_new is a helper function that does automatically figure out an
available scheduler and create a promise from it. Basically replacing the call to
eina_promise_new(efl_loop_future_scheduler_get(o), ...).

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7336
2018-12-06 12:06:16 -05:00
Cedric BAIL 76cffceb2e eldbus: simplify code by using proper helper.
efl_loop_promise_new is a helper function that does automatically figure out an
available scheduler and create a promise from it. Basically replacing the call to
eina_promise_new(efl_loop_future_scheduler_get(o), ...).

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7335
2018-12-06 12:06:16 -05:00
Cedric BAIL d20d5021de eio: simplify code by using proper helper.
efl_loop_promise_new is a helper function that does automatically figure out an
available scheduler and create a promise from it. Basically replacing the call to
eina_promise_new(efl_loop_future_scheduler_get(o), ...).

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7334
2018-12-06 12:06:16 -05:00
Cedric BAIL 1c95e64cba ecore_con: simplify code by using proper helper.
efl_loop_promise_new is a helper function that does automatically figure out an
available scheduler and create a promise from it. Basically replacing the call to
eina_promise_new(efl_loop_future_scheduler_get(o), ...).

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7333
2018-12-06 12:06:16 -05:00
Lauro Moura 22c8bc2f59 eolian-cxx: Add property_def
Summary:
While individual getters and setters are added to the list of methods of
a class, property_def will hold them as a pair.

This will help defining accessors like C#'s where they're grouped.

Also update some eolian-cxx tests that were commented out.

Depends: D7262

Test Plan: run eolian-cxx tests

Reviewers: vitor.sousa, felipealmeida

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7389
2018-12-06 12:06:16 -05:00
Larry Lira db579aad3b Efl.Ui.List.View: fixed MVVM life-cycle
Fix bugs on Views and Model related with null items and proper ownership and
life-cycle of components.

Configure default theme for default factory on finalize.
2018-12-06 12:06:16 -05:00
Vitor Sousa 50ce1338b1 elementary: rework Efl.Ui.Layout boolean signal-connection to Models
Add new feature to specify signal connection to boolean properties of Models.
This also fix some '%v' substitution problems.

Parsing EINA_VALUE_TYPE_BOOL as boolean in Efl.Ui.Layout signal updates from
Models (instead of EINA_VALUE_TYPE_UCHAR). UCHAR no longer has special handling
and falls to the general result of eina_value_to_string() as other types do.

Use EINA_VALUE_TYPE_BOOL instead of EINA_VALUE_TYPE_UCHAR to signal selection on
click events to the Model.

Update examples to make usage of the new property connection feature in order to
model selection of items on Views.
2018-12-06 12:06:16 -05:00
Stefan Schmidt 5d04985888 Revert "eina: add locale-independent eina_convert_strtod_c function"
This reverts commit bef1c5cc43.

The commit breaks the build on macos. I gave it soem time to get fixed
up quickly, but its late Friday night in Korea now and this is unlikely
to get fixed until Monday. Revert here until fixed.

./src/lib/eina/eina_private.h:158:1: error: unknown type name 'locale_t'

https://travis-ci.org/Enlightenment/efl/jobs/461790674
2018-12-06 12:06:16 -05:00
Daniel Kolesa 03001ceaca eolian: add optional warning for regular classes in ext list
As per T7240, we intend to disallow multi-class inheritance in Eo
at some point. In order to achieve that, it is necessary to find
out which classes still use multi-class inheritance and change
them accordingly.

Eo multi-class inheritance is not actually multi-class, as doing
so will simply treat all the other classes as interfaces, which
is misleading and poor design on its own.

By setting EOLIAN_CLASS_REGULAR_AS_EXT_WARN environment variable,
Eolian will now warn about such classes, allowing them to be
fixed.

Closes T7365.
2018-12-06 12:06:16 -05:00
Youngbok Shin 33b8e5157a eina: add locale-independent eina_convert_strtod_c function
strtod's behavior is changed by system locale.
http://man7.org/linux/man-pages/man3/strtod.3.html
https://en.wikipedia.org/wiki/Decimal_separator

Because of this, strtod(0.5) returns 0.0 in some locales.
When a given value string is locale-independent, strtod has to be
replaced to eina_convert_strtod_c function.
Internally, it calls strtod_l function with "C" locale.

@feature

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Vincent Torri <vincent.torri@gmail.com>
Differential Revision: https://phab.enlightenment.org/D6644
2018-12-06 12:06:16 -05:00
Shinwoo Kim 5a68a63ab7 evas cache image: compare with cached image file
As cache2 knows cached image could be not matched even though
hash key is not different.

Please refer to the following comment of evas_cache2_image_open.

   /* image we found doesn't match what's on disk (stat info wise)
    * so dirty the active cache entry so we never find it again. this
    * also implicitly guarantees that we only have 1 active copy
    * of an image at a given key. we wither find it and keep re-reffing
    * it or we dirty it and get it out */

The hash key is created base on the image file address.
If the image file address to find does not equal cached image file address
then it means that the cached image is no longer valid.

This case could happen with the following step.

(1) Call evas_object_image_memfile_set with content data A
(2) Call evas_object_image_memfile_set with content data B
(3) Add timer with short time (ex: 0.01 sec)
(4) Delete A image, and add A image in timer callback
(5) Delete B image, and add B image in timer callback

Sometimes you could see image of A from the B image, because newly created
image at step 5 has same address of setp 1.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D6870
2018-12-06 12:06:16 -05:00
Vitor Sousa 03cb1ebae5 ecore: fix bugs from composite models
Fix type error while getting boolean property from Efl.Model_Composite_Boolean.

Fix properties_get methods for all composite models.

Now properly call property.changed events when it is needed.

Use EINA_VALUE_TYPE_BOOL instead of EINA_VALUE_TYPE_UCHAR.

Remove some memory leaks.
2018-12-06 12:06:16 -05:00
Vitor Sousa 5ac5ca9af6 ecore: forward internal Efl.Model events to Efl.Model.Composite 2018-12-06 12:06:16 -05:00
Vitor Sousa edd15560c3 ecore: fix efl_model_container_private.h include guards 2018-12-06 12:06:16 -05:00
Lauro Moura d90bb5d28c csharp: Change to new class API.
Summary:
As discussed in T7204:

- Eo Interfaces/mixins -> C# Interfaces with concrete class
  implementations
- Eo Regular/Abstracts -> Proper C# classes
- Added some new generators and helper methods.
- Refactored the class generator, splitting into helper methods

Eo handles now are stored only in the "root" class in any given
inheritance tree (generally, Efl.Object), and accessible to each child.
Methods also are defined in a single place instead of repeatedly
generated in everyfile, reducing the size of the generated .dll from
30MB to around 4.5MB.

Mixins are generated as C# interfaces but any regular class it inherits
from is lost, as we can't have interfaces inheriting from regular
classes. This will be dealt with in a later commit.

Summary of API Changes:

- Merged Inherit/Concrete classes. (These suffixes disappear from
  regular classes).
- Interface still have implementations with 'Concrete' suffix for when
  they are returned from methods.
- Removed 'I' from interface names.
- Removed interfaces for regular/abstract Eo classes.
- Concrete classes for interfaces/mixins hold the event argument struct.
- Removed '_' from classes, enums, structs, etc, as indicated in C#
  naming conventions.
- Namespaces are now Camel.Cased.
- Renamed IWrapper's raw_handle/raw_klass to NativeHandle/NativeClass

Also renamed the test classes as after the namespace change, the
test namespace Test can conflict with the helper Test namespace.
(And use more meaningful names than Test.Testing...)

Also Fixes T7336 by removing a deprecated example and adding
efl_loop_timer_example to build system.

Fixes T7451 by hiding the class_get DllImports and renaming the IWrapper
fields. The native handlers are used in the manual binding.

Still need to work:

- As there are still some events names clashing (e.g. Efl.Ui.Bg with "resize"
  from Efl.Gfx.Entity and Efl.Gfx.Image), Events are currently declared on
  the interface and implemented "namespaced" in the classes,
  requiring the cast to the interface to access the event.
- The Mixin Conundrum. Mixin inheritance will be dealt in a future
  commit.

Depends on D7260

Reviewers: segfaultxavi, vitor.sousa, felipealmeida, Jaehyun_Cho

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7451, T7336

Differential Revision: https://phab.enlightenment.org/D7262
2018-12-06 12:06:16 -05:00
Christopher Michael 3813b15879 elementary: Support using no frame object
Summary:
Creation of the frame object can lead to significant delays in window
creation time on limited-power devices (watches, mobile, tv, etc).
This patch allows setting an environment variable and config value in
order to completely skip frame object creation.

This shaves about 50ms from startup on an i7 8600k, so should be more
substantial a saves on limited-power devices.

Reviewers: kimcinoo, ManMower

Reviewed By: ManMower

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7305
2018-12-06 12:06:15 -05:00
Daniel Kolesa 416c71332d eolian_aux: add initial eolian_aux APIs
eolian_aux is a set of auxiliary APIs for eolian that build on top
of the existing eolian APIs but do not belong in the main library.
2018-12-06 12:06:15 -05:00
Chris Michael 422960b0e6 elput: Add elogind as meson option 2018-11-29 07:13:16 -05:00
Chris Michael 90831021bc elput: Fix ifdef check to support elogind also 2018-11-29 07:05:47 -05:00
Chris Michael 04b2fedee9 elput: Fix ifdef check to work for elogind also 2018-11-29 07:05:47 -05:00
Chris Michael d6bbfc5ada elput: Add include flie for elogind support 2018-11-29 07:05:47 -05:00
Yeongjong Lee e93dbf21a2 eldbus: add brackets
Summary: assignment expression is always true.

Test Plan: make

Reviewers: cedric, devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7357
2018-11-29 07:05:23 -05:00
Wonki Kim 8b0b9ed281 elm_config: fix elm_config_save not to wake idle processes up
there is a eio_monitor which is tracking on config directory.
and that is the reason why idle processes get waken up once some process call elm_config_save().
this patch fix the function not to wake idle processes up as it was before.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7354
2018-11-28 16:22:18 -08:00
Wonki Kim 43b18dc890 elm_config: replace ecore_file_mv with ecore_file_cp
eio_monitor could miss what it is tracking on
in case of calling ecore_file_mv on the tracked file.
so that this patch replace move with copy.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7352
2018-11-28 16:22:16 -08:00
Wonki Kim 6c4e49d970 elm_config: remove profile name reading logic from data dir
Nothing writes any profile name on profile.cfg inside data dir
This patch removes the logic.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7351
2018-11-28 16:22:14 -08:00
Marcel Hollerbach 30db122db4 ecore_evas_buffer: register it in ecore_evas_input
this is done in order to make ecore_event_evas_key_down work with this.
The function can be used to simulate interactions with a efl_ui_win. If
this is not added, then the user of ecore_event_evas_key_down needs to
differentiate between buffer engines and the rest of the engines.

Differential Revision: https://phab.enlightenment.org/D7361
2018-11-28 22:20:34 +01:00
Daniel Kolesa a10eda5137 meson: include whole src/lib for eo file generation in ifaces
In autotools, src/lib is used as an include path for finding
eo files, which is the same behavior you would get as when using
a system directory. In meson, this was changed to include only
certain directories.

This presents a problem (05682eed7d)
as it is not possible to reference symbols from other paths within
documentation.

Since this is necessary for the time being, work around the problem
by doing a whole src/lib include for now, which fixes the parsing.
Longer term solution is to be discussed and implemented.
2018-11-28 14:45:31 +01:00
Xavi Artigas 05682eed7d eo-docs: Remove Doxygen tags from efl*.eo files
Summary:
- Replace '\@ref name' with '@name'
- Remove unused \@internal tag
    This tag affects text AFTER it, and there is no text after it.
- Remove \@note tag
    Replaced with a simple NOTE: text, since eolian does not have an equivalent tag.
- Remove spurious \@Efl... tags
    They should really be @Efl...
- Remove \@p tags
    There is no eolian equivalent, and a simpler $ suffices in this case.

Fixes T7482

Reviewers: q66

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7482

Differential Revision: https://phab.enlightenment.org/D7372
2018-11-28 13:33:46 +01:00
Hermet Park c602c075ca ector: fix indentation. 2018-11-28 16:45:19 +09:00
Hermet Park 507a705d5d evas vg: add one comment todo. 2018-11-28 15:38:56 +09:00
Hermet Park dae6f81c90 evas ector: Replace renderer preparation responsibility.
Replace fill/stroke renderer preparation of shapes to canvas vg,
These renderer now is triggered by their own instances.

This cairo change part is missing bym cbf70b32f049583fc0bf7542af7d89d4ef5d50c55.
2018-11-28 15:36:16 +09:00
Hosang Kim c4ae2be685 efl_ui_scrollable: implement efl_ui_scrollable_content_pos_get method.
Summary:
Applications want to know current position on scroller.
Also, it is necessary when calculate position of focusable object.

Reviewers: herdsman, akanad, YOhoho, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7251
2018-11-28 14:34:28 +09:00
Hermet Park bf70b32f04 evas ector: Replace renderer preparation responsibility.
Replace fill/stroke renderer preparation of shapes to canvas vg,
These renderer now is triggered by their own instances.
2018-11-28 13:38:23 +09:00
Hermet Park 700b302517 ector: remove quality option.
This option is empty, useless.
No plan to support it.
2018-11-28 12:07:22 +09:00
SangHyeon Jade Lee edacff4fa5 gengrid : remove elm_access_text_set for code consistancy.
Summary:
Early accessibility read object and item infomations by elm_access_text_set
but this code is redundant now and removed genlist and list already.
To make a same consistancy of our accessibility informations in list-look widgets
we need to remove this function calls here.

Test Plan: tested Gengrid Item is not readed in gengrid item focused with accessibility on.

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7370
2018-11-27 20:15:54 +09:00
Hermet Park c9d20d488b Revert "evas map: calc map geometry when it is out of screen"
This reverts commit 8a7817cdd9.

Sorry, I didn't intend this patch...
2018-11-27 11:24:10 +09:00
Shinwoo Kim 8a7817cdd9 evas map: calc map geometry when it is out of screen
Summary:
The map geometry(cur.map->normal_geometry) is calculated only if
evas_render_updates_internal_loop calls evas_render_mapped as below.

evas_render_mapped
   -> evas_object_map_update
   -> evas_object_map_update
   -> _evas_map_calc_map_geometry

If the mapped object is not on screen, then evas_render_updates_internal_loop
does not call evas_render_mapped, because the mapped object is not active.

The mapped object is not active(i.e. is_active is  0) always because cache.clip
data including visilbe and geometry is not updated after the object goes out
of screen.

Usually the unmapped object updates its cache.clip data with updated geometry
even though it is out of screen as below.

_efl_canvas_object_efl_gfx_entity_position_set
   -> evas_object_recalc_clippees
   -> evas_object_clip_recalc
   -> evas_object_clip_recalc_do

So the mapped object geometry(cur.map->normal_geometry) should be updated in
evas_object_clip_recalc_do if it is out of screen.

Test Plan:
Sample code

{F3455674}

{F3455673}

{F3455672}

{F3455671}

Reviewers: Hermet, jypark

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7344
2018-11-27 11:21:52 +09:00
Daniel Hirt 6e92042845 Ui Scroller : remove unnecessary efl_del
Child objects are already destoryed during destruction of the parent
object.

This fixes ERR messages when doing `efl_del(sd->smanager)`
object, which is already destroyed at that point.
2018-11-26 13:17:07 +02:00
Daniel Hirt a7b1329b0e Scroll manager: remove unnecessary callback_del
Child objects are already destoryed during destruction of the parent
object.

This fixes ERR messages when doing operations on the `event_rect`
object, which is already destroyed at that point.
2018-11-26 13:17:07 +02:00
Daniel Hirt c87d23f942 Ui text: remove unused code from internal scroller 2018-11-26 13:17:07 +02:00
Daniel Hirt fed99f8d13 Ui text: implement efl_part and part_text API to text_set 2018-11-26 13:17:07 +02:00
Daniel Hirt baecca47b4 Ui text: read init text properties from theme 2018-11-26 13:17:07 +02:00
Daniel Hirt b77fc4ed4f Ui text interactive: emit changed,user event correctly 2018-11-26 13:17:07 +02:00
Daniel Hirt 3e5616b346 Ui text scroller: add usage of a guide 2018-11-26 13:17:07 +02:00
Marcel Hollerbach acee09f585 efl_ui_focus_manager_sub: freeze manager when parent manager is frozen
a efl_ui_focus_manager_sub object is a manager object by itself. It
registeres the border elements of itself in the parent focus manager.
However, all elements that are registered in this manager object, are
also automatically children of the parent root object, which means, when
the root object of the parent manager object is moved, then those
children will also be moved. Which means, when the parent manager can
ignore those changes, we can also ignore them.
This improves the overall performance of the "Scroller 2" test case by
26%.

The change to the test is required in order to redirect the events so
the self_dirty bit is setted correctly

Differential Revision: https://phab.enlightenment.org/D7350
2018-11-26 11:37:04 +01:00
Marcel Hollerbach a73904ba66 elm_interface_scrollable: freeze the manager object when content moves
this freezes the manager object of the user of the interface. This
improves the overall performance when moving arround focus in a
scrollable object, since no new relations are needed to be recalculated.
This safes up about 2% in the "Scroller 2" test. Additional
optimizations are added in another commit.

Differential Revision: https://phab.enlightenment.org/D7349
2018-11-26 11:37:04 +01:00
Marcel Hollerbach ac8d16684d efl_ui_focus_manager_calc: ensure that the coords are marked dirty
this is needed when a object is unregistered, otherwise a user of the
event is not informed when a element is gone, and thus the border
elements might have changed.

Differential Revision: https://phab.enlightenment.org/D7353
2018-11-26 11:37:04 +01:00
Marcel Hollerbach e36dce177e efl_ui_focus_manager: introduce a new API
the new api can be used to freeze the cache. This means, when the
widgets of the focus manager are all equally moved, the cache can stay,
cause the relative positions did not change, this enables a whole new
set of available optimizations.

Differential Revision: https://phab.enlightenment.org/D7348
2018-11-26 11:37:04 +01:00
Marcel Hollerbach 97ece33134 efl_ui_focus_object: introduce a new event for focus geometry changes
before the move and resize events have been used. However, this turned
out to not work well, because not all registered items are real
efl.gfx.entity objects, there is also a custom property for getting the
focus geometry, so now this property is completed with a event that is
emitted when the focus geometry changes. With this event we can
reintroduce relation caching. Since all events are marked correctly
dirty now.

Differential Revision: https://phab.enlightenment.org/D7347
2018-11-26 11:37:04 +01:00
Marcel Hollerbach fccc5fc438 elm_focus: implement missing functions
there is one function that needs to be implemented by the inheritor of
Efl.Ui.Focus.Object and that is focus_parent, otherwise child_focus
cannot be propagated correctly. This is now achived correctly for all
widgets.

This fixes from elm_object_focus_get results for toolbar and calendar.
Segmentcontrol inherits from the class, however, the widget itself does
not allow focus, so its never registered probebly.

Differential Revision: https://phab.enlightenment.org/D7331
2018-11-26 11:37:04 +01:00
Marcel Hollerbach e661c4acc3 efl_ui_focus_manager_calc: reduce the amount of list operations
it appears that the calculation of the unordered elements can be done a
lot easier here, when checking in the initial for loop for the right
parent safes us two more list walk later on.

Additionally, if all elements in this chain have the right parent, and
the amount of elements is the same as the parent has, then this list can
be used as a full replacement.

Differential Revision: https://phab.enlightenment.org/D7330
2018-11-26 11:37:04 +01:00
Daniel Zaoui 976a33e36a FlipSelector: fix items creation when range is used
In the case step is 0, the application will enter in an infinite loop
where the max will never be reached. To fix this, step is set to 1 if 0
is given by the user.
Moreover, step is forced to positive. According to the given min and
max values, the step will be negative or positive. In this way, we are
sure to be inside the correct range.
2018-11-26 10:47:20 +02:00
Cedric BAIL 5de51f84fb eo: rename efl_future_Eina_FutureXXX_then in efl_future_then as this has been available for some time.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7327
2018-11-23 11:39:43 -08:00
Cedric BAIL da01f169d0 eldbus: switch Eldbus.Model to inherit from Efl.Model_Loop.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7326
2018-11-23 11:39:41 -08:00
Cedric BAIL de28f06ab4 eio: switch Eio.Model to inherit from Efl.Model_Loop.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7325
2018-11-23 11:39:39 -08:00
Cedric BAIL 137c5a0d83 ecore: switch all Efl.Model to inherit first from Efl.Model_Loop.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7324
2018-11-23 11:39:37 -08:00
Cedric BAIL 38865a688a ecore,efl: add Efl.Model.property_get helper which will suceed once when a property finally has a value.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7323
2018-11-23 11:39:35 -08:00
Cedric BAIL 88553eb9e8 eio: use the right type of Eina_Value to report error.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7322
2018-11-23 11:39:34 -08:00
Cedric BAIL d4d44d76f3 efl: make Efl.Model.properties_get return an Iterator<string>.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7289
2018-11-23 10:13:58 -08:00
Cedric BAIL bd474a8829 eina: add eina_multi_iterator_new.
This will return an Iterator that will walk over a serie of iterator.
This technicaly take ownership of the iterator it is walking over and
destroy as it goes and doesn't need them anymore.

Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7286
2018-11-23 10:13:54 -08:00
Cedric BAIL a8f520188a eina: add test for Eina_Iterator over pure C array.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7285
2018-11-23 10:13:52 -08:00
Cedric BAIL 6b26b3330e eina: add a way to iterate over a pure C array with no NUL terminating element.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7284
2018-11-23 10:13:51 -08:00
Daniel Kolesa c8e0a1d2e2 eolian: implement new syntax for inheritance
This new syntax separates the parent class from extensions, in
a familiar way to similar to e.g. Java. Since changing everything
at once is a lot of effort, implement it alongside for the time
being.
2018-11-23 13:57:07 +01:00
Daniel Kolesa 14ce54c303 eolian: implement new inherit behavior
Eolian now separates 'parent' and 'extensions'. For regular
classes, parent is the first item in the inherits list and
extesions is the rest. For interfaces and mixins, parent is
NULL and extends is the inherits list.

The reason for this is the separation of them in syntax in near
future. It also slightly changes the behavior; since for interfaces
and mixins, parent is always NULL now, you can freely inherit from
all types of classes without needing to manually put an interface
type as the first item of the inherits list.
2018-11-23 13:57:07 +01:00
Jaehyun Cho f3eb8d6441 efl_interpolator: rename subclasses of Efl.Interpolator
Subclasses of Efl.Interpolator are renamed intuitively from backward
order to forward order.
2018-11-23 21:44:34 +09:00
Jaehyun Cho 6cc7c1b830 efl_interpolator: change Efl.Interpolator class to interface
Since Efl.Interpolator's subclasses are used as interpolator class,
Efl.Interpolator class is changed to be an interface.

This change allows Efl.Canvas.Animation to have Efl.Interpolator as its
property in efl_canvas_animation.eo.
2018-11-23 21:43:54 +09:00
Yeongjong Lee 424bd60084 elm_gengrid: remove all_items_deselect call in _gengrid_element_focused
focus_changed doesn't mean select_changed. selection is handled the code below.
Differential Revision: https://phab.enlightenment.org/D7268
2018-11-23 12:48:37 +01:00
Hermet Park e8ff75da2a ector software: make a pair of ref/unref.
public_shape missed get xunref,
it won't reache to zero reference.

@fix
2018-11-23 20:41:27 +09:00
Hermet Park ce8b9e4b85 evas vg: rename evas_vg prefix to efl_canvas for consistency. 2018-11-23 20:01:53 +09:00
Hermet Park 206ec05711 ector renderer: correct indentation. 2018-11-23 20:01:41 +09:00
Derek Foreman 02840efec2 elm: roll _tree_custom_chain_missing into main focus test function
Further reduction in eo overhead.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-22 16:09:39 +01:00
Derek Foreman 45f24b6ef4 elm: Compress more focus tests into the same list walk
Since we're already at the top of the list, we can do the WIN_CLASS test
much more cheaply.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-22 16:09:39 +01:00
Derek Foreman 30be434fb1 elm: Re-order focus tests
Placing the cheapest tests first can save on some heavy walks.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-22 16:09:39 +01:00
Derek Foreman b8f6323a36 elm: Walk parents instead of parent widget in focus test
This Should Work, right?

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-22 16:09:38 +01:00
Derek Foreman a4e4343082 elm: speed up _eval_registration_candidate
combining _tree_unfocusable and _tree_disabled into a single function
reduces eo overhead.  This saves a few ms at startup in elementary_test.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-22 16:09:38 +01:00
Yeongjong Lee c7ee93eebb Remove duplicated interface inheritance in eo
Summary:
Delete unnecessary interface inheritance

Efl.Ui.Base ==> Efl.Ui.Widget - Efl.Canvas.Group - Efl.Canvas.Object - Efl.Ui.Base
Efl.Text_Cursor ==> Efl.Text_Markup - Efl.Text_Cursor
Efl.Pack_Layout ==> Efl.Ui.Box - Efl.Pack_Layout
Efl.Ui.Translatable ==> Efl.Ui.Layout - Efl.Ui.Widget - Efl.Ui.Translatable
Efl.Part ==> Efl.Ui.Widget - Efl.Part
Efl.Ui.View ==> Efl.Ui.Layout.Object - Efl.Ui.View
Efl.Access.Value ==> Efl.Ui.Spin - Efl.Access.Value
Efl.Gfx.Buffer ==> Efl.Canvas.Image_Internal - Efl.Gfx.Buffer
Efl.Canvas.Pointer ==>  Efl.Ui.Widget - Efl.Canvas.Group - Efl.Canvas.Object - Efl.Canvas.Pointer
Efl.Gfx.Size_Hint ==> Efl.Ui.Widget - Efl.Canvas.Group - Efl.Canvas.Object - Efl.Gfx.Size_Hint

Test Plan: make check

Reviewers: Jaehyun_Cho, Hermet, woohyun, segfaultxavi

Reviewed By: Jaehyun_Cho, segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7241
2018-11-22 17:22:04 +09:00
Chris Michael 9c814cb652 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael e2862ef2e2 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael beaa784cb5 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 71baeab41d elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 554573eaa9 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 5a35d9d3e3 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael f7a414db38 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 27fb5151e5 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael a61b5c380b elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 0f00fa0777 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 4220c9d2d4 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael bd32bf5626 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 7bddabaa33 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 275165423a elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 31a7e545b4 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael b32c39cd58 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 328a6ad307 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael e8298d8d44 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 7f42105cb7 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 2f8221ed68 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 98c8c7bf91 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael f7c073d77c elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 19059b8eca elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 6d29afae4d elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 50ab99b05b elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 1bea98eba4 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Daniel Kolesa 9535eff025 eolian: check whether events conflict in inheritance tree (off)
Previously, the EOLIAN_EVENT_REDEF_WARN environment variable
enabled extra checks that would include events in checking
conflicts against methods. Since this is probably not necessary
and naming events the same as methods is perfectly fine in itself,
relax this rule and check events completely independently.

In practice, this will disallow using the same name for two
events within the same inheritance tree, which is desirable
in longer term, but cannot be enabled just yet because we have
too many of those conflicts. But it also allows the events to
be named the same as methods or parts, which is fine and was not
possible before.
2018-11-21 16:29:08 +01:00
Carsten Haitzler e68a952b8c eet - dictorinary - tidy up code to be easier to read
more compact so less scrolling - easier to read.
2018-11-21 13:37:16 +00:00
Carsten Haitzler 61109729fa eet dict - remove redundant check of len, str and possibly strcmp
aim for small speedups.
2018-11-21 13:37:16 +00:00
Carsten Haitzler c0d6cbab97 eet - dictionary - use rwlocks instead of spinlocks - better contention
if the dict is contended on by lots of threads then a spinlock really
makes it slow. a rwlock gets about 1.5-2x speedup depending on
arch/thread count.

@optimize
2018-11-21 13:37:16 +00:00
Jiyoun Park bb455f3490 evas_object_image: fix cutout bug related with opaque object
Summary:
  condition:
  1. full size rect
  2. upper side, if there is same size image object and image object preload state is EVAS_IMAGE_PRELOADING.
  below rect cannot be rendered because upper image object was added to cutout area event though image object is not opaque.

  so fix opaque check function return false for opaque state of preloading image.

Reviewers: Hermet, raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7318
2018-11-21 20:55:32 +09:00
Bryce Harrington 3f957a9bd0 evas vg: Check for OOM when setting root node in a vg canvas 2018-11-21 20:55:13 +09:00
Bryce Harrington cd6e7fe685 evas vg: Check for OOM in evas_cache_vg_entry_create 2018-11-21 20:38:50 +09:00
Hermet Park 2191178ef2 evas vg: fix indentation.
non-logical changes.
2018-11-21 20:35:11 +09:00
Hermet Park 06de063739 evas vg: set update dirty region properly.
zero sized dirty region is insane,
it must be size of vg area.
2018-11-21 20:08:39 +09:00
Hermet Park fc4d7da72f evas vg: update render properly.
If tree viewport is changed, vg visual must be updated,
This checks internal changed flags to update next frame.

@fix
2018-11-21 20:06:24 +09:00
Hermet Park 111e1eb9c6 evas vg: code refactoring.
This doesn't change any logics.
just renamed internal variables and functions.
2018-11-21 20:01:09 +09:00
Marcel Hollerbach a81540ead5 elm_gengrid: enable focus api for none realized items
this ensures that the item is focused once the item is realized.
The last_focused_item point is not NULLed anymore, it will be overridden
anyways a few lines below, if the 'if' below is not going to be
executed, then we should not NULL out the field at all, since we want to
remember the item when we are restoring focus in
_elm_gengrid_efl_ui_focus_manager_setup_on_first_touch.

This resolved the latest comment in D7230

This also resolves T7391.

Differential Revision: https://phab.enlightenment.org/D7271
2018-11-20 20:50:42 +01:00
Marcel Hollerbach 9c1c35b9b8 elm_legacy: use the new api
with using the new api of efl.ui.focus.object we can resolve a bug that
was pointed out in P243.

Differential Revision: https://phab.enlightenment.org/D7267
2018-11-20 20:50:42 +01:00
Marcel Hollerbach 1524c94180 elm_gen****: correctly return the focus parent
this was forgotten before. However, now the correct parents are returned
This is needed in order to have the child_focus property propagated
correctly accross the parent chain.

Differential Revision: https://phab.enlightenment.org/D7266
2018-11-20 14:42:32 +01:00
Marcel Hollerbach 25ac6d4fcc efl_ui_focus_object: add new event
the new event indicates when the focus property of a child has changed.

Fixes T7438

Differential Revision: https://phab.enlightenment.org/D7263
2018-11-20 14:42:32 +01:00
Marcel Hollerbach f62a289cf4 elm_list: fix focus without items
Differential Revision: https://phab.enlightenment.org/D7232
2018-11-20 13:04:48 +01:00
Marcel Hollerbach edf1fbea20 elm_gen****: ensure that no focus item is handled correctly
This ensures that on first touch the root dummy element is focused
correctly.

fix T7203

Differential Revision: https://phab.enlightenment.org/D7231
2018-11-20 13:04:48 +01:00
Marcel Hollerbach c0e52526c6 efl_ui_focus_manager: make active getter work correctly
focus managers can be used via composition, in this case the normal
manager is NOT inheriting from the
EFL_UI_FOCUS_MANAGER_WINDOW_ROOT_INTERFACE class, but the composition
parent is.

fix T7390

Differential Revision: https://phab.enlightenment.org/D7230
2018-11-20 13:04:47 +01:00
Woochanlee a1478261b5 efl_ui_format: remove supporting default TM format in interface.
Summary:
efl_ui_format printed ERR log in calendar use case.

calendar only accept format as "B,b,h,m,y,Y"

But it doesn't cover that and not supporting TM type.

If there is other widget which one using format interface, It also has own accpeted format.

So i think it should impelment on widget side.

Test Plan: elementary_test -> efl_ui_calendar.

Reviewers: Hermet, singh.amitesh, Jaehyun, zmike, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6871
2018-11-20 10:23:28 +01:00
SangHyeon Jade Lee 4b5304d7f2 efl_ui_grid : introduce new packable grid widget for Efl.Ui.Widget
Summary:
Introduce new packable grid for Efl.Ui.Widget toolkits.
most of parts are same as Efl.Ui.List, and it also support Efl.Pack_Linear,
although it will not support Efl.Pack_Table, because item must be
arranged sequential orders.

Test Plan:
We will make the tests on efl ui test suite.
please test by make check.

Reviewers: Hermet, cedric, felipealmeida, eagleeye, woohyun

Reviewed By: Hermet, eagleeye

Subscribers: CHAN, bu5hm4n, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6985
2018-11-20 14:32:31 +09:00
Jaehyun Cho 4f9c8d524c efl_ui_theme: Introduce Efl.Ui.Theme class
Summary:
Efl.Ui.Theme class is required to support language bindings.
Efl.Ui.Theme works based on current elm_theme features.

This patch fixes T7357.

Reviewers: segfaultxavi, cedric, lauromoura, woohyun, zmike, SanghyeonLee

Reviewed By: segfaultxavi, SanghyeonLee

Subscribers: SanghyeonLee, herdsman, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7357

Differential Revision: https://phab.enlightenment.org/D7244
2018-11-20 13:56:37 +09:00
Jaehyun Cho 0611620301 efl_ui_bg: remove Efl.Ui.Bg interface and rename Efl.Ui.Bg_Widget class
Summary:
Efl.Ui.Bg interface does not have any new property or method.
Moreover, Efl.Ui.Bg interface is not used by widgets except
Efl.Ui.Bg_Widget and Efl.Ui.Widget_Part_Bg.
Consequently, Efl.Ui.Bg interface can be replaced by other interfaces.

Due to Efl.Ui.Bg interface, the bg widget class name becomes
Efl.UI.Bg_Widget which is not synchronized with other widget names.

Therefore, to keep consistency with other widgets, it would be better to
remove Efl.Ui.Bg interface and rename Efl.Ui.Bg_Widget to Efl.Ui.Bg.

Reviewers: woohyun, segfaultxavi, bu5hm4n, zmike

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7304
2018-11-20 10:24:05 +09:00