Commit Graph

21621 Commits

Author SHA1 Message Date
Jean-Philippe Andre cc1ed7183c edje: Hide edje_global from the rest of the world
Call provider_find on the loop (or basically any object) with the
color/text/size class interface instead, to find it. The main loop is
the main holder of those objects.

Note: This makes use of provider_find instead of direct access to the
variable, in order to self-test the code. In theory release builds will
not do this and user directly the variable.
2017-11-08 20:02:31 +09:00
Jee-Yong Um 2f838acd4e Efl: add class interfaces (color/text/size)
Summary: implement Efl.Gfx.Class interface

Reviewers: jpeg, cedric

Subscribers: taxi2se, herdsman

Differential Revision: https://phab.enlightenment.org/D4403
2017-11-08 19:17:59 +09:00
Andy Williams d5dbcdabd1 eo: Rename efl_ref_get to efl_ref_count 2017-11-08 09:30:42 +00:00
Carsten Haitzler 2a5267d416 unbreak efl so e works again.... after cedric
we cant go iterating the mainloop before the current point. if someone
set up handlers but hasnt configured the things those handles use yet
as they dont expect them to be used until the mainloop is started...
thenthings break. we cant change this assumption without breaking
things.
2017-11-08 16:32:52 +09:00
Jean-Philippe Andre c308498a9d win: Fix alpha windows
Fixes T6334
2017-11-08 16:17:29 +09:00
subhransu mohanty 8952c3e524 evas/vg: changed the efl_vg_dup api signature.
Reviewers: jpeg, cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5440
2017-11-08 15:55:52 +09:00
Jean-Philippe Andre 75a65ad41a tests: Properly define access beta/protected
This solves warnings (and likely errors) in the make check test cases
for ATSPI, since most of efl_access APIs are now marked as beta.
2017-11-08 15:28:35 +09:00
Bryce Harrington 50fba34e6c eina: Fix spelling/punctuation errors in documentation (prefix..promise)
Reviewers: cedric, ajwillia.ms

Subscribers: jpeg, segfaultxavi

Differential Revision: https://phab.enlightenment.org/D5438
2017-11-08 15:20:34 +09:00
Pawel Aksiutowicz e2ad1469a5 focus: Some typos for efl_ui_focus_manager fixed
Reviewers: stanluk, lukasz.stanislawski

Subscribers: lukasz.stanislawski, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5433
2017-11-08 15:16:04 +09:00
Carsten Haitzler a3b1b5d540 efl - fix build after cedric breakage
25b6a280c0 broke the build...
specifically building AGAINST efl.
2017-11-08 15:05:11 +09:00
Cedric BAIL 50cc85f426 elementary: fix quicklaunch support. 2017-11-07 16:08:39 -08:00
Cedric BAIL e32dd07c9d elementary: refactor and clean efl_quicklaunch_prepare. 2017-11-07 16:08:39 -08:00
Cedric BAIL d171cf9639 elementary: fix ELM_MAIN macro to properly expose symbol. 2017-11-07 16:08:39 -08:00
Cedric BAIL 4f70a29580 elementary: add debugging information to quicklaunch binary. 2017-11-07 16:08:39 -08:00
Cedric BAIL e729d6b994 elementary: use efl_exit to leave the mainloop instead of direct use of exit. 2017-11-07 16:08:39 -08:00
Cedric BAIL fa3e1dc784 evas: rely on ecore to reset evas rendering thread on fork. 2017-11-07 16:08:39 -08:00
Cedric BAIL d125892601 evas: rely on ecore to reset upscaler thread on fork. 2017-11-07 16:08:39 -08:00
Cedric BAIL 73e6404b1a evas: rely on ecore to reset ecore_pipe for evas_async_events.
Ecore being a dependency of evas, let's make our life easier and
rely on ecore to tell us when to reset pipe due to a fork instead
of trying to guess.
2017-11-07 16:08:39 -08:00
Cedric BAIL ee65414ef6 ecore: introduce ecore_init_ex/ecore_shutdown_ex to propagate argc,argv properly. 2017-11-07 16:08:39 -08:00
Cedric BAIL 3d72cb8da3 ecore: report startup time of the main loop with EFL_FIRST_LOOP environment variable. 2017-11-07 16:08:39 -08:00
Cedric BAIL dd40079185 ecore,elementary: move startup time accounting in ecore. 2017-11-07 16:08:39 -08:00
Cedric BAIL 25b6a280c0 elementary: move Efl new general purpose API to efl_general.h 2017-11-07 16:08:39 -08:00
Carsten Haitzler ede0587887 efl net - handle proxy helper fails better and abort proxy lookups
if proxy fails are too many then give up on queued lookups as they
likely will continue. i noticed a process continually spawning efl net
proxy helper because one queued lookup failed and could be looked up
so it kept trying again and again.

@fix
2017-11-07 22:42:49 +09:00
Jean-Philippe Andre a0dc0eb516 cxx: Fix slider example
The fix is not complete. We need to make efl_part() work nicely in C++:
 - Get the refs work properly (maybe without auto-del)
 - Generate the parts from the EO file as methods on the object

Final form should be close to:
  slider.indicator().format_string_set("%1.2f");

Where everything autocompletes nicely :)
2017-11-07 22:21:13 +09:00
Jean-Philippe Andre 528dfce251 slider: Export the part class
It needs to be exposed for things like c++ and others to work.
2017-11-07 22:17:04 +09:00
Jean-Philippe Andre 8aeccdb7a1 slider: Advertise indicator part in the EO file
There are 3 other indicator APIs that aren't in the part class... why?
2017-11-07 22:00:43 +09:00
Jean-Philippe Andre 0076f54112 evas: Yet another OSX build fix...
Please tell me this is the last one
2017-11-07 21:53:45 +09:00
Lauro Moura 7ab444acbc example: Add elocation to elm build
Summary:
9d2dcd92 requires elocation to build.

cxx examples still broken due to elm cleanup

Test Plan: make examples

Reviewers: jpeg, felipealmeida

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5426
2017-11-07 21:49:26 +09:00
Sungtaek Hong 439fbe4bcb efl_ui_radio: keep radio state when theme is changed
Summary:
during elm_widget_theme_apply() state was set to off when state is on.
@fix

Test Plan: change locale/theme when a radio is on.

Reviewers: jpeg, cedric, woohyun

Differential Revision: https://phab.enlightenment.org/D5432
2017-11-07 21:08:40 +09:00
Jean-Philippe Andre 12fa8caec5 evas: Another attempt at fixing OSX build
Build failed with LKI not found, as a symbol, but it's a macro.
Copy & pasted from evas_common_private.h
How can this work on one platform and not another? I don't get it...
2017-11-07 20:18:52 +09:00
Bryce Harrington 70f7f88eab eina: Fix spelling errors in documentation (matrixsparse..module)
Reviewers: cedric, ajwillia.ms

Subscribers: segfaultxavi, jpeg

Differential Revision: https://phab.enlightenment.org/D5425
2017-11-07 09:03:57 +00:00
Carsten Haitzler 3790c4d47a eina freeq - make it clear that content is invalid on submission
and that the free function cannot access content of the pointer
(unless the pointer memory size is 0).
2017-11-07 17:36:57 +09:00
Carsten Haitzler eb67a08c8d eo - fix freeq usage to not use freeq for a vtable cleaning
the freeq can't allow things to access the content of the pointer
because the content canbe written over by canary handling qhen
submitted to the freeq. clear it inline then just submit the final
pointer to the freeq.

@fix
2017-11-07 17:36:57 +09:00
Carsten Haitzler 784411800b elm win - note need for other display system code... 2017-11-07 17:36:57 +09:00
Amitesh Singh d6c9b37925 Efl.Ui.Slider: implement Slider.part & Ui.format functions
indicator_format_set/get & indicator_format_function_set are
now legacy APIs.
indicator format can be set by using generic Ui.Format function
e.g.
efl_ui_format_string_set(efl_part(sliderObj, "indicator"), "1.0%f");
2017-11-07 17:13:44 +09:00
Jean-Philippe Andre 80b0ef7537 elm: Fix make check (code_widget)
elm_code_widget is causing a lot of trouble as it's relying on internal
access to elementary, without being built as part of elementary.so. Many
EAPI symbols are exported that shouldn't need to be, as they are only
internals of elm.
2017-11-07 14:59:01 +09:00
Jean-Philippe Andre a438e9382c evas: Fix make check
Because of this I couldn't test my previous patches properly and now
realized that I also broke make check... >_<

See D5419
2017-11-07 14:57:14 +09:00
Jean-Philippe Andre 6ecf3fd6b7 elm: Fix ui.win "bg" test case
elm_colorselector is legacy only (for now, unfortunately).
This means that elm_colorselector_class_get() crashes with weak linking.
Strong linking would make the compilation fail.
2017-11-07 14:52:48 +09:00
Jean-Philippe Andre d39bbc1491 elm: Create legacy widgets with elm_legacy_add
This will be used to solve issues around style_set:
if the widget is legacy or pure eo we may need to select a different
style. So in the constructor we need to know whether we are legacy or
eo. Note that calling style_set in finalize only is too late as we would
lose information such as efl_text_set() called inside efl_add().
2017-11-07 14:50:31 +09:00
Jean-Philippe Andre 6cea4993e0 elm: Don't do anything before construction
Obviously ui.win is still the ugly exception.
2017-11-07 14:43:22 +09:00
Jean-Philippe Andre ee90f72a76 elm: Call efl_access_type_set after construction
I don't think it is necessary to call this before construction, and that
could instead lead to issues. It's just weird overall.
2017-11-07 14:43:22 +09:00
Carsten Haitzler 6a47c2243e efl ui win - make win centering work with multiple screens
this should fix T6323
@fix
2017-11-07 13:53:27 +09:00
Vitalii Vorobiov ee93543799 evas_vg_load_svg: get rid of static Evas_SVG_Parsing
Summary:
Refactoring.
It is good to store values from that struct in a parsing/loading context

static variable is a big NO NO:
1. Ugly code design,
2. Might not work when trying to load more than one SVG file.

@fix

Reviewers: jpeg, smohanty

Subscribers: jenkins, cedric

Differential Revision: https://phab.enlightenment.org/D5399
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 66e0caccb7 evas_vg_load_svg: default stop opacity color should be 255, not 0
@fix
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov d98e2323ad vg_common: property apply "objectBoundingBox" morphings to radial gradient
When objectBoundingBox flag is set up, all gradients should morphed into
multiple gradients for every entity that has gradient to be applied on
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 6bf5d9d96e svg_parse: parse correct values for radialGradient
Especially Radius calculation which was a huge pain to find formula
within SVG documentations!
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov f81f031ceb vg_common: apply related coordinates for linear gradient
multiply it with object size or with view box sizes depending on
gradientUnits value
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 405e56ac55 svg_parse: parse linear gradient variables accroding to gradientUnits
There are difficult cases according to
https://www.w3.org/TR/2000/CR-SVG-20000802/pservers.html
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 6139aa78d5 svg_parse: implement <length> parse
Accodring to https://www.w3.org/TR/SVG/types.html#Length
length ::= number ("em" | "ex" | "px" | "in" | "cm" | "mm" | "pt" | "pc" | "%")
This is still work in progress since some of lengths should be treated
differently, for example gradient lengths
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 1354c1c8ab svg_parse: save global size variable to use when gradient size recalc
For example while userSpaceOnUse it uses not figure's x,y,w,h
but entire canvas, so we need to save it publically and recalc while
parsing (or after)
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov fac649c7f4 vg_common: parse and store userSpaceOnUse (for gradient) when it is set
So it can be calculated during the draw later on
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 73bfd4f04d efl_gfx_path: fix typo in _path_bounds_get
Wrong position was used while going through the array of
points

@fix
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 532557cabd vg_loaders/svg: set up default focal values for radialGradient
Since when not specified, focal values same as center points
fx = cx, fy = cy by default

@fix
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov a44daaa394 ector: use cairo_pattern_add_color_stop_rgba in gradient_radial
It actually invoked SIGSEGV when trying to load SVG file with Radial
Gradient

@fix
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 78bc406640 saver/svg: parse loaded tree data into svg XML file and save it
Just base source code which will parse all structures of svg tree into
xml text to save current vector image into file

@feature
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 7d9c1256a3 vg_savers/svg: empty (for now) module that will save svg in original file
Just as a starter to make a working background that, later on, will go
through Svg_Node's and build a certain source code to be saved in SVG
picture as a file
2017-11-07 11:54:09 +09:00
Vitalii Vorobiov 3f75c92ca9 evas_vg_cache: load svg from any file, not from defined only
so it doesn't only load from eet or edj only
but also from those any extensions who is ACTUALLY eet, but named as,
for example, like, "file_with_svg.dev"

@fix
2017-11-07 11:54:08 +09:00
Jean-Philippe Andre d4a3d2f5de evas: Fix invalid header protector
clang is smart enough to warn about this.
I've mentioned it multiple times...
2017-11-07 11:54:08 +09:00
subhransu mohanty b038d7df25 Remove evas internal dependency from the evas_font module
Summary:
dev branch : devs/subhransu/font

The Final goal is to move the evas_font module to ector so that both ector and evas can reuse the code.
make the api simple so that sam eapi can be used by evas_textblock and ector text.

This is the 1st stage to achive that gola, first remove the evas internal dependancy as much as possible before moving to ector library.

Reviewers: jpeg, raster, herdsman, cedric, id213sin

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5419
2017-11-07 11:34:53 +09:00
Jean-Philippe Andre a75b3dcdfb elm: Try to fix compilation (link) for OSX 2017-11-07 10:43:07 +09:00
Jean-Philippe Andre 066f2c5cb7 evas: Add some crash prevention checks
This could happen if objects still have references while evas is being
shut down (a bad situation).
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre f90b88422c tests: Fix make check for atspi beta APIs
See 5c997b3aaa
Ref D5365
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre c5d618e851 cxx: (Temporary) fix for make check
This fixes the C++ compilation tests.

list<int> is not allowed by eolian anymore, as the semantics were
unclear whether a pointer to int was passed, or if the int was stuffed
inside the list by casting.

ptr(string) is also not allowed as it's a pointer to a pointer type.

Both of the above types are strange when it comes to bindings. While C++
could probably be made to work, it's not clear we could have such types
in other bindings. Those types are in fact likely not so useful, as most
APIs can be designed around those restrictions.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 58527a3dbb cxx: Fix log color in eina_log.hh
Changed from invalid "black" to arbitrary choice of green.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre ccc3efd77d elm: Fix examples/tests using elementary_config
elementary_config.h should not even exist. It's been hijacked as a
private header for elementary, but all "real" configuration is stored in
efl's main config.h now.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 778c5afb3f cxx: Fix some examples, disable or remove others
make examples now builds all c++ examples but some of them are in fact
empty skeletons. Those either need some c++ love or the final eo api to
be ready (eg. menu, popup, ...).

I removed some examples that don't have an exact equivalent in EO since
the widget is legacy only.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 4f98b54915 cxx: Add beta define to Evas.hh
This is probably temporary as well, but it's necessary to make examples
compile (with rectangle).
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 5f5325ea33 cxx: Fix binding temporarily (efl/interfaces)
This uses the new cref keyword instead of inout, as the c++ code has no
access to the internals of struct Efl.Text.Cursor.Cursor

Something tells me cref may not be the perfect solution here (we lose
information on whether this is in, out or inout).
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre c490392ee6 cxx: Fix ifdef protections in function impl
Mote: for protected we should use "protected:" if that is somehow
possible.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 64698daeb5 cxx: Add support for operator == with objects 2017-11-07 09:57:24 +09:00
Jean-Philippe Andre d4c92b39df cxx: Modify button example with wref
This is more of an experiment than anything else.
@felipealmeida I would like to know what you think.

Notes:
 - events still need a better API (event_add isn't part of the object
   definition...).
 - references are an issue, when you want to actually delete an object.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre e7009b77a2 cxx: Add experimental "easy" way to use wref
I hid it behind ifdef for now as I'm very much unsure of what I'm doing.
This whole modern C++ thing is still weird to me :)

Prerequisite:
 #define EFL_CXX_WREF_EASY

This allows constructs such as:

  auto wobj = obj._get_wref();
  std::cout << wobj->text_get() << std::endl;
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 73ec85aeff cxx: Add _get_wref() convenience to all classes
This allows constructs like:

  auto w_obj = obj._get_wref();
  auto cb = std::bind([w_obj]() {
    auto o = w_obj.lock();
    if (!o) return;
    o->call();
  });
  event_add(..., obj, cb);

Note: I don't like how those wref work. Close to c++ wref but far from
EFL wref.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 88e10da36b cxx: Mark wref::lock as const
This allows passing in wref to a lambda.
If we passed normal refs, we would end up with dangling references and
many ERR messages.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 8c991b104c cxx: Add nullptr constructor for weak refs
This allows constructs such as:

  wref_obj = obj;
  ...
  wref_obj = nullptr;
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 0d1a2db617 cxx: Completely rewrite box example
This was showing off box transitions, which don't exist in EO API.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 9c9278cd45 cxx: Fix a few examples
- Calendar: Some examples can't be ported. Not good.
 - Toolbar: Needs the new API to be completed.
 - Clock: Crashes at runtime.

Ping @felipealmeida
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 03b22c4d7b cxx: Instantiate objects with 2 refs
This is the original meaning of efl_add_ref().
Somehow the "ref" bool was set to true in the first call, and false in
the second call.
2017-11-07 09:57:24 +09:00
Jean-Philippe Andre 3f64dcc521 cxx: Place beta API declarations behind ifdef
NOTE: protected APIs are placed behind ifdef as well in the
implementation file. This makes sense since the define is required for
the C code to compile, but this isn't what @protected means.
2017-11-07 09:57:24 +09:00
Jeeyong Um 7811b0e5b7 edje_pick: Fix segfault due to wrong memory free 2017-11-07 00:50:38 +09:00
Chris Michael 12947e01e8 evas-object-main: Fix potential null dereference
Coverity reports that EVAS_OBJECT_DATA_SAFE_GET returns NULL here (184
out of 188 times). As such, we should not be calling
_event_animation_object_get with a null object so add a null check here.

Fixes Coverity CID1381713

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 10:17:29 -05:00
Chris Michael 6c76fdb824 evas-object-main: Fix null dereference
Coverity reports that EVAS_OBJECT_DATA_SAFE_GET returns NULL here (184
out of 188 times). The _all_animation_objects_cancel function
directly dereferences the obj parameter passed into it, so lets null check it
before calling that function.

Fixes Coverity CID1381711

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 10:13:08 -05:00
Chris Michael 04d1fe7299 evas-object-main: Fix null dereference
Coverity reports that EVAS_OBJECT_DATA_SAFE_GET returns NULL here (184
out of 188 times). The _all_animation_objects_cancel function directly
dereferences the obj parameter passed into it, so lets null check it
before calling that function.

Fixes Coverity CID1381710

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 10:10:50 -05:00
Chris Michael 01920b996a emotion: Fix data race condition
Coverity reports that we access vfmapped here without holding a lock.
This patch implements eina_lock_take/release while accessing
priv->vfmapped.

Fixes Coverity CID1381624

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 10:07:48 -05:00
Chris Michael fd79e32dbd evas-wayland-shm: Do not dereference a potentially freed pointer
Coverity reports that _evas_dmabuf_buffer_init function here can
potentially free the surface that was passed into it. If that happens,
we should not be calling the _fallback function with surface as the
parameter as that will directly dereference the freed pointer.

Fixes Coverity CID1381707

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 10:02:35 -05:00
Chris Michael de1e18ef7d evas-gl-cocoa: Remove need for useless region_free function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:28:53 -05:00
Chris Michael 3ae469e648 evas-gl-drm: Remove need for useless region_free function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:27:39 -05:00
Chris Michael 85a9716c8f evas-gl-sdl: Remove need for useless free_region function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:26:13 -05:00
Chris Michael c8e5614830 evas-gl-x11: Remove need for useless free_region function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:25:19 -05:00
Chris Michael e04ad61ab4 evas-wayland-egl: Remove need for useless free_region function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:23:13 -05:00
Chris Michael 39184e78af evas-wayland-shm: Remove need for useless free_region function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:21:59 -05:00
Chris Michael 31a7963196 evas-software-x11: Remove need for useless free_region function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:19:20 -05:00
Chris Michael 5edae8b9c1 evas-software-gdi: Remove need for useless free_region function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:17:02 -05:00
Chris Michael f32c1ece7e evas-software-ddraw: Remove need for useless free_region function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:15:54 -05:00
Chris Michael 9f5555a887 evas-eglfs: Remove need for useless free_region function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:14:14 -05:00
Chris Michael 5f897542aa evas-drm: Remove need for useless free_region function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:13:12 -05:00
Chris Michael 6016ce8133 evas-software-generic: Check for render engine function before calling
In most engines which inherit from software_generic, they do not
implement the outbuf_free_region_for_update function. Most engines
have it as an unused function. If we simply add a check here, then we
can reduce the need for having useless function in multiple engines.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-06 09:10:28 -05:00
WooHyun Jung 68b366c831 efl_ui_calendar: apply efl_ui_focus_composition 2017-11-06 16:28:29 +09:00
Youngbok Shin a386597ad9 evas textblock: handle ellipsis when text's height exceed its area by "br"
Summary:
Textblock's ellipsis feature only worked when text's width exceeds its area.
So, it didn't work when text's height exceeds its area by "br" tags.
This patch will do ellipsis when only ellipsis=1.0 is set.
@fix

Test Plan: make check

Reviewers: herdsman, raster, cedric, jpeg, sohyun

Reviewed By: raster

Subscribers: woohyun

Differential Revision: https://phab.enlightenment.org/D5412
2017-11-06 11:29:43 +09:00
Youngbok Shin de9f0aff57 edje: don't return negative width and height from _parts_extends
Summary:
It should return width and height with positive values or zero.
@fix

Test Plan: make check

Reviewers: raster, jpeg, cedric

Reviewed By: raster

Subscribers: jiin.moon

Differential Revision: https://phab.enlightenment.org/D5422
2017-11-06 11:06:41 +09:00
Cedric Bail 769a970be0 eo: fix typo.
Thanks Gustavo.
2017-11-04 13:26:21 -07:00
Sungtaek Hong 70b23b5fc7 edje_cc_script: remove build warning
Summary: initiate pointer var with NULL to remove build warning

Reviewers: conr2d

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5423
2017-11-04 14:41:44 +09:00
Cedric Bail b7066e3352 eo: add helper to manipulate Eo object as Eina_Value. 2017-11-03 15:31:31 -07:00
Cedric Bail a1e9497461 eo: refactor use of efl_replace. 2017-11-03 15:31:31 -07:00
Cedric BAIL e891a01749 eina: add a function return a reference to a copy of Eina_Value. 2017-11-03 15:31:30 -07:00
Andy Williams 624b960155 elm_code: Trying some markdown syntax, this is complex 2017-11-03 21:05:08 +00:00
Andy Williams 2b3e462858 elm_code: Trying some markdown syntax, this is complex 2017-11-03 21:03:58 +00:00
Derek Foreman 376be13f46 edje_recc: don't use negative exit code in a /bin/sh script
Apparently this isn't well supported by dash, which will print an
error and return a 2, where zsh and bash will return 255.

Explicitly returning 255 seems least surprising.

see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772322

 #IHaveNoIdeaWhatThisScriptDoes
2017-11-03 15:46:11 -05:00
Daniel Kolesa 0dbbb18171 eolian: disallow ptr() on things that are already pointer-like
This disallows deeply nested pointers, you can only explicitly
ptr() on types that are strictly value types.

For a few cases where it was necessary to override this behavior,
you can use legacy(ptr(x)) as a temporary measure.
2017-11-03 15:30:10 +01:00
Cedric Bail e5d1cc731a ecore_evas: always find a source for ticking legacy animator.
As we do not know when a window won't be able to tick, and we do
not know which window a legacy animator is attached to, we require
all windows to tick as often as they can and only generate one tick
per loop run.

This might need more adjustement especially with multi output.
2017-11-02 15:26:08 -07:00
Andy Williams 82b0da0c8a Correct struct labelling
Avoids linking every occurrence of 'The'
2017-11-02 20:57:47 +00:00
Daniel Kolesa 4f5b72a3ed eo files: convert various to use @cref 2017-11-02 16:41:01 +01:00
Chris Michael 5332f3355b efl-ui-focus-manager: Remove set but not used variable
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-02 10:05:56 -04:00
Daniel Kolesa 27929f9467 elm radio: fix build of things that don't enable eo APIs 2017-11-02 14:48:52 +01:00
Daniel Kolesa a5d77546a8 docgen: better space out includes 2017-11-02 14:36:00 +01:00
Daniel Kolesa e46d6d41d2 docgen: fix generation and generate notes correctly 2017-11-02 14:29:20 +01:00
Daniel Kolesa 9ec1b4fa53 eolian: fix tests following the container restrictions 2017-11-02 14:03:30 +01:00
Daniel Kolesa 263c3ac2ae eio: properly mark array contents as ptr 2017-11-02 13:53:14 +01:00
Daniel Kolesa cf63573e73 eolian: only allow reference (ownable) types in containers 2017-11-02 13:51:02 +01:00
Amitesh Singh efa6fb70e6 elm test: panes - revert the code
test_panes.c code was added into previous patch by accident.
2017-11-02 17:40:02 +09:00
Amitesh Singh 225b704651 Efl.Ui.Radio: remove value{} api
Efl.Ui.Nstate already implements value{}.

@fix
2017-11-02 17:28:48 +09:00
Cedric BAIL 83493bba73 ecore_evas: if an async rendering is still going on, there won't be a new one starting. 2017-11-01 15:33:44 -07:00
Cedric BAIL 925d558780 ecore_evas: do not propagate drawing change blindly from sub surface to parent.
It is not because a round of rendering happen for a child, that it result in
actually drawing anything in the parent. The parent will always be aware of
the rendering request of the sub surface and we should only track what the
parent think.

T6049

Tested-by: Derek Foreman <derekf@osg.samsung.com>
2017-11-01 15:32:36 -07:00
Sungtaek Hong 5f7710f561 efl_ui_radio: remove some legacy code
Summary:
This uses constructor/destructor instead of group_add/group_del.

Note: finalize can't be used for theme loading as any action done
inside
efl_add(...) would be lost (eg. part text set).

Test Plan: 1) run elementary_test -to radio

Reviewers: jpeg, woohyun, cedric

Subscribers: akanad

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-01 10:34:45 -07:00
Chris Michael 0a25543ed5 evas-wayland-shm: Fix formatting
Make this line readable in 80 columns

NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-01 12:39:09 -04:00
Chris Michael 1ed8e4c84e evas: Minor formatting fixes
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-01 12:38:58 -04:00
Chris Michael 945764eb7c evas-drm: Fix formatting
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-01 12:38:44 -04:00
Marcel Hollerbach f2da8a7f54 efl_ui_focus_manager: remove strange naming of a function
this is just normal next or prev, the prepare is done on the caller side
now
2017-11-01 15:26:52 +01:00
Marcel Hollerbach 08d104498c efl_ui_focus_manager: improve debug informations 2017-11-01 15:26:52 +01:00
Chris Michael 9021c752cb ecore-drm2: Fix issue of not being able to set output mode
If we pass in screen geometry here when trying to set an output mode,
we can encounter "out of memory" errors from libdrm with outputs
that have a high resolution. As it turns out, we should be passing 0, 0 for
the x/y values when trying to set an output mode.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-11-01 08:52:03 -04:00
Daniel Kolesa b7ebc1cd25 efl_ui_win: revert accidental override remove 2017-11-01 13:40:38 +01:00
Lukasz Stanislawski 5c997b3aaa elm: mark access interfaces as beta
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5365
2017-11-01 21:31:46 +09:00
Jean-Philippe Andre 824792f09d elm: Major cleanup of EO files
This prevents legacy EO classes from being exposed through .eo.h headers
or .eo in share/eolian/includes. Also removes a slew of useless xxx_eo.h
intermediate headers.

Notes:
 - elm_systray has no proper API: it's not clear if the EO API should be
   released (in which case it needs to be renamed to efl_something) and
   there is no legacy API to create a systray object.
 - Some files have been placed in a "FIXME" section, as I believe they
   are necessary within EO land, but at the same time still don't
   conform to the interfaces (eg. name starts with elm_).
 - elm_interface_scrollable is required by photocam. This means photocam
   needs to be adapted to fit the EO scroller API (still to be
   completed, I believe).

Bugs:
 - This breaks most C++ examples. I KNOW. And I'm working on it.

Ref T5301
2017-11-01 21:23:31 +09:00
Daniel Kolesa f851fa511e eolian: add part validation (including dup check with funcs) 2017-11-01 13:19:33 +01:00
Daniel Kolesa b4705ea968 elementary: use @cref where possible 2017-11-01 12:50:36 +01:00
Daniel Kolesa eab6f009e2 eolian: add @cref as alternative to @in
This is a "pass by reference to const" equivalent. There is no explicit pointer
and currently it's the same as ptr(const(x)) on the type. However, it is also
usable on properties.
2017-11-01 12:40:39 +01:00
Godly T.Alias 0496b7988a Genlist Item Pin Feature
Summary:
**@feature** T6241

This feature enables genlist to pin an item to viewport which will
be available always for user to view/select.

**Use Case**:
In a big list of music, most times when user finds a song which they
like, before playing that they may want to go through the entire list
to check whether there is some other good songs, but
after seeing the entire list user have to again scroll back to the
position of item which they liked to play it then.
In this case item pinning can be used, so that the item
which they want to keep for future selection can be pinned
and then it will remain in viewport, finally when user want to do
operation on item, it will be readily available in viewport.

Signed-off-by: Godly T.Alias <godlytalias@yahoo.co.in>

Test Plan: Elementary Test -> Genlist -> Double click on items to enable/disable pinning

Reviewers: raster, cedric, prince.dubey, SanghyeonLee

Subscribers: rajeshps, jpeg, shilpasingh

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5340
2017-11-01 16:11:30 +09:00
JinYong Park 9d946fa839 Ecore_Imf: fix wrong annotation and enum name
Summary:
There are wrong annotation about version and wrong enum name
so fix that.

Reviewers: jpeg, cedric, akanad

Differential Revision: https://phab.enlightenment.org/D5403
2017-11-01 13:09:18 +09:00
JinYong Park a1935164fe Eet: fix wrong doxygen definition
Summary:
Eet_Image_Encoding and Eet_Colorclass is from enumeration in Emile,
but it's definition is typedef, not enum.

It makes broken link like below webpage.
https://docs.enlightenment.org/efl/current/group__Eet__File__Image__Group.html

In above page, Eet_Image_Encoding is not linked.

So doxygen documentation should be changed to typedef.

Reviewers: cedric, jpeg, myoungwoon, conr2d

Differential Revision: https://phab.enlightenment.org/D5411
2017-11-01 13:08:58 +09:00
JinYong Park b44889305a Elm_Entry: Add annotation to unnamed enum
Summary:
There are unnamed enumeration in Elm_Entry,
so add annotation and names like D5376 (https://phab.enlightenment.org/D5376)

Reviewers: jpeg, cedric, myoungwoon

Differential Revision: https://phab.enlightenment.org/D5401
2017-11-01 13:08:36 +09:00
Bryce Harrington 054e817572 eina: Fix spelling errors in documentation (log..matrix)
Reviewers: cedric, ajwillia.ms

Subscribers: segfaultxavi, jpeg

Differential Revision: https://phab.enlightenment.org/D5417
2017-11-01 11:36:50 +09:00
Jean-Philippe Andre 9cec14918c evas: Move evas_canvas.eo to legacy-only
This isn't meant to be installed. The canvas API in EO is based around
the interfaces Efl.Canvas and the widget Efl.Ui.Win. Anything else is
not EO (eg: ecore_evas, evas, ...)

Note: evas_canvas3d is the last remaining thing that is installed along
EO files, but those are all beta APIs.
2017-11-01 11:22:33 +09:00
Jean-Philippe Andre b8ca1272ae evas: Add seat argument to 'pointer_inside' (EO)
This merges pointer_inside and pointer_inside_by_device.
Affects only EO.
2017-11-01 11:22:33 +09:00
Jean-Philippe Andre daa1547586 edje_cc: Fix shadow warning (global scope) 2017-11-01 11:22:33 +09:00
Jean-Philippe Andre ebe945c8d8 evas: Remove specific pointer_inside API
This is a name clash. It doesn't matter too much since Evas.Canvas isn't
meant to be exposed to the EO API.
2017-11-01 11:22:33 +09:00
Chris Michael 20acefb419 evas: Remove erroneous EINA_UNUSED
'output' variable is actually used in this function, so remove
EINA_UNUSED from function parameter

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-10-31 10:02:40 -04:00
Jaehyun Cho a47ecc8713 efl_animation: Change protected methods to be internal methods
target_state_save, target_state_reset, target_map_reset methods are used
internally.
Therefore, those methods become internal methods.
2017-10-31 20:36:49 +09:00
Bryce Harrington 57d0617fec eina: Fix spelling errors in documentation (file..lock)
Summary: Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

Reviewers: cedric, ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: segfaultxavi, jpeg

Differential Revision: https://phab.enlightenment.org/D5410
2017-10-31 11:31:41 +00:00
Daniel Kolesa c8e7ad530e eolian: properly free parts 2017-10-31 12:15:23 +01:00
Daniel Kolesa 0a92c0c61f eolian: fill parts into db 2017-10-31 12:15:23 +01:00