Commit Graph

2141 Commits

Author SHA1 Message Date
Jeeyong Um e8711baec3 edje_cc: Clean up repeated code in color setter
Summary: Remove duplicated code

Reviewers: jpeg, cedric

Reviewed By: jpeg

Subscribers: bu5hm4n

Differential Revision: https://phab.enlightenment.org/D4769
2017-04-18 18:42:51 +09:00
Carsten Haitzler 39baea1053 efreet cache create - check return values of i/o funcs
this is pretty harmless but it checks these and at least reports an
error...

this fixes CID 1361941 + 1361940

@fix
2017-04-18 17:30:50 +09:00
Sungtaek Hong aaefd66d0c edje_cc: add short state handler for part.description.clip_to
Summary:
part.clip_to statement has short handler named "part.clip"
while part.description.clip_to does not.

Its short handler name should be "part.description.clip"
in order to have same experience with "part.clip".

Reviewers: cedric, Hermet, jpeg, conr2d

Reviewed By: conr2d

Subscribers: conr2d

Differential Revision: https://phab.enlightenment.org/D4789
2017-04-18 16:48:04 +09:00
Jean-Philippe Andre acb9ae70fe eo/elm: Simplify box/grid EO API
After talking with @eunue I realised that the way I'd first
implemented the box/grid "pack" API was simply too complicated.
I had tried to make it possible to change the layout function
at runtime, like good old evas box, but since there are no function
pointers in EO the final design was really convoluted.

If someone really needs to change the layout of a box at runtime,
just create your own subclass, or unpack all items and repack them
in a new box.

Note: there are still some issues with the layout params & flow
2017-04-18 15:34:29 +09:00
Carsten Haitzler 2171855a1a elm test - fix windows compilation as _close is used in windows
fix T5391 - windows compilation due to symbol clash

@fix
2017-04-17 11:31:22 +09:00
Jean-Philippe Andre 4cbff5f0ea evas filters: Fix maps with filtered snapshots
Another wonder of evas render... maps, clips, snapshots, filters...
This fixes animations with windows that have a snapshot decoration.
2017-04-14 11:26:44 +09:00
Jean-Philippe Andre c53f1526f1 evas: Make save() work on snapshots
This make save() work on snapshot objects, provided the call
is done from inside render_post.

Also, this saves the filtered output of an image, rather than
its source pixels. Any call to save() on a filtered image must
be done from post-render as well.

Fixes T2102

@feature
2017-04-14 11:26:44 +09:00
Jean-Philippe Andre 1bf24f8762 evas filters: Refactor to support reuse of buffers
This will reuse existing buffers by resetting only the minimum
required in the filter context (also reused). Work in progress,
as the actual reuse is disabled for now.
2017-04-14 11:26:44 +09:00
Jean-Philippe Andre 9aa335cecc evas filters: Remove warning about OpenGL
Well... I'm working on making all this work, so the log
is a bit irrelevant now.
2017-04-14 11:26:44 +09:00
Jean-Philippe Andre 513d686628 elm_test: Add slider to control blur radius 2017-04-14 11:26:43 +09:00
Jean-Philippe Andre 1336b2d9e0 evas filters: Expand snapshot regions by blur radius
When using a snapshot object we have access to exactly all
the pixels below it inside the snapshot surface. So, in order
to produce a nice blur, it is necessary to expand this snapshot
and then clip it otherwise the edges will look a bit ugly.

Unfortunately, there are still places where blurs didn't look
so good, as objects below an opaque region would never get
rendered into the snapshot object. So the edges, inside a
snapshot object, around an opaque region would have blur
artifacts.

This fixes that by shrinking the cutout regions by the radius
of the filter. Eg for blur this is the blur radius.

The test case in elm_test can exhibit this fix very clearly:
a red glow would be visible around the opaque rectangle, but with
these changes we instead see the blurry edges of the objects
below the rectangle.
2017-04-14 11:26:43 +09:00
Jean-Philippe Andre 1639c06118 elm_test: Add obscuring rectangle in snapshot test
This will test the obscured region optimization for the
filters.
2017-04-14 11:26:43 +09:00
Jean-Philippe Andre 096af26dd6 elm_test: Add a test case for evas snapshot
This showcases the object (not a widget) and will be the basis
for a necessary optimization patch.
2017-04-14 11:26:43 +09:00
Jean-Philippe Andre 5bce7120f1 evas filter: Implement blur filter in pure GL
Wait a second though, this implementation is not only incomplete
(no support for box vs. gaussian blur), it's also insanely bad in
terms of performance. Small radii may work fine, but at least blurs
render properly in GL with this patch (no more glReadPixels!).

The shader needs a lot of love, including in particular:
- support for 1D box blur single pass
- support for 1D gaussian (or sine) blur
- use linear interpolation and N-tap filters
- separation of 2D blur in two passes (high-level logic)
- potentially separation of large 1D blurs in 2 or more passes
  knowing that 2sigma == sigma + sigma when it comes to the gaussian
  bell curve.
2017-04-14 11:26:43 +09:00
Jean-Philippe Andre 2ef8d6f39a evas filters: Refactor ector and gfx filters A LOT
Alright, so this is a massive patch that is the result of
trying to get rid of unused or poorly implemented classes in
ector. Originally ector was meant to support VG but extend to
things like filters as well. At the moment, ector's design
makes it quite hard to plug in the filters.

For now I think it's easier to implement the GL support for
the filters directly in the engine, where I hope to interfere
as little as possible.

This massive patch keeps only the required minimum to support
a versatile gl buffer that can be mapped, drawn or rendered to (FBO).
It's extremely inefficient as it relies on glReadPixels and lots
of texture uploads, as well as conversions between ARGB and Alpha.

Another type of GL buffer is a wrap around an existing GL image,
but that one is read-only (map or draw: no write map, no FBO).

No, all the filters run fine, and the high-level implementation
(evas_filters.c) does not need to know whether the underlying engine
is SW or GL. One problem though appears with the blending or blurring
of some Alpha buffers, the colors are wrong.

This patch removes more lines than it adds so it must be good ;)
2017-04-14 11:26:43 +09:00
Daniel Kolesa 53fef30db0 eolian: allow extending eolian-generated classes from within C
If you define either the macro MY_CLASS_EXTRA_OPS for normal
methods/properties or MY_CLASS_EXTRA_CLASS_OPS for class methods
or properties, which contains a comma-delimited list of ops defs
(i.e. EFL_OBJECT_OP_FUNC(...), ...) right before including the
generated my_class.eo.c file, the definitions from these will
be included in the actual class. This can be used to override
certain things in a class internally without exposing it to
Eolian, or for testing/debugging.
2017-04-13 15:56:15 +02:00
JinYong Park 86008fa411 notify: fix hide animation logic for popup
Summary:
When popup is timeout, notify call hide func, and send time out event to popup.
After popup receiving time out event, popup hide object again,
so hide animation doesn't show.
And notify hide function doesn't send hide signal to block events part,
(but dismiss function send it)
So add that signal.

Test Plan:
 1. elementary_test -to popup
 2. click first item, "popup+center+text"
 3. compare time out event before this patch and after.

@fix

Reviewers: herb, singh.amitesh, Hermet, cedric, raster, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-04-12 14:25:53 -07:00
Jean-Philippe Andre fd69113f6a evas map: Fix test case "Flip Page"
Since 9b7ac51943 evas map tries to avoid recalculating
stuff when the map parameters have not changed. Unfortunately the
code in elementary_test -to "Flip Page" was badly written. It was
modifying a constant's internal value (after ugly cast). So the
memcmp() and all other checks would return successfully, as the
exact same pointer was being compared to itself.

So, I've fixed the comparison by adding some forgotten parameters
(perspective) but most importantly I fixed the map API usage in the
test case.
2017-04-10 19:38:56 +09:00
JEONGHYUN YUN 5fe350d2f7 edje: fix name check matching correctly
Reviewers: jpeg, jypark

This could lead to a crash as we were checking against NULL on
the wrong pointer.

@fix

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-04-06 15:20:49 -07:00
Daniel Kolesa 7b20950aaf eolian: fix incorrect function prototypes in legacy headers
C functions that take no arguments need to have void in the arg
list. Otherwise, it would mean taking any number of arguments.
2017-03-31 17:49:41 +02:00
Gustavo Sverzut Barbieri a93c2740f2 others: support efl_net_dialer_windows.
these are not working on windows yet due other factors, anyway add the
proper ifdefs
2017-03-29 12:44:19 -03:00
Jean-Philippe Andre c234422357 win: Mark unstable APIs as @beta (stack API)
We have a tag for unstable API, use it. It'll be visible in the
doc and force users to add the macro before being able to compile
code.

This amends d8dd685966.
2017-03-29 09:51:28 +09:00
Carsten Haitzler 8b8c8bf7df eet cmdline tool - dont give garbage certificate length if there is none 2017-03-24 14:14:51 +09:00
Jean-Philippe Andre 2787f0fe5d evas: Fix a rare issue with GL and map and mask
The things you learn to love...

The situation was:
- An object is mapped (naviframe in an animation)
- One of its children has a mask
- The window is rotated by 90 or 270 degrees (landscape)

The mask glsl code to invert the x,y coordinate depends on the
screen rotation and this somehow was wrong.

Tested on Tizen and in elm_test "Masking", made with @jiin.moon.

@fix
2017-03-22 14:29:02 +09:00
Andy Williams f6434c0e0d elm_code: Update and demo status messages inline 2017-03-17 10:07:04 +00:00
Cedric BAIL 9b924408cd elementary: fix elm_code widget tests by actually setting a font. 2017-03-10 15:01:02 -08:00
Jean-Philippe Andre fc40d3d559 genlist: Fix invalid state of reused content
If an item is marked as disabled it should be re-enabled
before being put in the reusable contents cache. Otherwise
a following use of this object may result in a disabled
item being used, making the UI effectively disfunctional.

Also modify the test case to show and test this behaviour.

Add an efl_isa() to protect calls to elm_widget APIs.

Fixes T5236

@fix
2017-03-10 11:22:13 +09:00
Jean Guyomarc'h 9ba17f6902 edje: better error message when a po file does not exist 2017-03-09 23:16:16 +01:00
JEONGHYUN YUN 3147066865 multibuttonentry : fix box indicated item correctly in item_insert_before and item_insert_after
Summary:
If user added item with item_insert_before and item_insert_after, item was not displayed.
For this reason, fixed box indicated item correctly from reference->button to VIEW(reference).
Additionally, remove the unused variable button in _Multibuttonentry_Item struct.

Reviewers: woohyun, CHAN, cedric, jpeg

Reviewed By: CHAN

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4708
2017-03-09 16:11:34 +09:00
Jean-Philippe Andre 437ae4a3d3 elm_test: Add a test case for Emojis
Yay to full color characters. The list of selected emojis is
quite random. Some more could be added.

Just two remarks:
- Aren't they supposed to scale down?
- Why is my grinning face always ugly?
2017-03-08 19:21:24 +09:00
Jean-Philippe Andre 8b9361e75c tests: Don't print garbage
GLView tends to print some random garbage when using the
GLView Gears test. That's because we're allocating and printing
a 0 byte buffer. Don't do that.
2017-03-08 15:51:02 +09:00
Jean-Philippe Andre 265c851a8f evas gl: Fix version detection for GLES 3.1
It was assumed that GLES 3 would only work with EGL but in fact
OpenGL 4.3 & 4.5 are supersets of GLES 3.0 & 3.1 respectively. So
GLX should also support GLES 3.0 or GLES 3.1 for evas gl, if the
driver supports it, of course.

Of course while doing this patch things didn't go like they were
supposed to go. I'm currently using NVIDIA's proprietary driver,
that conveniently provides EGL with GLES 3.2. But wait, there's
a catch: GL_VERSION is "OpenGL ES 3.2 NVIDIA" except that none
of the functions of GLES 3.1 or GLES 3.2 are actually supported.
Those functions are only present in the GLX/OpenGL variant of the
driver. Thanks so much for making my life easier...

So yeah, this patch contains a hack for those invalid versions
of GLES 3.x. What was supposed to be a small fix became a huge
mess.

Also add a comment about the possibly invalid auto-upgrade from
GLES 2 to GLES 3.

This adds a test case in elm_test, but only to verify that
elm_glview_version_add(3) actually works. We need a proper GLES 3
test case, eventually (and 3.1, 3.2 of course).
2017-03-08 15:44:39 +09:00
Jaehyun Cho f3647f24d5 edje_cc_parse: Support edje_cc in path containing space character
Previously, edje_cc in a path containing space character was not
supported. (e.g. "/usr/local/s p a c e/bin/edje_cc")

Now, to resolve above issue, edje_cc path is treated with double
quotation marks.

On Windows, if command begins with double quotation marks, then the
first and the last double quotation marks may be either deleted or not.
(See "help cmd" on Windows.)
Therefore, to preserve the string between the first and the last double
quotation marks, "cmd /S /C" and additional outer double quotation marks
are added.
2017-03-07 19:46:19 +09:00
Ivan Furs 3d6212b8f2 removing duplicates winsock2.h
Summary:
winsock2.h included in Ecore.h
But Ecore.h ' is included in
/bin/efreet/efreet_desktop_cache_create.c
src/bin/efreet/efreet_mime_cache_create.c
src/tests/ecore_con/ecore_con_test_efl_net_ip_address.c

Reviewers: NikaWhite, cedric, raster, an.kroitor

Reviewed By: raster

Subscribers: artem.popov, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4687
2017-03-07 13:59:54 +09:00
Minkyu Kang a2dd9fc99d elementary tooltip: adjust arrow if tooltip was moved
Summary:
If orientation is TOP, BOTTOM, LEFT and RIGHT and
tooltip was moved due to located out of screen,
adjust location of arrow so that can indicate right position.

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>

Test Plan: elementary_test -to tooltip4

Reviewers: cedric, Hermet, jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D4554
2017-02-27 20:13:06 +09:00
Felipe Magno de Almeida b7780814fb efl-js: Fix deprecated Set feature of setting non-primitive value 2017-02-22 18:56:30 -03:00
Lauro Moura add91ee80e eolian_js: Avoid errors when getting function scope 2017-02-22 18:56:30 -03:00
Jean-Philippe Andre e6d7494909 elm_test: Add autobounce test for "Scroller 2" 2017-02-20 10:49:11 +09:00
Jean-Philippe Andre e99f6a87ee elm_test: Fix invalid API use (EO) 2017-02-16 21:33:10 +09:00
Jean-Philippe Andre c09b921e34 win: Avoid malloc in icon_object_set
Also support both Evas.Image and EO Efl.Canvas.Image classes.
Add a test case in elm_test (under "Icon").

I'm not so happy about this patch... it shows that the API
barrier between legacy and EO implemented for images may not
be such a great idea after all :(
2017-02-16 21:05:32 +09:00
Carsten Haitzler d28ba7df86 efl net proxy helper - use infinite for and sleeps instead of pause
so the process was waiting to be killed (waiting forever) and i used
pause() but this isnt windows-friendly, so since this process expects
to be killed by the parent process, then use a for (;;) with lon long
long sleeps... instead.

this shoud fix T5174
2017-02-13 19:00:47 +09:00
Carsten Haitzler 015174f4a4 efreetd - remove unused var 2017-02-09 19:07:09 +09:00
Carsten Haitzler 0ea4d0d821 efreetd cache - use eina home env get to centralize homedir fetching
this cleans up and improves a getenv that should really use eina
2017-02-09 18:38:28 +09:00
Carsten Haitzler 6b090a00b6 efreetd - dont use XDG_RUNTIME_DIR or EFREET_LOG env vars for setuid
if a setuid app needs efreet - it will not be able to contact the
users' efreetd and thus may spawn it's own... and thus we cant have
this now spawned efreetd using env vars inherited from the
unpriveleged etc. user, so ignore them.
2017-02-09 18:38:28 +09:00
Carsten Haitzler 311ecceeb7 evas cserve - remove unused if 0'd out code that is misleading my greps
looking for XDG_RUNTIME_DIR usage to lock down for setuid apps... this
msled me... remove it as it's unused.
2017-02-09 18:38:28 +09:00
Carsten Haitzler 5b4c032fb5 edje_cc - fix potential divide by 0 in info output if file size is 0
this will realistically never happen in a sane case... but its
theoretically possible. fixes CID 1366923
2017-02-08 21:19:39 +09:00
Carsten Haitzler 50ab088f79 evas cserve client - fix theoretical size less than 0 issue
theoretically size might be zero but it won't be... but make coverity
happy so it doesn't come back to triage

fix CID 1361430
2017-02-08 08:48:35 +09:00
Gustavo Sverzut Barbieri 8dc853f230 ifdef RUN_IN_TREE logic.
This logic is only needed for autotools, cmake will replicate the
installation file structure and thus eina_prefix works out of box.
2017-02-03 12:36:38 -02:00
Marcel Hollerbach 3c0fe3ca3c cmake: add eeze
there is currently a bug in the testsuite which needs to change,
otherwise modules cannot be loaded. The code acutally runs when its
installed and EFL_RUN_IN_TREE is not set.
2017-02-03 10:59:04 +01:00
Marcel Hollerbach 94ddd709db eeze: move binaries into subdirectories
in order to move to cmake we are moving every binary into its own
subdirectory.
2017-02-03 10:59:04 +01:00
Vyacheslav Reutskiy c3733a213b edje_cc: remove 'inherit_only' groups from result edj file
The 'inherit_only' groups are helpers and no sense to save it to edj
file.

@fix
2017-02-01 15:02:46 +02:00
Carsten Haitzler a909ca1f68 evas draw context - reduce size and allocations and frees
so a little perf fun shows malloc/free/realloc/etc. are, combined a
reasonable overhead. this reduced malloc overhead for draw contexts so
whne we duplicate them or create new ones, we re-use a small cache of
8 of them to avoid re-allocation. just take the first one from the
list as it really is that simple. mempool would not have helped more
here and cost more overhead.

@optimize
2017-01-31 23:01:50 +09:00
Vyacheslav Reutskiy 3f92bfc45b edje_pick: implement fonts copy
Previously this functional was miss. Edje_Pick was tried to copy fonts
from data block "edje_source_fontmap" what always empty because edje_cc
never fill it.

This patch rework the fonts copy from input files.

@fix
2017-01-31 10:15:13 +02:00
Gustavo Sverzut Barbieri f6cac7ed9a cmake: add ecore_con. 2017-01-27 17:26:05 -02:00
Daniel Kolesa f84e7ddc70 eolian gen: imply -gT if -o T:f is specified
If you specify type-explicit output filename, this automatically
adds it so that it's generated even without specifying -gT.

This is meant to help user friendliness. Also add a note about
this to help listing.
2017-01-27 17:13:04 +01:00
Gustavo Sverzut Barbieri a87ba1d6ad cmake: add embryo. 2017-01-26 16:36:21 -02:00
Gustavo Sverzut Barbieri 2ba33b8ff0 cmake: add eldbus. 2017-01-26 16:16:15 -02:00
Marcel Hollerbach ea83a197be build: add eolian 2017-01-23 18:52:34 +01:00
Gustavo Sverzut Barbieri d9815a6837 CMake: move eina binaries to single dir, add helper macros.
For one-source directories, be smart and just define SOURCES to that,
will reduce the number of too-simplistic CMakeLists.txt in our tree.

This also fixes problems with libraries, they should be private, not
public. So specify both kinds as different variables.
2017-01-23 18:23:40 +01:00
Chris Michael d975597fb4 elementary_test: Remove set but unused variable
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-01-23 09:35:33 -05:00
Daniel Kolesa 6e8b628864 eolian: rmeove dependency on basename/libgen.h/evil 2017-01-21 18:06:00 +01:00
Andy Williams 5851a9d4a8 elm_code: Add initial simple syntax highlighting for C code
For c source and headers lookup a simple syntax definition.
Use a very simple text processing line by line to tokenise.
Simple but it gets us one step closer to cross-language syntax
2017-01-20 22:11:01 +00:00
Daniel Kolesa 95181f2d36 eolian: move base function doc API into implements
This allows us to unify retrieval of docs for both regular and
overridden funcs without having two separate APIs. It's currently
missing validation and docgen is still not adjusted properly for
it either, but at least there's this. Enables retrieval of docs
for overridden funcs by default as well.
2017-01-19 15:09:07 +01:00
Mykyta Biliavskyi 66af7d1928 edje_cc: delete unused image sets from edj file.
Delete Edje_Image_Directory_Set instance from edj file in case if image
set isn't used inside any part. This commit apply behaviour from unused
images to the unused image sets.

@fix T5109
2017-01-19 09:54:53 +02:00
Felipe Magno de Almeida a1f2db255b cxx: Modify how to generate C++ headers and allow cyclic dependencies
Allow cyclic dependencies in generated C++ headers by changing order
of includes and creating forward declarations.
2017-01-18 22:47:04 -02:00
Jean-Philippe Andre caf3b95a6d elm_test: Make the animated filter a bit prettier
This is a basic example of fire text.

The gif was generated with a GIMP script from
http://fence-post.deviantart.com/art/GIMP-Animated-Fire-Script-84921148
2017-01-17 14:35:31 +09:00
Jean-Philippe Andre 277ca9c0fc elm_test: Add a filter to the code entry
Just because I can. It's the filter code editor after all, deserves
a filter of its own. Plus, it tests that we can embed a filter
in the default style, and edit text with a filter and everything
works as expected. Yay!
2017-01-17 14:35:30 +09:00
Jean-Philippe Andre f6caf73eaa elm_test: Search bar enter key activates test on exact match
Just type "entry" and hit the enter key.
2017-01-17 14:35:30 +09:00
Jean-Philippe Andre 13c62c10e1 evas: Introduce event style_insets,changed for tb
This will be triggered in the rare case when a textblock's
insets are changed (ie. the padding due to filters or style).

This fixes invalid sizing in the test case in elm (due to a
lack of event after program_set).

@feature
2017-01-17 14:35:29 +09:00
Jean-Philippe Andre 93965db815 evas: Implement filter sources support for textblock 2017-01-17 14:35:29 +09:00
Jean-Philippe Andre 1512741b48 evas: Implement filter_data_set for textblock
This is a function that allows passing variables from C or EDC
to the filter's Lua code. Useful in particular for color classes
from EDC.

This data would be the global data but we could eventually add
a markup tag to specify a data value per filter instance. For now
a single data value per tb object should be more than enough though.
2017-01-17 14:35:29 +09:00
Jean-Philippe Andre 4453044d84 elm_test: Improve gfx filter test case for tb & text
Now we can test both of those widgets with filters. We
could also add an image. This test case still needs some
improvement anyway.
2017-01-17 14:35:28 +09:00
Jean-Philippe Andre 421df2eec6 evas: Adjust tb padding from gfx filters padding
This makes gfx filters padding work just like the standard style
padding, which means the tb user must offset the object position
by -l, -t and increase the object size by l+r,t+b.
2017-01-17 14:35:28 +09:00
Jean-Philippe Andre 5f1c993d17 evas: Set gfx filters by name on textblock
This allows for much simpler markup, and easier tracking of
which filters are in use, etc... Next: data and sources.
2017-01-17 14:35:28 +09:00
Jean-Philippe Andre cb294320dc evas: Experimental textblock support for gfx filters
This is only for testing purposes for now. Eventually we need
to fix the following things:
- terrible performance (cache buffers)
- force redraws based on filter padding
- expand textblock padding based on max filter padding
- add sources, data and a filter name/code hash
- test! :)
2017-01-17 14:35:28 +09:00
Daniel Kolesa 35c5e89269 eolian: remove/add APIs and clean up implements system
As there is no need to have separate is_auto, is_empty and
is_pure_virtual for functions and implements (each function has
its own base implement by default) I removed the function ones.
Instead, I added a way to retrieve a function's base implement
so that you can instead do the checks on the implement even when
you only have the function.

I also moved base implement build directly into the parser instead
of the database filler. That allows for significant cleanup. I
also removed distinction of implement pointers in Eolian_Function
for get and set as implements now always contain an entire thing
so the pointer was always the same anyway.

Things should still behave more or less the same, but ordering
of generated functions has changed because ordering of implements
has changed.
2017-01-16 15:55:06 +01:00
Woochan Lee 746ac26425 elm_multibuttonentry: Fix MBE got a wrong state.
Summary:
Even User set a MBE state as "shrink" when MBE created.
MBE has been changed the state as "none" during added items.

This patch will be fixed that bug state.

@fix

Test Plan:
Add below line after create mbe.

'elm_multibuttonentry_expanded_set(mbe, EINA_FALSE)'

Then Add items using item_append API.

See the result. mbe is not on shrink mode.

Reviewers: Hermet, jpeg, cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4548
2017-01-16 11:48:49 +09:00
Daniel Kolesa 692ae7adb6 eolian: use consistent pure_virtual naming in API
Previously one API used just virtual (incorrect) and one used
virtual_pure (which just sounds weird). So unify with a single
name, pure_virtual, similar as in other lanugages.

This does not change eo file syntax yet.
2017-01-13 15:40:29 +01:00
Daniel Kolesa a70645e154 eolian: consistent and cleaner error values from APIs
Now all error/unknown/etc values returned from APIs are zero,
previously it was a mix of zeroes and minus ones. Also, some
enums that had no error/invalid value before have one now, which
allows for better distinction between what is an error and what
is an intended result.
2017-01-13 15:26:05 +01:00
Daniel Kolesa deb1e58e06 eolian gen: do not use EOLIAN_UNRESOLVED/PROPERTY for lookups 2017-01-12 15:13:30 +01:00
Carsten Haitzler 11432d42a7 elm theme/test - add start of nviframe window style and test it 2017-01-12 20:21:04 +09:00
Daniel Kolesa baaa482ebf eolian: fine-grained is_auto/is_empty for implements 2017-01-11 19:26:21 +01:00
Jaehyun Cho e23a4521ea Revert "edje_cc_parse: Fix to insert missing double quotation marks"
This reverts commit 5ae6e1db2f.

On Windows, system() does not execute file if the argument of system()
begins with double quotation marks.
(e.g. system("\"C:\efl\lib/edje/utils/v-1.18/epp.exe\" ...");)

To resolve this issue on Windows, it has been fixed to have the argument
of system() not begin with double quotation marks.
(i.e. Do not use double quotation marks for epp.exe path in system().)
2017-01-11 15:22:52 +09:00
Jaehyun Cho 8cf38539a1 edje_cc_parse: Fix not to convert macros to a single string
Double quotation marks convert macros to a single macro string and only
the first macro becomes valid.

So double quotation marks are not used for macros.
2017-01-11 10:29:46 +09:00
Carsten Haitzler bd2f189d4c ecore_con - move libproxy to a slave binary with stdin/out msging
so here's the ugly problem. libproxy. yes. we've discussed memory
usage (e.g. it may have to execute javascript and pull in lots of deps
etc.) but we dlopene'd on the fly. ok... but this didn't solve another
issue i hit:

libproxy was causing enlightenment to abort(). some internal bit of
libproxy was raising a c++ exception. this wasn't caught. this causes
an abort(). takes down your entire desktop. FANTASTIC. this is bad. i
wouldnt' expect a library we depend on to be THIS anti-social but
libproxy seemingly is. it SHOULd catch its error sand just propagate
back to us so we can handle gracefully.

there reall is no way around this - isolate libproxy. it's even worse
that libproxy can load arbitrary modules that come from anywhere sho
who knows what issues this can cause. isolation is the best solution i
can think of.

so this makes an elf+net_proxy_helper we spawn the first time we need
a proxy lookup. we re-use that binary again and again until it exits
(it should exit after 10 seconds of being idle with no requests coming
in/pending). it'll respawn again later if needed. this involves now
the efl net threads having to marshall back to mainloop to do the
spawn and to write to the proxy process (reading is done by async exe
data events and the data is passed down a thread queue to the waitng
efl net thread). if the exe dies with pending requests unanswered then
it's respawned again and the req's are re-sent to it... just in case.
it has a limit on how often it'll respawn quickly.

this seems to work in my limited testing. this ALSO now isolates
memory usage of libproxy to another slave process AND this process
will die taking its memory with it once it's been idle for long
enough. that;s also another good solution to keeping libproxy impact
at bay.
2017-01-09 15:29:33 +09:00
Cedric BAIL 8f1c071d6a eina: rename EINA_{FLT,DBL}_CMP to EINA_{FLT,DBL}_EQ. 2017-01-06 15:58:46 -08:00
Jee-Yong Um a6c1c2d08f edje_cc: Keep lookups for removed program
Summary:
Program lookups triggered by removed edje program should be removed when removing
edje program, but program lookups for removed program should be kept to check
exitence of removed program.
This patch keeps lookups for removed program.

Reviewers: cedric, jpeg

Reviewed By: jpeg

Differential Revision: https://phab.enlightenment.org/D4544
2017-01-04 15:30:21 +09:00
Marcel Hollerbach a56a957235 elementary_config: make compare of web_backend more secure
web_backend can get NULL when there is a error with the entry. Make sure
the pointers are different, or they are not NULL and the string contents
are different.
2017-01-02 17:29:50 +01:00
Jaehyun Cho 5ae6e1db2f edje_cc_parse: Fix to insert missing double quotation marks 2017-01-02 20:03:05 +09:00
Jaehyun Cho c670a32053 edje_cc_parse: Compile EDC file whose path contains space character.
Previously, edje_cc could not compile EDC file whose path contains space
character since edje_cc interpreted the EDC file as separate 2 inputs.
(i.e. "input file.edc" was interpreted as "input" and "file.edc")

This patch enables edje_cc to interpret above case correctly.
2017-01-02 19:25:45 +09:00
Carsten Haitzler 9e01cf2698 evas image async preload - add option to also make header load async
to date if you use async preload we still load the header
synchronously and this can be horrible especially with generic
loaders. there is no way to farm this off to the preload thread. now
there is. youhave to set it as a skip head load option before doing a
file_set AND you need to issue a preload ... but now it's possible.

@feature
2017-01-02 18:53:56 +09:00
Mykyta Biliavskyi 5fb595e714 Edje_cc: update images.set.image names when write edj file.
There are few image formats that converted into *.png on data writing
stage (*.svg, *.tgv). After converting image, this image entry name
changes by <name>.<vector format ext>.png. This make possible save
vector images into edj file.
Because images set could contain vector images too - after save on
disk set image entry name wasn't updated. And still have original name:
<name>.<vector format ext>. This commit update image set entries
name accordingly to the global pool of images.

@fix
2016-12-29 16:14:23 +02:00
Carsten Haitzler 4b18b472ba edje_cc - fix warning about freeing a const char ptr
yes - the type is const char * for edje runtime (the library) but in
edje_cc we strdup these strings and yes - assign them to a const char *
thus the warning and the need to cast. it's specific co edje_cc only
and so this is correct.
2016-12-28 19:01:38 +09:00
Daniel Kolesa 72b8dbc30d eolian gen: properly deal with __eolian wrappers and mixed prop impls 2016-12-27 17:16:17 +01:00
Jaehwan Kim 65b7ab95bc edje_pick: add vector resources into the output file. 2016-12-23 13:10:14 +09:00
Vyacheslav Reutskiy f12a08ab15 edje_cc: add svg file name '.png' if it use as image
This path add notify for user in case when svg use in image section. It
need for clear understanding why vertor image scale like bitmap. And
add to file name new extension '.png'
2016-12-22 18:16:48 +02:00
Vyacheslav Reutskiy 715a66ed11 edje_cc: calculate and save the parts count in "edje/file" 2016-12-22 18:00:17 +02:00
Vyacheslav Reutskiy e30a197a92 edje_pick: fix calculation of index for parent and depended groups 2016-12-22 18:00:17 +02:00
Andrii Kroitor 9f6d773fce ethumb: rewrite slave input/output
Using stdio instead of low-level read and write because low-level API has
different behaviour on Linux and Windows.
2016-12-22 14:13:40 +02:00
Carsten Haitzler cc5dd2bd87 efl window stacks - implement pop to for x11 in the portable way 2016-12-22 15:17:43 +09:00
Jean-Philippe Andre 176b0c8d03 Revert "edje: fix float comparison warning in edje_cc."
This reverts commit 9730eb1f47.

This introduces new issues, such as:
Warning: naviframe.edc:451: couldn't find an exact match in
 part 'elements_clip' when looking for 'hidden' 0.000000. Falling
 back to nearest one 'hidden' 0.000000.

Because some comparison was not done properly, and changed
float != 0 to float == 0.

Get it right if you insist on "fixing" those floating point
comparisons.
2016-12-22 14:13:25 +09:00
Jean-Philippe Andre a7c50179d3 edje_cc: Redefine STRDUP with eina 2016-12-22 10:51:05 +09:00
Jaehwan Kim 5f95a15bc1 edje_pick: include the resources that is only used.
When it pick any groups, it just includes the resources that is used
in those groups.
2016-12-22 10:22:18 +09:00
Bruno Dilly 9308410479 edje: support filtering allowed seats per part
collections.group.parts.part.allowed_seats keeps a list
of seat names to be used for events filter.

So when evas devices of seat type are added, filters
may be applied for each part.

If no seat is listed, every seat may interact with such
part.
2016-12-21 23:03:33 -02:00
Daniel Kolesa 431d36e9a0 eolian gen: fix enum member reference generation 2016-12-21 15:12:58 +01:00
Jean-Philippe Andre 01af35de6f ecore_evas_convert: Fix crazy use of objects from a thread
I did that originally to implement a slightly nice way for
Ctrl+C to work. But it was clearly a hack (as mentioned in
the comments), and stopped working since domains were
introduced.

Should we rename this standalone tool as "efl_image_convert",
or even just "efl_convert"?
2016-12-21 13:56:04 +09:00
Cedric BAIL 9730eb1f47 edje: fix float comparison warning in edje_cc. 2016-12-20 16:39:30 -08:00
Cedric BAIL 4cbca7c357 edje: fix float comparison warning in edje_external_inspector. 2016-12-20 16:39:30 -08:00
Cedric BAIL f89cc21ef0 edje: fix float comparison warning in edje SVG loader. 2016-12-20 16:39:30 -08:00
Cedric BAIL 6e40fd890b edje: fix float comparison warning in edje_pick. 2016-12-20 16:39:30 -08:00
Cedric BAIL a5bc6f7b00 elementary: fix float comparison warning in flip page test. 2016-12-20 16:39:30 -08:00
Cedric BAIL ee79b90066 elementary: fix float comparison warning in bg test. 2016-12-20 16:39:30 -08:00
Cedric BAIL 233cb77c1e evas_cserve2: fix float comparison warning. 2016-12-20 16:39:30 -08:00
Carsten Haitzler 39af0d88aa efl stack wins - add base property/boolean to indicate win is a base
part of adding stacks...
2016-12-20 10:57:55 +09:00
Jean-Philippe Andre 6989642221 elm_test: Also filter categories when typing in search bar 2016-12-20 09:42:51 +09:00
Gustavo Sverzut Barbieri 25a9e1d886 Efl.Io.{Queue,Buffer,Buffered_Stream}: slice_get is now a property.
Previously we couldn't return a slice, instead required the user to
pass a slice and we'd fill it since Eolian couldn't generate fallbacks
for structures.

Since @q66 fixed eolian, we can now return the structure itself as
initially wanted, ditching some TODO from the code.
2016-12-19 15:30:56 -02:00
Bruno Dilly 287486e920 edje: add flag to choose between evas or edje seat naming
collections.group.use_custom_seat_names should be set to '1'
to use seat names on signals as provided by Evas.

By default just follow Edje naming approach
("seat1", "seat2", ...)
2016-12-19 14:58:35 -02:00
Bruno Dilly 0ab6567b3e edje: accept optional seat parameter on FOCUS_OBJECT
If not provided, FOCUS_OBJECT action will keep acting
over default seat.

Also include a usage on edje-multiseat test
(actually no example was exercising this action).
2016-12-19 14:58:35 -02:00
Bruno Dilly 5cfdf3ec3a edje: support seat on focus action and signals
Seat goes as an optional parameter for FOCUS_SET (if not
provided, act over default seat), and emit signals
with seat suffix:
 * focus,in,$SEAT
 * focus,out,$SEAT
 * focus,part,in,$SEAT
 * focus,part,out,$SEAT
2016-12-19 14:58:35 -02:00
Gustavo Sverzut Barbieri 74d8148da3 efl_debug_common: remove stale code/macros.
These are not needed anymore.
2016-12-19 09:52:30 -02:00
Hosang Kim 2b3bee1301 scrollable_interface: fixed logic for calcualting position to scroll.
Summary:
When width of parameter(w) is bigger than or equal to scroller's width(pw),
scrollable object must be scrolled to x position.

Test Plan: elementary_test -> focus 4

Reviewers: woohyun, SanghyeonLee, Hermet, cedric, jpeg, raster

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4491
2016-12-16 15:26:00 -08:00
Vyacheslav Reutskiy 6f41b7a690 edje_pick: copy images from image sets
@fix
2016-12-16 15:32:48 +02:00
Vyacheslav Reutskiy ca11f5d678 edje_pick: use separate Eina_List vars for different EINA_LIST_FOREACH 2016-12-16 15:32:20 +02:00
Jean-Philippe Andre a07877bd57 elm: Add a test case for evas masking
This tests masks of masks in a genlist, with maybe a map.
Nothing crazy.
2016-12-16 19:18:29 +09:00
Carsten Haitzler 0bf269d966 elm - add test for efl ui win stacking api 2016-12-16 16:16:53 +09:00
Cedric BAIL 635a2baf74 efl_debug: silent unused use of static variable. 2016-12-15 10:08:21 -08:00
Daniel Kolesa db9e6354c3 eolian gen: specialize default values by type
Now we can generate NULL for stuff that is pointers and empty
struct literals for struct instead of just 0 for everything. The
previous behavior was incorrect for those cases and generated
broken code.
2016-12-14 18:23:16 +01:00
Vitalii Vorobiov df9128c3e3 edje_pick: fix memory leak while on group dependency build
@fix
2016-12-13 14:17:39 +02:00
Jean-Philippe Andre bcfc33fd00 elm_test: Add a test case for gfx filters
This adds a test window for the efl_gfx_filter (also known as
evas filters). The builtin examples are not incredibly pretty
but they showcase some of the most basic features. They also
show that some of the filters need to be improved.

Note that the code contains a lot of FIXME due to the incompleteness
of our EO API. Also, Efl.Ui.Text still has quite a few issues (sizing,
lack of a working change event, ...) so the UI doesn't even look as
designed (a label is missing). Hopefully this should get fixed over
time.

Oh and this is mostly using EO APIs but that's a terrible idea as
evas_object_text is not going to be exposed in EO land... except
it's the only object implementing filter support (with image).
2016-12-13 16:12:27 +09:00
Jean-Philippe Andre fdcd926960 evas: Fix stacked box align
I added a way to respect the object's alignment when adding them
to a stacked box, but that alignment should only be used when the
box align is set to fill, otherwise both aligns would conflict.

See 3df7b717c9
2016-12-13 16:12:27 +09:00
Daniel Zaoui 946aa945b3 Fix compilation warning due to redeclared variable 2016-12-13 07:48:11 +02:00
Daniel Hirt dcfbeb6063 Ui text: move tests to test_efl_ui_text.c
Merge this into the file that already tests the label-like behavior.
2016-12-12 10:48:28 +02:00
Daniel Hirt a8cea307dc Ui text: implement non-editable beahvior
Non-editable behavior resembles a label. It doesn't allow changing the
text in any interactive form. The blinking cursor is also hidden.
Selection, however, it allowed.

Among the changes, I added a test which you can run using:
"elementary_test -to "efl ui text label".
2016-12-12 10:48:28 +02:00
Daniel Hirt 4f9ef4989c Ui text: disable selection handler from test 2016-12-12 10:48:28 +02:00
Andrii Kroitor 518910990c ethumb_slave: fix work on Windows
Ecore_Fd_Handler doesn't work on Windows as expected.
Replaced it with Ecore_Win32_Handler on Windows.
2016-12-09 16:54:12 +02:00
Vitalii Vorobiov 4a5e9421e6 edje_pick: export aliases and entire dependency list
A lot of cases were missed, cases that are making resulting edj file
useless.
> Now export all aliases
> If group "1" source of group "2" which is source of group "3", it will
> be imported as well!

@fix
2016-12-09 11:52:33 +02:00
Vitalii Vorobiov 39e67b500c edje_pick: use correct id's for exported groups
@fix
2016-12-09 11:50:43 +02:00
Gustavo Sverzut Barbieri 5242c3b1d4 eina_btlog: flush stdout for each line.
The huge buffer from stdout is annoying when running inside eo_debug.
2016-12-08 11:40:45 -02:00
Daniel Kolesa 698631578f eolian gen: remove dead code
Cedric forgot to remove all of the promise code.

Fixes CID1365652.
2016-12-08 14:06:09 +01:00
Daniel Kolesa 6e8f97a22f eolian gen: fix leak in type generator
Fixes CID1365322.
2016-12-08 14:00:02 +01:00
Sungtaek Hong 3f0963f7b0 efreet_desktop: fix potential error in efreet_desktop_cache_create
Summary:
 - old_file_ids is freed but not set as NULL.
   If it goes to error code, old_file_ids will be freed again.

Reviewers: jpeg, cedric, Hermet

Reviewed By: Hermet

Subscribers: conr2d

Differential Revision: https://phab.enlightenment.org/D4467
2016-12-08 13:26:55 +09:00
Daniel Kolesa 8d4de0d787 eolian: use the generic class name instead of C name in source
This changes the string in Efl_Class_Description to use the real
class name (with namespaces) instead of the C class name. The
reason for this is that this string is generic, not C-related.
2016-12-07 13:31:54 +00:00
Gustavo Sverzut Barbieri 8342548356 eina_btlog: allows continuous running on input, flush when possible.
eina_btlog will make a table of the backtrace and then must compute
columns length.

However, if not running in such mode (ie: show_compact/-c), we don't
need to queue lines or compute column lengths.

Also, now that we accept non-backtrace lines, like other output
interleaved, then flush the table once such line is found, this will
restart the table columns for the next output, but at least allows
eina_btlog to run on a live output, such as:

       myapp 2>&1 | eina_btlog
2016-12-06 14:06:10 -02:00
Gustavo Sverzut Barbieri f0e13ccad9 eina_btlog: cleanup backtrace list. 2016-12-06 13:50:18 -02:00
Jaehyun Cho c32c5dd222 eolian: Fix to unregister eina log domain if it was registered. 2016-12-06 19:05:00 +09:00
Jaehyun Cho 6262cbfb62 cpphash: Fix not to access freed pointer. 2016-12-06 14:48:20 +09:00
Stefan Schmidt 6cf11650c4 edje: svg_loader: make sure we check the return from all _parser_number calls
Instead of nesting this make a bit more sense (at least to me). Also return in
case one of these is not a number.

CID: 1356610
2016-12-05 17:07:39 +01:00
Stefan Schmidt e1fd028081 efreetd: handle invalid fd in all cases
Very unlikely that we will get a -1 when opening /dev/null but you never know
what kind of system you are running on.

CID: 1361759
2016-12-05 17:07:39 +01:00
Gustavo Sverzut Barbieri 84a0f047db eina_btlog: compact output and keep non-bt information.
Now we keep all non-bt prefixes as well, in conjunction with compact
mode it looks like we resolved the address to lines in the output.

Example:

```
$ cat bt-new.txt
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x00000004e401ca: libeo_dbg.so+0x91ca (in src/lib/eo/.libs/libeo_dbg.so 0x4e37000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x00000004e3fb42: _efl_add_internal_start+0x1c2 (in src/lib/eo/.libs/libeo_dbg.so 0x4e37000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x0000000010a85f: lt-efl_net_dialer_simple_example+0x285f (in /home/gustavo/Development/git/efl/src/examples/ecore/.libs/lt-efl_net_dialer_simple_example 0x108000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x00000005c7c291: __libc_start_main+0xf1 (in /usr/lib/libc.so.6 0x5c5c000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x0000000010a38a: _start+0x2a (in /home/gustavo/Development/git/efl/src/examples/ecore/.libs/lt-efl_net_dialer_simple_example 0x108000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del() obj_id=0x400000007feb55b9 deleted obj=0x97870b0, class=0x9785850 (Efl_Net_Dialer_Simple) [0.9045s, 0.0198 ago]:
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x00000004e409aa: libeo_dbg.so+0x99aa (in src/lib/eo/.libs/libeo_dbg.so 0x4e37000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x00000004e407f1: libeo_dbg.so+0x97f1 (in src/lib/eo/.libs/libeo_dbg.so 0x4e37000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x00000004e3eee8: libeo_dbg.so+0x7ee8 (in src/lib/eo/.libs/libeo_dbg.so 0x4e37000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x00000004e3f09e: _efl_object_call_end+0x4e (in src/lib/eo/.libs/libeo_dbg.so 0x4e37000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x00000004e48a65: efl_del+0x105 (in src/lib/eo/.libs/libeo_dbg.so 0x4e37000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x0000000010ac2c: lt-efl_net_dialer_simple_example+0x2c2c (in /home/gustavo/Development/git/efl/src/examples/ecore/.libs/lt-efl_net_dialer_simple_example 0x108000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x00000005c7c291: __libc_start_main+0xf1 (in /usr/lib/libc.so.6 0x5c5c000)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    0x0000000010a38a: _start+0x2a (in /home/gustavo/Development/git/efl/src/examples/ecore/.libs/lt-efl_net_dialer_simple_example 0x108000)
ERR<24641>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del() obj_id=0x400000007c9a1109 was already deleted 0.0287 seconds ago!
```

Results in:

```
$ cat /tmp/bt-new.txt | eina_btlog -c
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    _eo_log_obj_new (in eo.c:2691)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    _efl_add_internal_start (in eo.c:844)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    main (in efl_net_dialer_simple_example.c:375)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    __libc_start_main (in ??:375)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    _start (in ??:375)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del() obj_id=0x400000007feb55b9 deleted obj=0x97870b0, class=0x9785850 (Efl_Net_Dialer_Simple) [0.9045s, 0.0198 ago]:
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    _eo_log_obj_free (in eo.c:2714)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    _eo_free (in eo.c:974)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    _efl_unref_internal (in eo_private.h:342)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    _efl_object_call_end (in eo.c:620)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    efl_del (in efl_object.eo.c:78)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    main (in efl_net_dialer_simple_example.c:447)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    __libc_start_main (in ??:447)
ERR<23314>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del()    _start (in ??:447)
ERR<24641>:eo_lifecycle ../src/lib/eo/efl_object.eo.c:78 efl_del() obj_id=0x400000007c9a1109 was already deleted 0.0287 seconds ago!
```

which is similar to valgrind's log and is MUCH nicer to read :-)

This commit also simplifies alignment and color display by using a single printf().
2016-12-03 13:01:36 -02:00
Gustavo Sverzut Barbieri 683a508c20 eina_btlog: show comments (non-bt lines)
If the user paste the backtrace he may include some non-backtrace
line, such as Eo logs that includes the message saying what's the
backtrace is about.

These lines will be printed as is, unless "-C" is used to discard
them.
2016-12-03 13:01:36 -02:00
Gustavo Sverzut Barbieri 2aa247b334 eina_btlog: understand new backtrace format used by eo.
The output of eo backtrace is much more readable than eina's default,
but still misses addr2line translation done by eina_btlog, so make
eina_btlog understand the new format.
2016-12-03 13:01:36 -02:00
Gustavo Sverzut Barbieri 349daa458f eina_btlog: improve help. 2016-12-03 13:01:36 -02:00
Bruno Dilly 6f3f514e4f edje_cc: add FOCUS_OBJECT reference on doc
It was missing on actions list.
2016-12-02 16:41:01 -02:00
Stefan Schmidt bb284620c3 eeze_scanner: server was not always initialized here
The initial assignment is behind and ifdef so make sure we actually start with
a sane NULL here.
2016-12-02 16:28:31 +01:00
Gustavo Sverzut Barbieri 763251e50f efl_debugd: check for fwrite() return.
if it fail, close the file and turn off logging for that client.

Fixes CID 1366465
2016-12-01 16:26:32 -02:00
Gustavo Sverzut Barbieri 966c51460b eeze_scanner_monitor: fix error handling.
dialer would be uninitialized if we fail to create a path, so use a
new label to handle that.

Fixes CID 1366471.
2016-12-01 16:26:32 -02:00
Jean-Philippe Andre 6d7395a7db menu: Fix visibility flag of menu (missing efl_super) 2016-12-01 10:06:31 +09:00
Amitesh Singh a58e2e1a79 Menu,Item Interface: Common interface for menu, toolbar and ctxpopup
Summary:
efl_ui_menu interface provides common functions of menu, toolbar and ctxpopup.
efl_ui_item interface provides common functions of menu_item, toolbar_item and ctxpopup_item.
Also implemented some missing functions like selected_item set/get in ctxpopup.
efl_ui_item interface should be used for other widget items as well.

Test Plan: elementary_test

Reviewers: jpeg, felipealmeida, raster, SanghyeonLee, cedric, yashu21985

Subscribers: bu5hm4n

Differential Revision: https://phab.enlightenment.org/D3897
2016-11-30 17:59:56 +09:00
Jean-Philippe Andre 8a40c063ce win: Implement max size hint support
evas_object_size_hint_max() would not work on a window, unless
it somehow managed to not size itself (which would be another
issue). This patch allows apps to call size_hint_max_set() on
a window. A test case is provided in elm_test (Dialog).

@feature
2016-11-30 15:15:02 +09:00
Felipe Magno de Almeida b06d2510de eolian-js: Fix compilation of JavaScript binding 2016-11-29 16:43:09 -02:00
Gustavo Sverzut Barbieri b132e1e152 eeze_scanner: now using efl_net.
Rewrite eeze_scanner on top of efl_net_server_simple.
2016-11-28 12:15:38 -02:00
Gustavo Sverzut Barbieri 211eb3f00a eeze_scanner: add monitor (client)
In order to test eeze_scanner it's handful to have a client to monitor
for broadcasted events.
2016-11-28 12:15:38 -02:00
Gustavo Sverzut Barbieri 9effe44d8b efl_debug: fix typo, EXIT_FAILURE not EINA_TRUE.
although the same value, be clear on it.
2016-11-28 12:15:38 -02:00
Gustavo Sverzut Barbieri a8d1aa1441 efl_debug (client and server): now on top of efl_net_{server,dialer}_simple.
Much simpler! :-D
2016-11-25 19:39:01 -02:00
Gustavo Sverzut Barbieri 3346e6973b efl_debug: use new efl_net_dialer_simple, remove lots of code.
this is what led me to create the efl_net_dialer_simple, this kind of
code was being repeated in too many places.
2016-11-25 17:42:17 -02:00
Gustavo Sverzut Barbieri 16be61c7e1 efl_io_copier_flush: add may_block and ignore_line_delimiter parameters.
The may_block parameter is useful to force a flush without blocking on
read/write, sometimes particularly useful if ignore_line_delimiter is
true, then you get the data events without blocking -- as if a server
sending some content misses a trailing line delimiter, you do not want
to block on recv() but still want to flush data to user.

The ignore_line_delimiter parameter is useful if we're going to close
the copier and want to flush pending data which may exist due missing
trailing terminator. The close method will also force that if
destination can take more data.
2016-11-25 17:25:18 -02:00
Andrii Kroitor 47f14b78f4 elementary_test: fix function name conflict on Windows 2016-11-25 15:51:10 +02:00
Jaehwan Kim b5e9818c02 edje_pick: add base_scale value to target edj from origin edj 2016-11-25 14:27:37 +09:00
Gustavo Sverzut Barbieri ec75c62369 efl_debug (client): quit if not waiting and we're done sending. 2016-11-24 19:00:49 -02:00
Gustavo Sverzut Barbieri b79f03c916 efl_debug (client): rewrite using efl_net.
Rewrite and greatly improve error checking, allow multiple commands to
be given in series, etc.

This also leverages on Efl.Io.Queue to buffer data for us, then all we
need to do is peek at its contents, when there is a full message we
use and then ask the queue to discard it.

The CLST processing was also rewritten to not allocate memory. Since
memory may be unaligned we still iterate over the buffer and memcpy()
to an integer to avoid alignment errors.
2016-11-24 18:55:43 -02:00
Gustavo Sverzut Barbieri 4c0187609f efl_debug: filter own pid.
it's confusing and not helpful to report your own PID in 'list'
command.
2016-11-24 15:31:32 -02:00
Jean-Philippe Andre 29e7d477b1 win: Simplify modal legacy API and add test case
This fixes the modality of windows shown after setting
the flag.
2016-11-23 13:04:13 +09:00
Jean-Philippe Andre 6bcaa8a0b9 elm: Add Efl.Ui.Box.Stack for stack boxes (EO only)
This is a very simple implementation for EO of the stack mode
of boxes, as implemented in evas_object_box_layout_stack.

@feature
2016-11-23 13:04:13 +09:00
Jean-Philippe Andre 5f6673f623 win: Implement unresizable mode (fixed size windows)
This sends a signal to the CSD frame to hide the bottom
bar and disable the resize borders.
2016-11-23 13:04:13 +09:00
Jean-Philippe Andre c31a70a4f5 win: Add content_set API for window main content
The idea is to not have resize object in a stack anymore,
but a couple of swallows in the frame and if the stack of
resize objects is wanted, then the user can still explicitely
create it.
2016-11-23 13:04:13 +09:00
Jean-Philippe Andre 0e52264ae0 win: Add background part to the win border
Use Efl.Part for window to manipulate the background.

Two part names are used in EDC:
 - elm.rect.background
 - elm.swallow.background

For apps the part name is only "background".

To set a solid color background (alpha is ok):
 efl_gfx_color_set(efl_part(win, "background"), r, g, b, a);

To set an image:
 efl_file_set(efl_part(win, "background"), "image.jpg", NULL);

To set an object:
 efl_content_set(efl_part(win, "background"), subobj);

The solid bg is invisible by default, will become visible and use
COPY render mode if a color is set. Standard window uses the
swallow part.

@feature
2016-11-23 13:04:12 +09:00
Jean-Philippe Andre 4f3c8bc433 win: Adjust documentation & test for a new API
This amends bfea8c8fca to use better EO syntax in the
doc, as well as fix warnings in the test case. This also changes
move to be 1 rather than 0.
2016-11-22 15:37:33 +09:00
Ji-Youn Park bfea8c8fca efl_ui_win: add function client can start moving or resizing the window.
The result of this API can only guarantee that the request has been forwared to the server,
    In fact, there is no guarantee that the request can be processed by the server.

    In order to use this API correctly, avoid the following conditions.
    (The following situations will return a failure)

    1. Calling a function in the absence of a touch(mouse) down event.
    2. Calling the function twice more than once before the touch(mouse) up event.
    3. Calling the function when the elm win already resizing or moving the window.
    4. Calling the function using a combination of unsupported modes.

    Right usage
    1. touch(mouse) down event
    2. efl_ui_win_move_resize_start only once using the supported mode combination.
    3. touch(mouse) up event

    If a touch(mouse) up event occurs after calling the function, it automatically ends the window move and resize operation.

    Since there are some non-exclusive modes, you can use a combination of modes.(ELM_WIN_MOVE_RESIZE_MOVE is exclusive with others)
    However, Some combination of mode is limited for technical reasons.
    At present, only the following nine combinations are allowed.
    For more information, see the Elm.Win.Move_Resize_Mode.

    1. EFL_UI_WIN_MOVE_RESIZE_MOVE
    2. EFL_UI_WIN_MOVE_RESIZE_TOP
    3. EFL_UI_WIN_MOVE_RESIZE_BOTTOM
    4. EFL_UI_WIN_MOVE_RESIZE_LEFT
    5. EFL_UI_WIN_MOVE_RESIZE_RIGHT
    6. EFL_UI_WIN_MOVE_RESIZE_TOP | EFL_UI_WIN_MOVE_RESIZE_LEFT
    7. EFL_UI_WIN_MOVE_RESIZE_TOP | EFL_UI_WIN_MOVE_RESIZE_RIGHT
    8. EFL_UI_WIN_MOVE_RESIZE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_LEFT
    9. EFL_UI_WIN_MOVE_RESIZE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_RIGHT
2016-11-21 20:21:15 +08:30
Daniel Zaoui 18d27683fa Tests/Elm_Code: fix access to test files
Test files were not installed.
2016-11-20 09:22:10 +02:00
JEONGHYUN YUN 3f76638b37 elm/calendar: add APIs for minimum and maximum values for the date
Summary:
elm_calendar already have minimum and maximum year set/get APIs.
I've added new APIs that exapanded from the year to the date.
These APIs help us not only set min/max month but also set min/max day.
If you set the minimum date, changing the displayed month or year if needed.
Displayed day also to be disabled if it is smaller than minimum date.

Reviewers: woohyun, Hermet, jpeg, CHAN, cedric

Reviewed By: CHAN, cedric

Subscribers: CHAN, cedric, jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-11-17 17:40:12 -08:00
Carsten Haitzler f7b2ec8bff eina_btlog - add spaces at start so when cnp'd into a wiki it formats
without spaces at the start of every line this ends up trying to deal
with this poorly, ensure at least 4 spaces at the start of every line
and wikis tend to format with fixed width monospace layout as a "code
sample blob" which is much more correct. at least this is a simple
always-on feature we can have so copy & paste turns out nicely in bug
reports. we could have multilpe formatting options like maybe -phab
which might output this as a wiki markdown "table". maybe -html so it
prodices raw html? either way... this is a basic improvement out of
the box.
2016-11-17 18:41:32 +09:00
Carsten Haitzler 5b0d56313a elm - genlist - bounce test - add code for giving cpu time over a run 2016-11-17 18:41:31 +09:00
Umesh Tanwar 417871e19b elmentary_test: test_entry4
Summary:
If entry is set into layout, entry does not need to
be explicitly shown as layout is already show.

Though it does not lead any error, but it is not
necessary too.

@fix

Signed-off-by: Umesh Tanwar <umesh.tanwar@samsung.com>

Test Plan: elementary_test->entry4

Reviewers: singh.amitesh

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-11-16 13:46:40 -08:00
Vyacheslav Reutskiy 867cf1564a elementary_test: rework a 'Genlist Tree, Insert Sorted' test
This test was reworked for better show how sorted insert work.
Currently sorted insert work bad. The new inserted items does not
check the subitems of prev item.

TODO: fix the elm_genlist_item_sorted_insert.
2016-11-08 09:40:25 +02:00
Cedric BAIL e03c8957cd eolian_js: remove Eina_Promise. 2016-11-07 13:43:11 -08:00
Cedric BAIL 997249e6c2 eolian: remove generation of Eina_Promise. 2016-11-07 13:43:11 -08:00
Cedric BAIL 9413b260b6 elementary: remove old comment and update code accordingly. 2016-11-07 11:02:25 -08:00
Daniel Zaoui 38a069e1e4 ElmTests: modify flip test to fit Exactness limitations.
Animations are not supported by Exactness. The test screenshots were not
giving any kind of information as they were taken only when the front
was displayed on the screen.
With this change, animations set on the back of the flip can be replaced by
a background, meaning that flip switches can be checked.
2016-11-06 10:38:41 +02:00
Bruno Dilly 613167333c elementary/test_entry: resize window on test without it
test_efl_ui_text was creating a very small window,
with cropped components, etc.
So let's create it with a mininum size to be able to
properly see this test.
2016-11-04 19:51:28 -02:00
Carsten Haitzler 7d654b2065 fix build for c++ after eolian api change 2016-11-03 22:48:09 +09:00
Amitesh Singh 0bcb0302fb efl_ui_clock: Merge datetime/dayselector/clock widgets into efl_ui_clock.
Summary:
Datetime widget is module based, so datetime widget is used as base for efl_ui_clock and merged dayselector/clock features into efl_ui_clock.
Added day selection and seconds support in efl_ui_clock.
 Added clock features like auto updation of time, stop timer etc in efl_ui_clock.
 Added API to enable/disable edit_mode. efl_ui_clock can be configurable to display either only day/date/time or display any two of them or display all three.
Added efl_ui_clock.c and test_ui_clock.c. Theme and Module is added in another patch by Amitesh.

Original author is Yeshwanth <r.yeshwanth@samsung.com>. I have polished this patch a bit and make it compatible with current EFL code.

Test Plan: test_ui_clock

Reviewers: bu5hm4n, tasn, yashu21985, jpeg, cedric, raster

Subscribers: CHAN, woohyun

Differential Revision: https://phab.enlightenment.org/D3938
2016-11-03 12:00:17 +05:30
Youngbok Shin ab9f0ae3ca elementary entry: keep style user when new theme is applied
Summary:
The style user should be kept when entry's mode is changed.
@fix

Test Plan:
1. Run "elementary_test -to "entry style user"
2. Click "Singleline Mode" toggle
3. See the result

Reviewers: raster, tasn, herdsman, cedric

Reviewed By: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-11-01 11:48:44 -07:00
Davide Andreoli dfe0fb317c Scroller test: add a page_size spinner
and also #define the PAGESIZE
2016-11-01 09:54:18 +01:00
Davide Andreoli 3ef3500330 Add 2 buttons in the Scroller test to reveal one more bug
the buttons should scroll up and down by 1 px, but nothing move here

That test was still broken in other ways, for example:
play a bit with the "to X Y" buttons and see if it always do the correct thing
2016-10-31 17:35:05 +01:00
Jean-Philippe Andre fb797611ed scroller: Adjust rare case when content fits but bars are visible
This was simply annoying me. A scroller packed inside a box 150x150
should have enough space to hold an object of size 140x140. That's
a whole lot of 10 pixels margin!

This patch adds a special case code when the content "seems" to fit
inside the box but still one or both bars are visible. One problem
is that we can't know from the theme how much margin is used by a
scroller even when its bars are hidden. So we have to try to remove
them and then recalc to test.

This definitely adds quite a few more calculations if the state of
the scroll bars changes, but the result is way more pleasant :) This
should be limited to corner cases anyway (when the content size is
within 0 to ~20 pixels of the scroller size, depending on the theme
of course).

The test case is adjusted to show that same size content triggers
a show on the bars (because of theme margins). See CtxPopup test.
2016-10-27 10:02:56 +09:00
Jean-Philippe Andre e9d7ca78bf elm_test: Add minor hack to run test when Enter is pressed
If there's only one filtered out button in the list after
searching by name, Enter should activate the entry and run the
test case.
2016-10-26 14:01:43 +09:00
Daniel Kolesa 82ef73ca18 eolian: remove type silencing stuff entirely
this was useful during transition, but not anymore
2016-10-25 18:02:23 +02:00
Felipe Magno de Almeida 297415cc53 js: Fix compilation of new data types in JS binding 2016-10-25 12:23:34 -02:00
Lauro Moura 508edf78c6 efl_js: Update after eo/efl api changes 2016-10-25 12:23:34 -02:00
Lauro Moura 4f52588b3c efl_js: Update JS examples
Changing imports, functions, etc.

Also export "cast" function for all eolian_js generated classes.
2016-10-25 12:23:34 -02:00
Lauro Moura 966d51bf28 eolian_js: Several fixes
* Update after scope api change.
* Add missing type mapping for new eolian types
* Avoid generating protected properties

  We select the get/set as one (through TYPE_PROPERTY) in the first check for
  visibility. After 375179b47 it is possible to have different scopes for getters
  and setters.

* Add pointer to complex tp and classes

  e984e5a removed the explicit pointer from classes and complex types in the eo
  files, handling them implicitly.

* Avoid generating functions with void*

  Until further notice, they will not be automatically generated.

* Avoid generating ref stuff from eo_base.eo

* Warn when there are methods with the same name.
2016-10-25 12:23:34 -02:00
Daniel Kolesa 306aba7848 eolian gen: add -s for silencing type errors in validation 2016-10-25 16:01:54 +02:00
Daniel Kolesa 3758d5b9fa eolian gen: always validate database 2016-10-25 15:59:41 +02:00
Shuhrat Dehkanov c1df3a99cf elm test: correct elm_entry_autocapital_type_set() argument
Summary: EINA_TRUE translates into ELM_AUTOCAPITAL_TYPE_WORD, so use the latter to be consistent with the API.

Reviewers: jpeg, minkyu, devilhorns

Subscribers: stefan_schmidt, devilhorns, cedric

Differential Revision: https://phab.enlightenment.org/D4354
2016-10-21 08:57:16 -04:00
Markus Svilans 8e2f33381d New flip mode called ELM_FLIP_CROSS_FADE
Summary: Added new flip mode called ELM_FLIP_CROSS_FADE, which causes one content to fade in while the other fades out. Updated test_flip.c program to include a button for testing the new flip mode.

Test Plan: Run the elementary_test program, and open the Flip test. There is a new button labelled "9" that will activate the new cross-fade flip mode.

Reviewers: Hermet, bu5hm4n, raster

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D4314
2016-10-21 14:13:00 +09:00
Daniel Kolesa db7b6dd7e0 eolian gen: use EWAPI for events instead of EOAPI
Apparently only methods/properties can be EOAPI.
2016-10-20 16:48:41 +02:00
Daniel Kolesa 5db3f14f85 eolian gen: use EWAPI for all generated variables 2016-10-20 16:44:20 +02:00
Daniel Kolesa 930af741b9 eolian gen: automatically uppercase names for vars/constants 2016-10-20 16:01:11 +02:00
Daniel Kolesa 0ee248fb86 eolian gen: generate vars in source files for globals with value 2016-10-20 15:11:43 +02:00
Daniel Kolesa 9e12fd39af eolian gen: initial generation of variables in headers 2016-10-20 14:39:50 +02:00
Jean-Philippe Andre 7c2259adc8 elm: Remove elm app client/server implementation & APIs
This removes EO APIs related to an unmaintained client/server
model for applications. The reasons for this removal are the
following:
- unused
- no support in E
- relies on dbus as the sole transport layer
- unmaintained since the original patches
- only EO API (iow: beta, never released API)

I've also never seen the test cases (in elementary_test) actually
work.

According to Gustavo (k-s), the original author of this feature
is not involved in EFL at the moment, and unlikely to be in the
near future.

Note that terminology has in the past used those APIs when it
was still using some beta EO APIs. This code is now long gone,
removed in terminology commit 3ffcbadd6f9881472db6 (2014/12/13,
for version 0.8.0)

If someone wants to step in and maintain the implementation,
protocol and (EO) API, then feel free to revert this patch
and revive the feature. But it will need to be more solid than
this implementation.
2016-10-20 14:55:48 +09:00
Jee-Yong Um c0a41034cd eolian: fix build warning
Differential Revision: https://phab.enlightenment.org/D4356
2016-10-19 23:50:49 +02:00
SangHyeon Lee 73095ad7ad gengrid: support for non homogenous items
Summary:
Dimensions of gengrid items can be altered for
non homogenity.

Care must be taken however to set the homogenous
size for items using elm_gengrid_item_size_set().

In horizontal mode only the heights will change
and in vertical mode only the widths. Fixed dimension
will be as set with elm_gengrid_item_size_set().

This is forked by https://phab.enlightenment.org/D2422

Test Plan:
elementary_test -to "Gengrid Resized Items"
Current test program provides focus autoscroll
and item looping options.

Reviewers: raster

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4330
2016-10-19 15:48:51 +09:00
Vyacheslav Reutskiy 313b449ab4 edje_cc: set correct value for attr set for MESH_NODE
On parce the image.normal token set attribute 'set' only for part type
EDJE_PART_TYPE_MESH_NODE.

@fix
2016-10-18 08:17:05 +03:00
Carsten Haitzler 14aca77bfc fix edje_cc segv when compiling bling bling theme
accessed parts out of range for the part table. check part count first
before checking. fixes segv. @fix

blinblng: http://enform.haxlab.org/files/blingbling_e21.tgz
2016-10-15 11:28:01 +09:00
Daniel Kolesa 2515556673 eolian gen: better checks for whether to add space after type 2016-10-14 15:31:49 +02:00
Daniel Kolesa 57fb92e952 eolian gen: use the new data type API to simplify the code 2016-10-13 15:04:20 +02:00
Daniel Kolesa a862e07520 eolian gen: use the C get function name getter instead of manual concat 2016-10-12 15:11:16 +02:00
Daniel Kolesa d3d63ea8d3 eolian gen: utilize the new class C name getter instead of manual concat 2016-10-12 15:05:46 +02:00
Davide Andreoli e0c45058fe FDO icons: add missing system-file-manager icon
Fix T4638

(cherry picked from commit 3fe1429eee)
2016-10-09 21:42:53 +02:00
Daniel Kolesa 9553fd9640 eolian gen2: move to eolian gen (as the old one is gone) 2016-10-07 13:34:47 +02:00
Daniel Kolesa 4cc17ae28a eolian gen2: remove old eolian gen 2016-10-07 13:26:08 +02:00
Daniel Kolesa b15d0583e7 eolian gen2: fix minor issues with c file generation 2016-10-07 12:58:22 +02:00
Daniel Kolesa 7ef0b84f03 eolian gen2: fix stub header include guard 2016-10-07 12:31:01 +02:00
Daniel Kolesa 3ebdf0a4e9 eolian gen2: fix logging typo 2016-10-07 11:54:23 +02:00
Daniel Kolesa 20b91a46c0 eolian gen2: add newline between property get/set protos 2016-10-07 11:54:23 +02:00
Daniel Kolesa b789d6e1ec eolian gen2: complete impl generator 2016-10-07 11:54:23 +02:00
Daniel Kolesa 2d28fce231 eolian gen2: complete impl gen besides params 2016-10-07 11:54:23 +02:00
Daniel Kolesa 1ad1eb300b eolian gen2: fix file read to actually trigger impl gen 2016-10-07 11:54:23 +02:00
Daniel Kolesa 08e2703917 eolian gen2: fully implement the main func for impl gen 2016-10-07 11:54:23 +02:00
Daniel Kolesa 9cc0ca20f4 eolian gen2: some initial impl generation 2016-10-07 11:54:23 +02:00
Daniel Kolesa bc9422cf0f eolian gen2: remove the unused append mode for file write 2016-10-07 11:54:23 +02:00
Daniel Kolesa cf89ff3f45 eolian gen2: initial skeleton for impl gen 2016-10-07 11:54:23 +02:00
Daniel Kolesa bedba4f423 eolian gen2: fix generation of legacy class method wrappers 2016-10-07 11:54:23 +02:00
Daniel Kolesa a307f470a1 eolian gen2: fix implement name generation 2016-10-07 11:54:23 +02:00
Daniel Kolesa fecb2dc36d eolian gen2: properly return from class initializer 2016-10-07 11:54:23 +02:00
Daniel Kolesa cd58a681cf eolian gen2: proper generation of inherits in class def 2016-10-07 11:54:23 +02:00
Daniel Kolesa e0e2006a19 eolian gen2: properly generate class type for desc too 2016-10-07 11:54:23 +02:00
Daniel Kolesa 1fa36d558f eolian gen2: sanitize data type properly 2016-10-07 11:54:23 +02:00
Daniel Kolesa f660f371a2 eolian gen2: fix typos in generation 2016-10-07 11:54:23 +02:00
Daniel Kolesa 501a575237 eolian gen2: generate only .h by default for eot files 2016-10-07 11:54:23 +02:00
Daniel Kolesa 323949a699 eolian gen2: fix double and missing free 2016-10-07 11:54:23 +02:00
Daniel Kolesa 74934d8d01 eolian gen2: switch EFL to new generator (doesn't work yet) 2016-10-07 11:54:23 +02:00
Daniel Kolesa 809e2ed4de eolian gen2: abort on OOM (not much we can do anyway) 2016-10-07 11:54:23 +02:00
Daniel Kolesa 0306810d52 eolian gen2: generate legacy API implementation stubs 2016-10-07 11:54:23 +02:00
Daniel Kolesa 911a0847be eolian gen2: fully generate source 2016-10-07 11:54:23 +02:00
Daniel Kolesa 8a39a96bc5 eolian gen2: terminate EFL_OPS_DEFINE list 2016-10-07 11:54:23 +02:00
Daniel Kolesa 5272935573 eolian gen2: generation of class initializer func 2016-10-07 11:54:23 +02:00
Daniel Kolesa 759f470c29 eolian gen2: fix generation type specification 2016-10-07 11:54:23 +02:00
Daniel Kolesa 6d8854f461 eolian gen2: properly space headers 2016-10-07 11:54:23 +02:00