Commit Graph

1420 Commits

Author SHA1 Message Date
Jean-Philippe Andre a31222ae6f doc: EDC reference: Add specific doc for group.data
Group.data does not support "file", only "item". This doc
explains that.

Should Group.Data support file instead?
2015-06-30 10:12:13 +09:00
Jean-Philippe Andre b676dcf998 Edje: Use array instead of hash for filters data
Yeah that was totally overkill and pure laziness on my side.

Despite having the EO API for the filters still in beta,
I want to the EDC API and EDJ binary formats to stay compatible,
so let's get it right before the release :)
2015-06-30 10:12:13 +09:00
Daniel Kolesa e14c002aed efreetd_ipc: fix shadow warning 2015-06-29 14:28:01 +01:00
Chris Michael 30363956f1 edje_cc: Fix dereference before null check
Summary: Fix Coverity CID1302700 which reports a dereference before
null check. Basically, it is safe to call free() with a possible NULL
value so we can remove the 'if' check here.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 14:59:28 -04:00
Chris Michael 6949d1193e edje_cc: Fix dereference null return value
Summary: Fix Coverity CID1308232 which reports that we may be passing
NULL to strcmp here as the function _parse_param_get May return NULL.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 14:56:48 -04:00
Chris Michael cbc726ac56 edje_cc: Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 14:56:48 -04:00
Jee-Yong Um 2b29f4dfbf edje: add "mask_flags" instruction for "part" block
Summary:
Elementary widgets dealing with Evas Events usually mask event_flags with
EVAS_EVENT_FLAG_ON_HOLD, to show that this event is already handled.
However, widget like Elm_Button, it does not handle EVAS_CALLBACK_MOUSE_DOWN directly,
but it handles Edje_Signal instead, so there's no chance to mask event_flags.
Developers can block event propagation by putting rectangle the very last part of EDC,
but this instruction can help the case making elementary widget with only Edje_Signal handling.
This is not required essentially, so please check the necessity of this function.

Reviewers: Hermet, cedric

Reviewed By: cedric

Subscribers: cedric, Hermet

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-25 17:21:09 +02:00
Daniel Kolesa c709f1dca2 eolian/generator: constify all prototypes for @const functions
Otherwise there would be conflicts in certain circumstances.

This also requires adding const on many existing functions,
and similar work is necessary in Elementary.

@fix
2015-06-25 12:18:43 +01:00
Jean-Philippe Andre 0e8f890dfb Edje & evas filters: Add extra data from EDC to Lua program
This also supports color classes (really rough implementation for
now, but the API should remain stable).

@feature
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 88b81d240a Edje: Move filter desc to common desc
This will be shared between IMAGE and TEXT.
In the future it can also be shared with PROXY and TEXTBLOCK.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 707b979ffd Edje/evas filters: Use EDJ data sections to store filters code
Use the file data {item, file} block to embed filters code.
It can become especially useful to keep the filters as separated
Lua files, that will be embedded in the final edj file.

@feature
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre d00378edcf Edje/evas filters: Add filter.source support
This should preserve ABI stability with earlier versions of
edje_cc while still providing more advanced control over
proxy bindings for evas filters from EDC.

Also fix proxy binding for filters.

@feature
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre 0e11e0a6dc Edje/evas filters: Quick renaming of evas filters related stuff 2015-06-25 14:36:09 +09:00
Carsten Haitzler a149ff6d79 efl -> fix possible null deref in efreetd ipc
this fixes CID 1308358
2015-06-25 11:32:58 +09:00
Vitor Sousa dae35333fd eolian_cxx: Use C++ wrappers instead of native types as parameters
Summary:
Using C++ wrapper types in the signature of methods of the generated
classes.
Now, when the type is an Eo type defined in Eolian, eolian_cxx will detect
it and use the equivalent C++ wrapper.

Types defined in Eolian no longer need to be specified in the lookup table,
so removed them from there.

Disable wrapping of non-const char*. The current wrapper (unique_ptr) is
not suited for some required operations like ownership acquisition from
C code.

Fix constructing properties that only have the "set" method.

Fix translation of non-const parameters.

Modified Makefiles to allow proper inclusion of evas_cxx headers required
by some tests and examples.

Move one auxiliary function to another reader to make it more accessible.

@feature

Reviewers: felipealmeida, q66, cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2752
2015-06-24 15:23:01 +01:00
Carsten Haitzler 5abfefe99e efl - efreetd service move from dbus session bus to ecore ipc
this fixes warnings about no efreet dbus session bus in non session
environments as brought up on the mailing lists with:

Subject: Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: unset
efreet cache update flag to prevent dbus connections

this moves all of efreetd client and server to ecore ipc, with client
auto-launching efreetd if not found as a service and trying for up to
500ms to connect. efreetd times out on last connection or no
connections after 10sec so it wont hang around forever if not in use.
it seems to work in my testing, so let me know if there is an issue.

@fix
2015-06-24 19:28:17 +09:00
jiin.moon 6487a26354 edje: add support to control the transition time of edje animation globally.
Summary:
Add the transition scale flag and the transtion scale value.
This flag can be change using "transition_scale_enable" in edje program.
If flag is true, the transition scale value affect the transition speed of edje
The transition scale value can be change by elm_config.

@feature

Test Plan: elementary_config

Reviewers: Hermet, cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-22 17:56:15 +02:00
Seunghun Lee 8b62177561 ecore-buffer: Add ecore_buffer library to EFL.
Summary:
Ecore_Buffer is abstraction of graphic buffer.
it supports backend of shm, x11_dri2 and x11_dri3 for now,
and this library also provides method to share buffers between processes.
Ecore_Buffer_Provider and Ecore_Buffer_Consumer is for this, sharing buffer.
provider draws something in to Ecore_Buffer, and consumer receives and displays it.
the binary, bq_mgr is a connection maker for buffer provider and consumer.
it can be included Enlightenment as a deamon later.

@feature

Test Plan:
1. Configure with --enable-ecore-buffer and --enable-always-build-examples to build examples.
2. Run bq_mgr, it connects consumer and provider.
3. Run ecore_buffer_provider_example and ecore_buffer_consumer_example

Reviewers: lsj119, gwanglim, cedric, zmike, jpeg, raster, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2197
2015-06-22 10:31:42 -04:00
Oleksandr Shcherbina d409df1caa evas: change interface evas_3d to evas_canvas3d
Summary:
Regard to https://phab.enlightenment.org/T2479 it is need for right generation
Eolian files

Reviewers: cedric

Subscribers: cedric, tasn

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-17 17:52:17 +02:00
Daniel Kolesa 51f49642b4 eolian: remove the outdated and ugly database printer (needs rework) 2015-06-17 14:26:07 +01:00
Jean-Philippe Andre 0ee9a4ac63 Edje: Add doc in edcref for description.clip_to
Thanks Dave for pointing this out.
2015-06-16 13:59:12 +09:00
Jean-Philippe Andre 111e51a6ff Evas: Add "no-render" flag for proxy sources & clippers
Those objects should never be rendered on the canvas, even if they
are visible. On the other hand, they need to be rendered in mask or
proxy surfaces.

note: this patch includes some extra whitespaces changes :(

@feature
2015-06-15 16:59:41 +09:00
Jean-Philippe Andre 75ec3a7338 Edje: Add clip as a property of a part description
Since masking, for performance and themeing reasons, it becomes
interesting to be able to switch clippers on the fly. In particular,
switching from an IMAGE mask to a standard RECT clipper can save a
lot of power when masking is not required.

This new flag "description.clip_to" will behave a bit like a mix of
rel.to and visible:

- It points to a part by name, just like part.clip_to. This will
  override the clipper set by the part, or override the default clipper.

- Like "visible", it can not be interpolated between two values, so
  it will switch only at the end of a transition.

- By default there is no clip override, which means Edje will fallback
  to the part's clipper, if any, or the base (group's) clipper.

NOTE:
- Since a clipper that does not clip anything becomes a standard object,
  it is visible and rendered. This will in 99.999% cases not be the
  intended behaviour. Currently we can simply use a transparent RECT
  in order to always have something clipped by the clipper, but this is
  a hack and this will trigger rendering of masks in their surfaces even
  when they are not actually used.
  Ideally, there should be a flag indicating to Edje & Evas that an object
  should be considered a clipper in all situations, and never be rendered
  on screen.

TODO:
- Support Edje Edit
- Add Embryo & Lua functions
- Add support in edje_convert
- Add Edje/Evas flag to mark objects as "no_render"

@feature
2015-06-15 16:59:41 +09:00
Chris Michael 38c3c5a0d6 edje: Remove unused variable
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-11 12:59:21 -04:00
Daniel Kolesa 950322fd12 eolian: remove support for old event doc syntax 2015-06-11 17:14:51 +01:00
Daniel Kolesa cd12f938af eolian: remove support for old doc style on types and vars 2015-06-11 16:52:45 +01:00
Daniel Kolesa 4bdf82908e eolian/generator: fix enum field doc generator bug
This resulted in a field using the next field's docs rather
than its own, because it incremented the member before
even trying to retrieve the docs.

@fix
2015-06-11 16:13:41 +01:00
katpavalli 26b27319b4 edje: add po file support in edc translation.
Summary:
   Implementation to support .po files in edc for translation

Test Plan:
   Test Code to test this implementation is done as part of efl/src/examples/edje/edje-text.c and efl/src/examples/edje/text.edc
   edje_cc -md . text.edc && gcc -o edje-text edje-text.c `pkg-config --libs --cflags ecore-evas edje evas ecore eo`
   ./edje-text

   1) Click On the text "Click here"
      The language gets changed.

Reviewers: shilpasingh, cedric

Reviewed By: shilpasingh, cedric

Subscribers: cedric, rajeshps, govi, poornima.srinivasan

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-11 10:40:55 +02:00
Daniel Kolesa 660e23fd75 eolian: add new __undefined_type builtin to silence warnings 2015-06-10 16:56:37 +01:00
Carsten Haitzler f153cad879 eina btlog - util - shut up coverity
eina_btlog is a backtrace "cleaner" that takes a raw bt from eina log
and gives a full readable bt for humans. it's run-and-quit binary like
ls or rm - it does its job and exits, so leaks are really of no
concern here...

CID 1297407
2015-06-09 19:39:01 +09:00
Daniel Kolesa 1a317196ae eolian/generator: use get/set doc as primary if needed 2015-06-08 17:36:32 +01:00
Daniel Kolesa 555c664ed2 eolian/generator: support for since tag in doc gen 2015-06-08 16:17:00 +01:00
Daniel Kolesa 9ea802c841 eolian/generator: fix a false positive in eolian types_gen
While it is true that 'strrchr' may return NULL, in this case it
never will (there is always a newline). Either way, silence Coverity.

Fixes CID 1304558.
2015-06-08 10:56:54 +01:00
Daniel Kolesa 1f84f5eb6b eolian/generator: generate @ref foo for @foo 2015-06-05 17:02:47 +01:00
Daniel Kolesa 5876b08fdb eolian/generator: use more correct indent offset in types doc gen 2015-06-05 16:43:30 +01:00
Daniel Kolesa 3131c667e9 eolian/generator: fix silly shadow warning 2015-06-05 15:38:53 +01:00
Daniel Kolesa a45c3db808 eolian/generator: @param[in,out] is the correct inout syntax 2015-06-05 15:09:05 +01:00
Daniel Kolesa 3f4c569341 eolian: don't emit an extra empty line in certain cases 2015-06-05 14:51:11 +01:00
Daniel Kolesa ac0113ba2b eolian/generator: generation for new documentation system
This commit adds the necessary generator logic to emit doc
comments from the new doc syntax. Old doc comments are kept
in for the time being as they're used within the EFL but they
will be removed eventually. This new generator focuses all the
important code in one place, making usage easy.

@feature
2015-06-05 12:15:51 +01:00
Felipe Magno de Almeida 51d9760fe6 eolian-cxx: Removed unused function
Removed unused function and consequent warning
2015-06-05 00:19:34 -03:00
Daniel Kolesa 9c024993a1 eolian/generator: generate types in their original decl order 2015-06-01 15:06:25 +01:00
Nak-Gyeong Kim 7d33ae501b edje: edje_cc_parse should check pair of parens.
Summary:
Fix parens bug.
((x + y)-z) is OK.
((x + y) - z) is NOT OK. This patch can cover this case.

@fix

Signed-off-by: Nak-Gyeong Kim <nakkyong.kim@samsung.com>

Test Plan:
Test in edc.

((x + y)-z) is OK.
((x + y) - z) is NOT OK. This patch can cover this case.
If parens are not paired, it will notify.

Reviewers: raster, Hermet, cedric

Subscribers: kimcinoo, jaehwan

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-29 18:22:09 +02:00
Daniel Kolesa 7056b2f6e4 gitignore++ 2015-05-29 16:48:32 +01:00
Daniel Kolesa 8dc8d6873d eolian/generator: clean up comment gen 2015-05-29 16:44:36 +01:00
Daniel Kolesa 98497f8406 eolian: use fprintf(stderr) instead of logging where it makes sense 2015-05-29 14:57:32 +01:00
Daniel Kolesa 05ea7c7b55 eolian/generator: don't generate extern types 2015-05-29 11:15:28 +01:00
jiin.moon 6986e3126d edje: fix memory leak detected by prevent static analyser.
Summary:
Modified codes according to prevent result
The im will be freed by data_image_preload_done api.
But if image load error happen, never call that api

@fix

Test Plan: prevent tool

Reviewers: Jaehyun, Hermet, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-27 00:31:07 +02:00
jiin.moon 4cb4a8c70a embryo_cc: prevent memory curruption
Summary:
modified codes according to prevent result,
@fix

Reviewers: Jaehyun, Hermet, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-27 00:31:06 +02:00
Daniel Kolesa 69857d7f7c eolian/generator: fix memory leak 2015-05-26 17:25:11 +01:00
Daniel Kolesa a7dea04b26 eolian: merge eo_file_parse and eot_file_parse 2015-05-22 17:32:21 +01:00
Daniel Zaoui c9d5479ff9 Fix warning on unused parameter 2015-05-21 10:23:41 +03:00
Daniel Zaoui 1941dae695 Fix Eolian Cxx generator
Compilation was failing due to the changes in the Eolian library. The
generator has not been updated.

This patch fixes the compilation but not the tests that I let to my
lovely q66.
2015-05-21 09:38:34 +03:00
Daniel Kolesa 54974b074b eolian: remove const_get/const_set support
This was made obsolete by per-accessor values. It was
also hacky and i've wanted to remove it for a while.
2015-05-20 18:05:45 +01:00
Daniel Kolesa 5c199857c9 eolian: distinguish between get/set for property keys/values retrieval 2015-05-20 17:03:37 +01:00
Daniel Kolesa a22ac701b6 eolian: use eolian_property_values_get correctly 2015-05-20 16:39:17 +01:00
Daniel Zaoui e41d1f2cb4 Eolian/Generator: support eot files 2015-05-20 10:37:07 +03:00
Daniel Kolesa 1b47e2e013 eolian: use data_type consistently in the C generator
This change makes it use full class name everywhere (instead of just class name).

@fix
2015-05-19 17:46:11 +01:00
Daniel Kolesa 72dcd2da03 eolian: add a functional "import" statement 2015-05-19 15:26:53 +01:00
perepelits.m d7a53b11f6 edje: switch Evas_3D color to use Edje_Color.
Summary: Changes float on uchar as we do in other place for color component

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-19 14:17:00 +02:00
Chris Michael d2bc216886 eina-bt: Fix Coverity CID1297405 (dereference before null check)
@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-18 13:43:30 -04:00
Cedric BAIL 6b702af161 edje: fix back edje_watch.
@fix

Thanks Thanatermesis for reporting the issue.
2015-05-14 19:00:04 +02:00
Vincent Torri a75155d8ba eina, efl: add copyright notice.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-14 18:41:48 +02:00
katpavalli dca95fb45a edje: support translation on static strings in edc.
Summary:
   Internationalisation of the static text specified as part of the edc is implemented.
   Problem: Static text when specified in the edc, remains unchanged when the system language is changed.
   Solution: Language support is provided even for the static strings in the edc.

Test Plan:
   Test code to test this implementation is done as part of efl/src/examples/edje/edje-text.c and efl/src/examples/edje/text.edc
   Compile the code with the below  command
   edje_cc -md <dir path>/efl/src/examples/edje/ text.edc && gcc -o edje-text edje-text.c `pkg-config --libs --cflags ecore-evas edje evas ecore`
   ./edje-text

   1) change the language of the system using the command
      export LANGUAGE=hi
      ./edje.text

      Not the text Loading gets displayed in hindi language

   2) change the language of the system using the command
      export LANGUAGE=ta
      ./edje.text

      Not the text Loading gets displayed in tamil language

   3) change the language of the system using the command
      export LANGUAGE=en
      ./edje.text

      Not the text Loading gets displayed in english language
As the number of .mo files in the /edje folder can be increased, those many languages can be supported

Reviewers: cedric, shilpasingh

Reviewed By: shilpasingh

Subscribers: cedric, rajeshps, govi, poornima.srinivasan

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-14 18:41:47 +02:00
Daniel Kolesa 957a89168b eolian: precompute all enum field values (faster runtime, constness) 2015-05-13 18:10:02 +01:00
Daniel Kolesa d2365e6267 eolian: allow forced retrieval of enum field values 2015-05-13 17:57:03 +01:00
kumar navneet e6ed156e39 edje: fix parsing issue in edje_cc with bezier program transition.
Summary:
Issue: "CURRENT" param not considered while parsing cubic bezier transition in edje cc
Soln: parse 5,6 parameter if Curr is set else parse 4,5 parameter

Reviewers: cedric, shilpasingh

Reviewed By: shilpasingh

Subscribers: poornima.srinivasan, rajeshps, cedric, govi

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-13 16:20:22 +02:00
Daniel Kolesa 894a1e3cfd eolian: check inherit validity before using it 2015-05-13 13:45:01 +01:00
Daniel Kolesa 01b3803931 eolian: remove unneeded cruft (struct/enum cannot be a base for alias) 2015-05-13 11:26:24 +01:00
Daniel Kolesa ec73644cb6 eolian: generate underscored structs as well as correct opaque struct typedefs 2015-05-13 11:14:49 +01:00
Daniel Kolesa ed58165b50 eolian: butts 2015-05-12 16:25:52 +01:00
Vitor Sousa 2c48b3212a eolian_cxx: Fix @beta on generated bindings for C++ 2015-05-12 15:51:31 +01:00
Carsten Haitzler ca0a253167 efl debug - make event log header .. nicer with a block header and size 2015-05-11 12:28:18 +09:00
Carsten Haitzler db6a1af45e efl debugd - fix evlog writing - dont duplicate empty blocks 2015-05-10 22:42:35 +09:00
Carsten Haitzler 6c99fb6c92 eina evlog - make log dumps simple binary from debugd with header 2015-05-10 22:36:39 +09:00
Carsten Haitzler 71182a57a3 eina evlog - remove stolen count - unecessary 2015-05-10 22:27:37 +09:00
Carsten Haitzler 2aeb289063 eina - begin event log infra we can get from the new debug monitor
we can down dump event logs. some ecore mainloop bits are logging at
the moment.
2015-05-10 19:05:54 +09:00
Daniel Kolesa 8920a69284 eolian: generation for beta events 2015-05-08 14:45:10 +01:00
Daniel Kolesa f0e40d2c55 eolian: oops... forgot to add a param 2015-05-08 14:23:23 +01:00
Daniel Kolesa 5726cf3b0f eolian: beta funcs generation 2015-05-08 14:19:02 +01:00
Tom Hacohen a08583d4d4 Efl debug: Rename shadowing variable. 2015-05-08 13:55:39 +01:00
Carsten Haitzler afd2c1c0be efl debug - clean up debugd and debug cli tool code proto handling
this clenas up protocol handling to share common code and have more
compact and easier to maintain code on both sides here.
2015-05-08 19:48:26 +09:00
Carsten Haitzler 5b99d0f561 efl debug - start on common file for efl_debug tools for protocol
this should reduce duplication between debugd and debug tools
2015-05-08 17:15:03 +09:00
Carsten Haitzler 664708b817 eina - start a much improved eina dbug infra and have eina_log use it
this makes eina_log give bt's for all error logs. this is very useful
in finding just where a problem happens. the problem int he past is
that these have not been too useful due to backtrace_symbols() being
"useless". thus use the eina_btlog tool i added too.

also started infra for a debug monitor that can use the backtrace
infra to collect runtime stats ANY TIME for a process (don't need to
run under a debugger).

@feat
2015-05-08 14:13:17 +09:00
perepelits.m 83bb3b5b51 edje: add align 3d support.
Summary: Adding of Z axis to be aligned

Reviewers: cedric, raster, Hermet

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-07 09:53:09 +02:00
Daniel Zaoui b0da753aaa Eolian/Generator: fix enums generation
Typedef word was not generated for enums. Camel case was not respected
for type definition.
Tests have been updated to check enums generation.

@fix T2400
2015-05-07 09:57:23 +03:00
Daniel Kolesa e73f7f7a40 elua lib: use Eina_Bool as return val in some utils 2015-05-06 15:05:23 +01:00
Daniel Kolesa 88faba813c elua lib: merge the 3 setup funcs into one
This allows simpler initialization and elua_util_require
can now queue up modules before full initialization is done.
2015-05-06 15:05:23 +01:00
Daniel Kolesa 0d8b38a2ac elua: include fix 2015-05-06 15:05:22 +01:00
Daniel Kolesa 5cd8e4e67b elua: remove long opts (not necessary or useful) 2015-05-06 15:05:22 +01:00
Daniel Kolesa d8890209af elua lib: unify API conventions 2015-05-06 15:05:20 +01:00
Daniel Kolesa eea537ded3 elua: cleanup launcher 2015-05-06 15:05:20 +01:00
Daniel Kolesa 02de415312 elua: cleanup main runtime 2015-05-06 15:05:20 +01:00
Daniel Kolesa 24a694026a elua lib: add elua_state_setup_modules + use 2015-05-06 15:05:20 +01:00
Daniel Kolesa 8041b042fe elua lib: move i18n initialization there 2015-05-06 15:05:20 +01:00
Daniel Kolesa 0496762057 elua: utilize the new elua_util APIs 2015-05-06 15:05:20 +01:00
Daniel Kolesa f80999ae60 elua: use the new progname API 2015-05-06 15:05:20 +01:00
Daniel Kolesa 13bd7ba653 elua lib: add progname to state 2015-05-06 15:05:20 +01:00
Daniel Kolesa 865e2e3364 elua: remove -e param (we're not a REPL) 2015-05-06 15:05:20 +01:00
Daniel Kolesa a2d9f1af91 elua: utilize the new APIs for handling require/appload 2015-05-06 15:05:20 +01:00
Daniel Kolesa 87a8e51cd3 elua: remove elua_prefix from main runtime 2015-05-06 15:05:19 +01:00
Daniel Kolesa 5f6109bc47 elua: new API elua_state_dirs_fill + utilize 2015-05-06 15:05:19 +01:00
Daniel Kolesa c1cfcc35b9 elua: remove path decision from register_require 2015-05-06 15:05:19 +01:00
Daniel Kolesa 498501b9d7 elua: remove EFL_RUN_IN_TREE hack (pass cmdline args) 2015-05-06 15:05:19 +01:00
Daniel Kolesa 329fae97b0 elua lib: manage bound modules within Elua_State 2015-05-06 15:05:19 +01:00
Daniel Kolesa 1bc0bd1aa7 elua: use the new state get API 2015-05-06 15:05:19 +01:00
Daniel Kolesa 19bb7eb460 elua lib: new APIs to retrieve dirs 2015-05-06 15:05:19 +01:00
Daniel Kolesa f17e8025b8 elua lib: more Elua_State usage 2015-05-06 15:05:19 +01:00
Daniel Kolesa 128aa3a1ea elua lib: elua_io_loadfile now uses Elua_State 2015-05-06 15:05:19 +01:00
Daniel Kolesa 01aecbe273 elua: use the dir paths from Elua_State 2015-05-06 15:05:19 +01:00
Daniel Kolesa ed3f24943f elua lib: add elua_state_dirs_set 2015-05-06 15:05:19 +01:00
Daniel Kolesa 098f2ad4cd elua: no need for luaL_openlibs, the lib does that 2015-05-06 15:05:19 +01:00
Daniel Kolesa 92ad720127 elua: remove the smart cb wrapper (ffi callbacks work fine for us) 2015-05-06 15:05:19 +01:00
Daniel Kolesa 1dcc62c7c2 elua: pass Elua_State through Main_Data 2015-05-06 15:05:19 +01:00
Daniel Kolesa 446fdd68c9 elua: Elua_state for elua_loadapp 2015-05-06 15:05:18 +01:00
Daniel Kolesa cf98f846e9 elua lib: Elua_State for elua_state_setup_i18n 2015-05-06 15:05:18 +01:00
Daniel Kolesa 17a54ff8e0 elua: use more Elua_State 2015-05-06 15:05:18 +01:00
Daniel Kolesa c1487c8b11 elua: elua_report_error now takes Elua_State* 2015-05-06 15:05:18 +01:00
Daniel Kolesa e0066ca9e7 elua: use elua_state_new/free 2015-05-06 15:05:18 +01:00
Daniel Kolesa da3684b9bc eolian: actually these should be marked EAPI 2015-04-28 14:18:57 +01:00
Daniel Kolesa 9141298792 eolian: mark _class_get func protos with EOAPI
this is necessary to properly export the funcs on Windows. @fix
2015-04-28 14:12:18 +01:00
Tom Hacohen f62374b08a Eolian generator: remove unusued variable. 2015-04-22 13:03:17 +01:00
Jean-Philippe Andre 255e71d83e Eeze: Silence clang warning 2015-04-21 20:31:48 +09:00
Jean-Philippe Andre 2cff6f1205 ecore_evas_convert: Fix useless clang warning 2015-04-21 20:11:02 +09:00
Jean-Philippe Andre 8fe89711ee Ethumb: Fix clang warning
Unused function.......
2015-04-21 20:11:02 +09:00
Jean-Philippe Andre cf6646812c Edje pick: Fix use after free
Fixes CID 1267458
2015-04-21 11:11:11 +09:00
Jean-Philippe Andre a253468442 Edje: Remove non-sensical NULL check
Fixes CID 1261450
2015-04-21 11:11:11 +09:00
Cedric BAIL 863ed65a0f epp: fix annotate. 2015-04-16 19:21:45 +02:00
Yomi 186cb58238 edje: fix misspelling of annotate.
Summary: Anotate to Annotate

Test Plan: test it to make sure I didn't break it...

Reviewers: raster, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-04-16 19:21:45 +02:00
Carsten Haitzler 34bb3bb9a5 efreetd - cache - mark cd as const as it isnt needing a free on return 2015-04-14 13:52:37 +09:00
Vitor Sousa ce36f0be93 eolain_cxx: Fix C++ support for new Eolian features
Added optional constructor methods for C++ Eolian wrappers.
Changed the interface of wrappers' main constructors.
If there are optional constructor methods they should be passed as variadic
template argument at the end of the constructor.
To support variadic template arguments, the optional "parent" parameter is
now the first parameter and there is another constructor without the
"parent" parameter.

Checking for @optinal and @nullable attributes instead of @nonull.
Now @nonull is the default, and eina::optional is only used when @optional
or @nullable attribute is specified.

The names of constructor methods no longer have the class name prefixed.

Added unit tests for checking the binding of optional constructors.
Added new .eo file to be used in the test.

Changed the generated documentation of constructors.

Changed the efl::eo::inherit accordingly, to address these new features.
Now the constructor methods should be explicit called in the
efl::eo::inherit constructor, which will receive them via variadic
template arguments.

Added another constructor to efl::eo::inherit for passing the parent
object.

Updated some tests and examples to follow the new interface.

Removed some code that is no longer necessary.

Also, fix Eolian C++ support for constructing properties. fix
assertion when parsing constructing properties.

Now if a property is a constructing property eolian_cxx will generate a
constructor method that have the property name (without the "_set" suffix).
2015-04-14 01:06:57 -03:00
Vitor Sousa d530389898 eolian_cxx: Add protected methods and events to C++ wrappers and fixes
Using eina::string_view in eolian generated interfaces (instead of
std::string) to allow lightweight passing of both C strings and C++
std::string.

Also, No longer using eina::optional in generated headers for types
that already implements the concept of null state (like Eo wrappers
and eina_accessor).

Also fix allocating callback objects require by class methods
(i.e. static) in static vectors so the memory will be freed when the
programs exit.

Added a new test case for testing callbacks on class methods.

Moved method definitions and supplementary code from generated C++
wrappers to auxiliary header file (.eo.impl.hh) generated together
with the main ".eo.hh" file. Updated Makefiles to list such files in
the compilation and cleanup processes. Updated .gitignore to include
these new generated files.

Made general adjustments on the documentation of generated C++ wrappers

Added "PREDEFINED" preprocessor macro definition in the Doxyfile.in in
order to make some adjustments for better documentation in the C++
generated headers.  Excluding generation of documentation for classes
in the "eo_cxx" namespace (the namespace for "abstract" eolian C++
wrappers).  Now generating the documentation for the events too.
Hiding some auxiliary code from being documented. Some aesthetic
adjustments for generated white space. Generate documentation for the
main constructor of C++ wrappers and added auxiliary grammars to list
parameters names.
2015-04-14 01:06:57 -03:00
Vitor Sousa 9eb19f8852 eolian_cxx: Declaring all inherited events on the concrete C++ wrapper
Added declaration of all inherited events on the concrete type to
avoid unnecessary type conversion on event callbacks.

Note that when two events happens to have the same name, only the
event of the derived class is declared in the concrete class. Access to
such events should be made through the base class type specification.

Fix on forwarding callback object (changed std::move to std::forward).

Additional line break at the end of event handling methods in the
generated headers to improve readability.
2015-04-14 01:06:57 -03:00
Chris Michael 4b950b55c0 efreetd: If we fail to allocate space for subdir_cache, then get out
Summary: Fix coverity CID1294212 (potential Null pointer dereference) as
the alloc for subdir_cache Could fail, however if it does we Were
still trying to use it. In the case that it fails, ERR msg and return.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-13 20:29:53 -04:00
Carsten Haitzler 701504c7a4 efreed cache - fix coverity warning on rm cleanup on sanity check
sanity check didnt check return value of ecore_file_recursive_rm(). do
that. coverity should be happy now.
2015-04-13 09:47:24 +09:00
Carsten Haitzler e05eb13f70 efreetd - fix loading of extra_icons.dirs and icon.exts to not lose char
efreetd was losing the last char on every line of extra_icon.dirs and
icon.exts thus resulting in gradual degredation of these files as more
and more changes happen to have things like:

.jpeg
.jpe
.jp
.j
.

etc. for extension or dirs like

/home/raster/.e/e/icons
/home/raster/.e/e/icon
/home/raster/.e/e/ico
...
/home/ras
/home/ra
/home/r
...
/ho
/h
/

.. you get the idea. before long the list of extra icon dirs (and
extensions) was massigve and caued all sorts of filesystem rummaging.
this fixes that to no longer degrade these files. this also changes
their names to force new files to be used instead of the broken old
ones.
2015-04-13 09:45:29 +09:00
Carsten Haitzler 6b493430df efreetd - cache generators - dont unlink then rename - fix
if you unlink then rename, there is a gap between the unlink and
rename - no file is there. the point of the rename is to be atomic.
either old file OR new file. nothing in between. this fixes that race.
2015-04-13 09:15:43 +09:00
Carsten Haitzler cd2b3c228d efreetd - startup slowness fix for recursing directories
this fixes major slowness in things like enlightenment login. when
enlightenment starts, efreetd is started. efreetd takes a long time to
start because it is scanning lots of directories recursively. it is
early in code freeze, so i think this can go in as a fix, even though
it is more of an optimization, but as such it has a fairly major speed
impact, so i consider this fixing a core performance problem for
things like logging in. The solution is a cache file containing all
the sub directories in a directory tree. we still have to stat every
directory, but this avoids a lot of stating of all files as well and
avoids any readirs etc. so it is much faster. on an ssd this comes out
to 4 times faster for efreetd to start up. on an hdd it's about 2x
faster to start uncached.

this should bea good fix for startup times - on my systems thats a 1
second speedup on ssd (out of about 8 seconds boot time) and 3 seconds
on hdd (out of about 39 seconds boot). so w save 1 and 3 seconds
respecively in boot + login.

now can we get this to 0 or close? that's a matter of designing
something like a deferred scan + monitor add so we wait until "startup
is done" then set up in the bg for a bit. that might shave another 3
seconds off boot time for hdd's but for ssd's wil barely blip (maybe
save 0.1 sec). so leave that till normal dev mode.

@fix
2015-04-13 09:09:42 +09:00
Carsten Haitzler 44fe8b987e efreetd - improve sanity checking for recursive icon monitoring
i found my efreetd was not just monitoring a small set of dirs but
literally $HOME - recursively. this explains a lot of performance
issues i have seen on spinning hdd's vs ssd's. i never knew if was in
efreetd though... until now. for whatever reason my efret cache caused
efreet to try monitro a list like:

/
/h
/ho
/hom
/home
/home/
/home/r
... etc.

when trying to monitor something like:

/home/raster/.local/share/icons

that means it ended up trying $HOME as wellas a vast range of dirs it
just shouldn't sensibly ever try. i have no idea how my cache ended up
this way, but deleting it and re-populating it fixed it. so this ads
code to detect such insanity (as wellas give actual complaints on deep
recursion so we can see things better later). not a bug fix as such,
but a major improvement to detecting bugs which is what we want for
stability.

I also noticed that one legacy pixmaps dir is not recursively
monitored, but another is - so be consistent and recurs both.

Also apply checks to desktop file monitoring too.
2015-04-12 12:19:41 +09:00
Cedric BAIL c560979196 ecore_evas: remove unwanted binary.
This binary should have been removed before merging the branch. It did
sleep in for no good reason, removing now.
2015-04-10 14:04:33 +02:00
Mike Blumenkrantz 668fcab941 efreetd: temporarily blacklist saving and monitoring root directory
ref T2280
2015-04-09 20:08:17 -04:00
Carsten Haitzler bea8877029 edje_cc - handle image sets that are empty by skipping them
this fixes an edje_cc crash on compile for "invalid" edc that has
empty image sets.
2015-04-09 13:33:41 +09:00
Jean-Philippe Andre e9cd816839 ecore_evas_convert: Implement hacky solution for Ctrl+C
Problem: evas_object_image_save() can't be interrupted.
But, with ETC1/ETC2 encoding, it might be terribly long and
the user has no way to cancel encoding (except SIGKILL).

The proper solution would be to tell evas that the save
operation has been cancelled. And run that in a thread,
in a non-blocking way. I guess Efl.File.async could be
used for that, which means maybe also introduce
Efl.File.async_cancel? This will have to wait for
EFL 1.15 I'm afraid.

Note: edje_cc still can't be cancelled during ETC encoding.
2015-04-07 17:59:45 +09:00
Jean-Philippe Andre 07e95f8003 eetpack: Fix shadow variable warning 2015-04-07 11:39:32 +09:00
Mike Blumenkrantz d0dcad1dda edje: allow empty part.desc.inherit; statements to autoinherit default desc
typing inherit: "default"; constantly is annoying and unnecessary.

@feature
2015-04-06 20:43:49 -04:00
Mike Blumenkrantz b8fe6d8cc7 edje: add part.desc.rel.{to,to_x,to_y} keywords
it was annoying to have to type two lines for setting parts relative to
each other, so now only one is needed

@feature
2015-04-06 20:43:49 -04:00
Mike Blumenkrantz 42b46ca915 edje: add color_class.desc lazedc synonym
I hate typing.
2015-04-06 11:52:28 -04:00
Cedric BAIL ae157734ff Added non-edc resource dependencies on .edc while dumping dependencies
Summary: Added code to include non-edc resource (image, sound, video etc) path in dep file while dumping include dependencies for edc files.

Reviewers: raster, cedric, Sergeant_Whitespace

Reviewed By: cedric, Sergeant_Whitespace

Subscribers: Sergeant_Whitespace

Projects: #efl

Maniphest Tasks: T2252

Differential Revision: https://phab.enlightenment.org/D2270
2015-04-06 16:37:53 +02:00
perepelits.m 39432aa0f2 edje: add of textures to edje_cc (part 2).
Summary: Adding of wrap mode and filter of the given texture

Reviewers: raster, Hermet, Sergeant_Whitespace, cedric

Reviewed By: Sergeant_Whitespace, cedric

Subscribers: Sergeant_Whitespace, cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-04-06 16:37:53 +02:00
Cedric BAIL 651436f410 efl: rename visibility to visible.
After discussion bindings and people in general prefer visible.

T2035
2015-04-03 16:23:19 +02:00
Cedric BAIL 2ca2a43916 ecore_evas: fix with new naming. 2015-04-03 16:23:18 +02:00
Cedric BAIL 7910870c2e ecore_evas_svg: actually make the Evas_Object_VG visible. 2015-04-03 16:22:59 +02:00
Cedric BAIL 3e95f90b13 ecore_evas: fix little typo. 2015-04-03 16:22:25 +02:00
Cedric BAIL 31a3664f71 ecore_evas: add a SVG vector dislay/converter tool. 2015-04-03 16:22:20 +02:00
Stefan Schmidt 1b6aa2b23b edje_cc: Add options -V/--version to show edje_cc version.
Requested to ease debugging on deployments.

Fixes T2213
2015-04-02 15:52:06 +02:00
Stefan Schmidt 0774045511 eet: Add options -V/--version to show eet version.
Requested to ease debugging on deployments.

ref T2213
2015-04-02 15:40:05 +02:00
Stefan Schmidt 3d5357b6ab eet: List -h option in help message 2015-04-02 15:32:06 +02:00
Carsten Haitzler fc07dc893f ecore_evas - eetpack utility for packing files (imgs) into eet files
this adds a new utility called "eetpack" that uses eet, ecore_evas,
eina and evas to stuff images with various compressions/encodings (as
well as raw data in a simple way) into eet files like edj files or any
eet archive. can be used in combination with the "eet" utility and
edje_cc generated edj files.

@feature
2015-04-02 11:50:08 +09:00
Carsten Haitzler 1551268280 efreetd - cache - fix handling a text index file with 0 length lines
this fixes an efreetd cache crash where files like icon.exts might
have lines with just a newline and no extension/content on the line.

@fix
2015-04-01 20:44:57 +09:00
Dinesh Dwivedi 70df9f48ba edje: add option to dump gnu style include dependencies in edje_cc.
Summary:
We were facing one problem in tizen sdk's build system as it does not trigger build for edc file
if only sub-edc files are changed. During analysis, we found that there is no option in edje_cc
for dumping include dependencies which other compiler (clang/ gcc etc) does have. We can do other
hack to solve this problem but it will be great if edje_cc can emit gnu style include dependency
target.

This patch will add support to generate gnu format include dependency file while compiling edc file.
similar to what gcc generates with option '-MMD -MF=<dep_file> -MT<dep_file>'
https://gcc.gnu.org/onlinedocs/gcc-4.9.2/gcc/Preprocessor-Options.html

Test Plan: no failure in existing test

Reviewers: raster, cedric

Reviewed By: cedric

Projects: #efl

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-31 18:03:56 +02:00
perepelits.m 62b5ca7060 edje: add of textures to Edje 3D node.
Summary: Adding textures to edje_cc and some topblock keywords that I have forgotten to add in previous commits.

Reviewers: Hermet, raster, cedric

Reviewed By: cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-25 19:40:41 +01:00
Andrii Kroitor 72dae98be8 eet: fix variable naming
Summary: this file name is used for input, not for output.

Reviewers: cedric, seoz, Hermet, raster

Subscribers: cedric, reutskiy.v.v

Differential Revision: https://phab.enlightenment.org/D2243
2015-03-26 02:57:09 +09:00
Jean-Philippe Andre 7e92ab76b1 Fix a previous commit: remove binary files and garbage in src/
When rebasing the commits, I have been lazy and did a git add src/ that
actually added the files that were not ignored. My bad, sorry about that.
The original patch was fine.

Thanks sung.
2015-03-16 16:09:47 +09:00
Dongyeon Kim eae786917c Evas GL: change function naming and small bug fixes
Summary:
Remove gles1 prefixes for functions that are also used by gles3.
Refactor evgl_make_current a little bit.
Destroy indirect context properly.
Some log message changes and typo fixes.

Test Plan: Local tests on desktop PC

Reviewers: jpeg

Subscribers: mythri, mer.kim, wonsik, cedric

Differential Revision: https://phab.enlightenment.org/D2104
2015-03-16 15:56:48 +09:00
Mike Blumenkrantz 1cf630f2bd edje color classes can now have text descriptions
@feature
2015-03-07 13:44:52 -05:00
perepelits.m 61ea719eba edje: add orientation properties in edje_cc
Summary: Adding of two modes of node orientation, by setting of the angle and by setting of the quaternion.

Reviewers: Hermet, raster, cedric

Reviewed By: cedric

Subscribers: artem.popov, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-06 20:19:21 +01:00
Tom Hacohen 374fa09f48 Edje epp: Fix FSF mailing address in the copyright notice.
Fixes T2157.

Thanks to spotrh for suggesting the fix.
2015-03-06 10:40:14 +00:00
jiin.moon 4673dbeb4b edje: Adding the zoom effect of map to edje
Summary:
Support zoom effect of map in edje
@feature

Reviewers: Hermet

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2068
2015-03-02 20:19:01 +09:00
Andrii Kroitor c198746b2d edje: fix windows build
Summary:
"far" and "near" are keywords on windows and can't be used as names of variables.

@fix

Reviewers: cedric, Hermet, raster, perepelits.m

Subscribers: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-24 13:46:45 +01:00
Daniel Kolesa 5288b73d5c eolian/generator: use a temporary variable for return in legacy impls
This is so that portability updates to eo_do can be done.
2015-02-23 15:30:59 +00:00
perepelits.m c9c659f5c2 edje: add orientation properties for Evas_3D node.
Summary: Adding of two modes of node orientation: by setting of the target name and by setting of the point to look on.

Reviewers: Hermet, raster, cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-23 15:46:41 +01:00
Davide Andreoli da3f605463 Edcref: fix a mispelled property 2015-02-21 16:33:28 +01:00
Cedric BAIL 6bb4ecd65d evas: use two thread when scaling image.
This is for now just a small experiment. It was based on the experiment made
with OpenMP. I prefered to only use Eina here as we have already all the infrastructure
to do this nicely and simply. As a result I get a 65% speed improved on average for
the involved scaling operation. The secondary CPU is on my laptop running with a load of
75% percent. I don't have right now the time to do power consumption analysis, but I
think it shouldn't be to bad. I am also not throwing more core at this as we are not able
to use the second core at its max already, so additional core may result in a bigger
energy loss without enough gain.
2015-02-20 17:11:44 +01:00
perepelits.m bc584cd59b edje: add of material properties.
Summary: Filling of fields: "ambient", "diffuse", "specular", "material", "normal", "shininess" and "shade".

Reviewers: Hermet, raster, cedric

Reviewed By: cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-20 16:33:21 +01:00
perepelits.m 3dda07dbce edje: add camera properties to edje_cc.
Summary: Filling of "fovy", "aspect", "near" and "far".

@feature

Reviewers: raster, Hermet, cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-20 11:31:14 +01:00
perepelits.m c0c487ac1a edje: add a block "position" for Evas_3D part (camera, light and node).
Summary: add a block "position" to fill the position field for nodes.

Reviewers: raster, Hermet, cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-17 16:31:09 +01:00
Daniel Kolesa 2b8bc02e12 edje, eeze: compiler portability (use full ternary operator) 2015-02-13 14:20:32 +00:00
Stefan Schmidt 8cbe288227 edje_cc: Avoid segfault when strcmp NULL items
Martin reported a porblem with one of the SHR project edc files after an upgrade
to 1.13. The segfault itself is easy enough to fix here but I think there might
be other problems with the edc after this segfault is gone. We will see.

Fixes T2106
2015-02-12 15:30:11 +01:00
perepelits.m 566eefd7d0 edje: add 3D models to edje_cc.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-11 17:27:18 +01:00
perepelits.m 2e3b9ea589 edje: add of model lookups.
Summary:
I have added some methods to edje_cc_out.c to organize model lookups. The same methods already exists for images.
Also, I have removed source_type because now we don't need it in efl_file_set.

@feature

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-09 22:03:26 +01:00
Nicolas Aguirre 71dd24a481 edje: epp - fix build of edje file in cas of recursive includes.
Amitesh Singh fixed this issue with Commit
e66e132d9d, but this commit has been reverted
recently, by a commit freeing ressources
(6d0b834a76). It's clear that we are leaking here
if we remove the free, but there is also a valgrind error when this memory is
freed. After trying to debug and understand the code of epp, i can only
propose to remove this free, we will need to include a lot of files before this
memory leak could be visible.

It is also not a real problem, the memory leak only concern the file name passed
in the include directive and epp is started per file anyway. It is unlikely to
create any real life problem and we better spend our time on more pressing matter.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-05 15:59:10 +01:00
Vitalii Vorobiov ac0b42a51a Edje: edje_cc - abort recursive Reference that is made by GROUP parts
Summary:
It is easy to create edj collections that aren't working at all and
edje_cc easily allows user to do that.
For example:
>   Having group A with GROUP part that has group B as source.
>   Having group B with GROUP part that has group A as source.
In this case edje_cc compile source code perfectly, but if user try to load
this edje as layout or use together with edje_edit it will cause unexpacted
and wrong behaviour.

@fix

Reviewers: seoz, Hermet, reutskiy.v.v, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-01-29 21:21:08 +01:00
Vyacheslav Reutskiy 6f7608befd Set the name for table, box items
If box or table items haven't name in the edc we generate a new
name by mask "item_0xFFFFFFFFFFFFFFFF". Item name important for
Edje_Edit.

@fix
2015-01-28 17:10:40 +00:00
woochan lee 648ccd3155 embryo_cc_sc2.c: prevent memory corruption.
Summary:
Modified code to following coverity result.
(overflow the memory access.)

@fix

Reviewers: raster, Hermet

Reviewed By: Hermet

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1893
2015-01-29 01:32:16 +09:00
Mike Blumenkrantz ae16cb648a edje_cc must error when first provided state description is not "default" 0.0
correctly @fix T1926 without breaking existing apps/syntax
2015-01-26 15:04:19 -05:00
Mike Blumenkrantz a5217c7c53 Revert "edje - edje_cc - fix wrong state lists where default is not the first"
This reverts commit 0cb33a4675.

broke existing edc syntax. SPANK SPANK SPANK!!
2015-01-26 15:04:01 -05:00
Mike Blumenkrantz 0b99f4ee05 Revert "efl - edje_cc - fix default state checks in previous commit"
This reverts commit 82014cad2c.
2015-01-26 15:03:39 -05:00
woochan lee 1900e7785f embryo: prevent useless assignment.
Summary: In the if case 's1[]19 = 0' state looks meaningless.

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-01-26 12:14:25 +01:00
Mykyta Biliavskyi a695eee37b edje: edje_pick - fix double free eina hash iterator.
Summary:
move freeing iterator into block where it was created.
@fix

Reviewers: raster, Hermet, reutskiy.v.v, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-01-20 12:55:17 +01:00
Carsten Haitzler 82014cad2c efl - edje_cc - fix default state checks in previous commit
this fixes 0cb33a4675
@fix
2015-01-12 18:01:34 +09:00
Carsten Haitzler 0cb33a4675 edje - edje_cc - fix wrong state lists where default is not the first
this fixes T1926
@fix
2015-01-12 15:55:17 +09:00
Vyacheslav Reutskiy ec1afd74fd edje: update the edc reference
Add a list of global signals that edje provide.
2015-01-09 07:51:54 +00:00
Jaeun Choi 145fe108b8 Evas masking: Add edje support
Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
2015-01-07 15:06:02 +09:00
Vitor Sousa 666b0da912 eolian_cxx: Using eina::optional to handle parameters without @nonull property 2015-01-05 15:52:27 -02:00
Vitor Sousa 4222cd3f50 eolian_cxx: Fix compilation of inheritance from Eolian generated classes
Updated the code for the "inheritance helper" functions and classes
to be in conformance with the new wrapper architecture.

Member variable "parents" of efl::eo::eo_class struct was split in two
member variables, "ancestors" and "parents", the former containing all
Eo class ancestors and the later only the direct bases.
Changed all required files accordingly.

Check to avoid using biding string when the parameter is @out now matches
any variation of "char".

Add default constructor to efl::eo::concrete in order to allow it to be
NULL initialized in the "inheritance helper" classes.

Removed conflicting parent_set member function in the efl::eo::inherit
class.

Removed the "inheritance_extension_function" generator since it is no
longer used.
2015-01-05 15:52:27 -02:00
Vitor Sousa 6519ae6ed9 eolian_cxx: Fix "dreaded diamond" inheritance problem for C++ wrappers
Solved diamond inheritance problem by completely removing inheritance in
the abstract class.
All ancestors are inherited directly in the concrete class.
The algorithm that list the ancestors also avoid repetition.

Now concrete classes define methods too. This helps referring the correct
method directly by the object type (when there are methods with the same
name).

Moved the declaration and definition of constructor methods to the concrete
class, since they should not be used in derived classes.

Updated example that call "color_set".
With this model, if two ancestor classes have a method with the same name,
to call one of them from a derived class you must write the scoped name of
the member function in the wrapper.
In this case, either Evas.Object and Evas.SmartObject have a property
named "color".

Added "from_global" option to the full_name grammar too.
2015-01-05 15:52:27 -02:00
Vitor Sousa ed75aa32d6 cxx: General C++ Eo wrapper generation improvement
Using a new architecture in the generated files that simplify multiple
inheritance and allows the use of interface types as parameters.

No longer using a hand-crafted C++ header for eo_base.eo.
This file was added to the generation process.

Updated all files that are dependent in the hand-crafted eo_base
C++ header.

Now there is a class that contains the essentials functions of the former
eo::base wrapper and that is used to create (through inheritance) the
"concrete" classes for all Eo generated wrappers.

No longer binding any function or property that are protected, private or
legacy for now.

eolian_type_instance is now a struct with general information for the
whole type.

Added the new header file namespace_generator.hh to hold namespace
generation grammars.

Separated declaration and definition of Eo wrappers methods.

Referring for most objects by its full name (starting at the global
namespace ::) in the generated files.

Created additional helper grammars to avoid code replication.

Removed a TODO comment referring to a doubt about inheritance of
constructor methods.
Added a TODO comment regarding memory allocation for callbacks in static
member functions.
2015-01-05 15:52:27 -02:00
Vitor Sousa d5ec6c41d9 eolian_cxx: Fix: Using binding type for @out parameter instead of native type
No longer reverting to the native type when the parameter has "@out"
direction.

Added "is_out" member variable to eolian_type class.
With that, generators can keep track of the direction of the parameters.
Also added helper functions "type_is_out" and "type_is_complex".

Created "to_native" functions in eo_cxx_interop.hh to convert binding types
from C++ arguments to the actual C function arguments.
Added static assertions in these functions to enforce compatibility
between the binding and the native type (Required by @out parameters).

Reworked the overload of the "to_c" function for eo::base derivated
objects. Now there is a overload that rely in the compatibility
between the native type and the wrapper, enabling a wrapper to be used as
an output parameter.
2015-01-05 15:52:27 -02:00
Felipe Magno de Almeida 890ce1f9cf eolian-cxx: Fixed C++ conversion for lists
Signed-off-by: Vitor Sousa <vitorsousasilva@gmail.com>
2015-01-05 15:52:27 -02:00
Larry Jr dff706f123 added new types in lookup table
Signed-off-by: Vitor Sousa <vitorsousasilva@gmail.com>
2015-01-05 15:52:27 -02:00
Vitor Sousa 132abc3534 eolian_cxx: Fix Eolian C++ generated wrapper inconsistencies
In convert.cc: Reading functions instead of implements to convert the
Eolian_Class. It avoids creation of methods that do not belong to the
class, in special it avoids calling the default constructor twice in the
generated code.

No longer generating one constructor in the C++ wrapper for each eolian
class constructor, since the correct behavior demands that all constructor
should be called. Now the wrappers have "constructor methods" that
must be called when creating a new object.

Updated test cases and examples to match the new interface. Some class
constructors and some test cases have to be removed since they were based
on the wrong assumption that constructors are mutually exclusive.

Created new generators for forwarding parameters and for looping over
the relevant parameters to the C++ wrapper executing a generic lambda.

Added a TODO comment regarding the call of constructor methods of all
base classes. Currently there is no base type with constructors, so this
situation should be discussed more.

Added a TODO comment regarding the way callback parameters are being
processed.
2015-01-05 15:52:27 -02:00
vivek d7c1987d0f efreet: pass the correct option from the user input.
Summary:
Pass the correct option -f for flush

@fix

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: devilhorns, englebass

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2014-12-25 21:32:55 +01:00
ChunEon Park 382c41e42d edje: support anti_alias option
set anti_alias in part section.
default is enabled.

part { name: "test";
   type: XXX;
   anti_alias: 0;
   ...
}

@feature
2014-12-24 16:29:49 +09:00
vivek 62a6db2dac eeze: add null check condition in eeze scanner module.
Summary:
Add null check condition for dev calloc in eeze scanner module
@fix

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: devilhorns, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2014-12-22 15:09:59 +01:00
Thiep Ha c27b511b28 edje: fix memory leak in epp
Summary:
Variable include_defaults can be allocated and
go out of scope without freeing it.

Reviewers: cedric, seoz, woohyun, Hermet

Reviewed By: Hermet

Differential Revision: https://phab.enlightenment.org/D1784
2014-12-18 09:17:03 +09:00
ChunEon Park 0f5a5fc19e edje/cpplib: fix formatting 2014-12-18 09:09:33 +09:00
Thiep Ha 6d0b834a76 edje: free allocated memory in epp
Summary: fname variable's memory is allocated but not freed.

Reviewers: cedric, seoz, woohyun, Hermet

Reviewed By: Hermet

Differential Revision: https://phab.enlightenment.org/D1785
2014-12-18 09:05:50 +09:00
Daniel Kolesa 208ad62d3c elua: error reporting in the library 2014-12-17 14:44:12 +00:00
Nibha Sharma 08d0137987 Logically dead code has been removed.Because width will always be less than HOST_BITS_PER_INT so else branch will never execute.
Reviewers: singh.amitesh, seoz, cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1506
2014-12-16 20:10:25 +09:00
Srivardhan Hebbar 9867fe5863 edje: Removed redundant assignement of rest_args.
Summary:
While going through the code, I found this. Thought this was just a redundant and fixed it.

@fix

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1774
2014-12-12 09:14:13 -05:00
Daniel Kolesa ec78c23761 elua: remove main.h (launcher is only 1 C file now) 2014-12-12 13:43:39 +00:00
Daniel Kolesa 09869589c9 elua: move caching into the library 2014-12-12 13:39:57 +00:00
Daniel Kolesa 4a1bfdeb4d elua: move io extensions to library 2014-12-12 12:04:10 +00:00
Daniel Kolesa 784045df9a elua: move i18n setup to the library 2014-12-12 10:44:58 +00:00
Srivardhan Hebbar 9792943910 edje: use realloc instead of malloc and memcpy.
Summary:
Replaced malloc with realloc. Removed free. Added a Error message.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Reviewed By: cedric

Subscribers: devilhorns, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2014-12-12 04:22:54 +01:00
Daniel Kolesa c65221c0ae elua: move core scripts to src/scripts 2014-12-11 16:59:27 +00:00
Daniel Kolesa aa6f9ea4a9 elua: add checkme 2014-12-11 16:41:24 +00:00
Daniel Kolesa 3b343878a8 elua: add initial pieces of the library 2014-12-11 15:48:18 +00:00
Srivardhan Hebbar 3c55dccb25 edge: fix memory leak and removed redundant return statement.
Summary:
The name was freed after exit, so freeing it before and also freeing in a error case. There was a return statement after exit, thought it was redundant and removed.
@fix

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: devilhorns, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2014-12-10 11:20:06 +01:00
Srivardhan Hebbar 05006e6463 ethumb: Fixing eina_init to eina_shutdown.
Summary:
In the end we should call eina_shutdown, but by mistake eina_init is being called. So have corrected that.

@fix

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1751
2014-12-09 09:25:01 -05:00
ChunEon Park 959c4cec3e edje/edje_cc: don't limit the bezier cubic minium value to 0.
No need to limit the minimum value to 0.
let user have a choice.
2014-12-09 16:59:58 +09:00
Mike Blumenkrantz 3da1ac3b42 eeze_scanner now has separate return codes for various startup-related failures
ref T1612
2014-12-05 13:35:14 -05:00
Mike Blumenkrantz b2d47c0070 eeze_scanner needs to hash on the address of the pointer and not use direct_add()
this is an @fix for the constant crashing

ref T1612
2014-12-05 13:34:11 -05:00
Daniel Kolesa 67c693eff1 elua: support is_c_only in lualian 2014-12-03 15:27:38 +00:00
ChunEon Park 0889fde94b edje/edje_cc_handler - updated internal doc. 2014-12-03 21:09:56 +09:00
Tom Hacohen b395d7dbd4 Eet: add diffeet a tool for diffing eet files.
This is not perfect at the moment, as the decoded output might change
drastically in some cases, however this is still useful for the other cases.

Anyway, we should fix the eet decoding to have a consistent order, so this
will be more useful.

@feature.
2014-11-25 11:30:30 +00:00
Daniel Juyung Seo 2b952597c1 edje: Add more description about edc group_name. 2014-11-25 19:30:16 +09:00
Carsten Haitzler ee0eb1336b edje - remove old script_only code that used embryo (not lua)
thjis was deprecated even before efl 1.0 by never removed. lua
replaced it for script_only objects and you havent been able to
compile an edje file with script_only enabled since 1.0, so no point
having the code here.

this cleans up that code and cruft.
2014-11-25 15:09:00 +09:00
Stefan Schmidt 0b06725e18 eldbus-codegen: More memory leak fixes for generated code.
Same fix as we did for simple method calls we need in complex method calls as
well. Unref message on error path.

@fix
2014-11-24 10:14:23 +01:00
Stefan Schmidt 8595e0632e eldbus-codegen: Free msg on error path for generated code.
If eldbus_message_arguments_append we would never unref the message.
This will fix various Coverity issues in generatd eldbus code.

@fix

CID: 1255634, 1255636, 1255637, 1255639
2014-11-24 10:14:15 +01:00
Daniel Kolesa e2351f0086 allow for loading of eo.lua files from module path 2014-11-19 14:05:18 +00:00
Daniel Kolesa a09049e563 elua: do not emit spaces where not required 2014-11-19 12:57:10 +00:00
Daniel Kolesa b1009770ef elua: simplify lualian typeconv 2014-11-19 11:40:49 +00:00
Stefan Schmidt 233317221d eldbus-codegen: Make generated code for property set work by setting the cb
Whenever you tried using a propset function from code generated with
eldbus-codegen it would segfault as we never set the callback function but
passed in data instead.

@fix
2014-11-14 12:39:08 +01:00
Vyacheslav Reutskiy 70f645efe9 edje_cc: update usage text
Add clatification, that for "-l license" and "-a authors" need to
specify files.
2014-11-13 17:10:59 +00:00
Vyacheslav Reutskiy 1654a12773 edje_cc: fix log message for authors write procedure.
@fix
2014-11-13 17:03:03 +00:00
Tom Hacohen 0042d3b2ea vieet: list the sections of an eet file if a section isn't passed.
Thanks to Sachiel for suggesting this feature.
2014-11-12 11:05:05 +02:00
Jaehwan Kim e4a1696a72 Edje: Set the min, max sizes of the image automatically.
Set the min, max sizes of the image automatically,
if it uses image set and there's no setting about min, max sizes.
This idea is originated by Jinsol Park.

@feature
2014-11-10 21:01:19 +09:00
Daniel Kolesa 6b20fcdc8f elua: two-stage bytecode caching
This unbreaks parallel builds where an elua process tries to read a bytecode
file that is currently being written. Now, we write into a temporary file first
instead and when it's written, rename.

@fix
2014-11-06 10:57:36 +00:00
Daniel Kolesa f0f9edd0bd elua: remove the : prefix for running apps
Instead, check if there is a file specified by the argument to elua and
if there is, execute it, otherwise treat it as app name. The reason this
is done is that the colon triggered ugly stuff in certain environments,
such as our MinGW crossbuild Jenkins slave.

@fix
2014-11-05 16:09:36 +00:00
Daniel Kolesa d23b9342d5 elua: remove redundant checks 2014-11-05 09:52:01 +00:00
Daniel Kolesa 1ea00af7e9 elua: support foo.dll and libfoo.dll patterns on Windows in util + better errors 2014-11-05 09:50:08 +00:00
zmike dbd3bea99e addendum to previous commit: use callback param but still compile 2014-11-04 17:58:39 -05:00
zmike 80076bffb9 eldbus-codegen now outputs compileable code for complex method signatures
it would be an understatement to say that I am disappointed by the original author's decision to write zero tests for this utility.
2014-11-04 17:42:52 -05:00
Jean Guyomarc'h 9fa0e6ea19 elua: load .dylib on OSX
Summary:
On OSX, libraries are generated as .dylib instead of .so. This led elua to
try loading missing libraries, and therefore crashing.

@fix

Reviewers: cedric, q66

Reviewed By: q66

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1642
2014-11-04 11:55:14 +00:00
Daniel Kolesa 8077e14fd6 elua: support for environment variable library path lookups in util.lib_load
This allows us to get rid of the LD_LIBRARY_PATH hack and thus make it more
cross-plaform as well as fix some bad behavior (with the hack it still looked
up the systemwide library if present instead of preferring in-tree)
2014-11-03 13:20:54 +00:00
Cedric BAIL 7b2aecff79 edje: use the right variable.
Thanks michelle_lg.
2014-10-31 10:45:28 +01:00
Cedric BAIL 62fd3c0a9b edje: fix use of eina_tmpstr_del after eina_shutdown.
atexit could call eina_tmpstr_del after the shutdown of eina leading
to the access of some random/garbage memory.

@fix
2014-10-30 00:36:49 +01:00
Stefan Schmidt cad8353d62 edje_cc_out: Do not shadow another local variable. 2014-10-29 16:07:39 +01:00
Jaehwan Kim dfdc31cae7 edje_cc_out: update the id of set images.
Before it removes unused images, it updates ids.
For the set images, it should be done.

@fix
2014-10-29 21:06:36 +09:00
Jean-Philippe Andre 8d9c6c0a00 inotify: Fix safety after read in 3 places
Fixes Coverity issues:
 - CID 1039565
 - CID 1039566
2014-10-28 10:54:51 +09:00