Commit Graph

486 Commits

Author SHA1 Message Date
Mike Blumenkrantz 781aa27b6b autotools: add option to enable eo file install
Summary:
eolian is not stable so these files should not be distributed by default
in order to discourage relying on something which may break later

fix T7676

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7676

Differential Revision: https://phab.enlightenment.org/D8339
2019-03-14 12:44:00 -04:00
Mike Blumenkrantz 0134c04446 build: ensure correct headers are installed
for autotools this means adding more legacy headers to install, for
meson just some ??? headers

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8222
2019-03-07 14:16:55 -08:00
Mike Blumenkrantz 5bfe2e89d2 evas: remove all legacy usage from eo files
this takes the current generated output from eolian for legacy code in
evas and adds it to the tree, then removes legacy references from the
corresponding eo files. in the case where the entire eo file was for
a legacy object, that eo file has been removed from the tree

ref T7724

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D8107
2019-03-06 19:05:48 +01:00
Xavi Artigas 220f17ee8d Rename Efl.Gfx.Map -> Efl.Gfx.Mapping
Summary:
For clarity, since there are all kinds of maps, including a navigation map
widget.
Also, corrected some misspellings.

Test Plan: make && make check && make examples all work

Reviewers: cedric, zmike, bu5hm4n

Reviewed By: cedric

Subscribers: Jaehyun_Cho, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7564

Differential Revision: https://phab.enlightenment.org/D7974
2019-02-21 19:20:09 +01:00
Mike Blumenkrantz c2ae61ed0d autotools: remove all usage of evas_image_loader_tgv_(cflags|libs)
Summary:
these are empty variables which are apparently causing build errors for
some users in certain cases

Reviewers: bu5hm4n, stefan_schmidt

Reviewed By: stefan_schmidt

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7876
2019-02-05 11:08:01 -05:00
Marcel Hollerbach 9fefc35308 Revert "evas: make efl_canvas_group abstract"
This reverts commit ae65c64b8d.

It appears that abstract -> abstract enforcement is not needed anymore,
the other patches are fine. However, this one proposes a new object
which is not needed to exist.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7676
2019-01-17 13:58:08 +01:00
Marcel Hollerbach ae65c64b8d evas: make efl_canvas_group abstract
the efl_canvas_group should be abstract in order to support other
classes which are inheriting from it, which are abstract. This is done
in order to support only abstract parents from abstract classes.

ref T7240

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7600
2019-01-15 17:37:40 +01:00
Hermet Park 07521f5e07 evas vg: refactor internal function name.
Specify explict svg name in vg common function
since the function totally depends on svg spec.

No logic changes.
2019-01-09 14:59:01 +09:00
Stefan Schmidt 008b22c8a4 evas: fix distcheck build of ector evas engine
In commit fbe92aa67f a dependency on the
software_generic header file was brought to the gl_generic module.
The include path to make this work was updated for meson but not for the
autotools build.

TravisCI distcheck builds found this for us.

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7468
2018-12-19 10:33:49 +01:00
Hermet Park ce8b9e4b85 evas vg: rename evas_vg prefix to efl_canvas for consistency. 2018-11-23 20:01:53 +09:00
Carsten Haitzler f091ec3afb evas - add evas_common_types.h to makefile.am to fix distckeck 2018-11-13 18:36:22 +00:00
Vincent Torri 01c756a851 evas - generic loaders - use eina properly so windows build works 2018-11-02 13:54:40 +00:00
Wonki Kim 2e8f00c1ff evas: Modify configure to branch by architectures for neon
Summary:
neon code is only needed to be included for the arm architecture.
so that this code modify automake configure files to support it.

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7096
2018-09-27 14:23:51 +09:00
Mike Blumenkrantz 298b97b0b5 build: break out ddraw and cocoa static engine builds into utility libraries
these engines include c++ and objc files, meaning the final evas library will
use cxx/objc compilers for linking--even if they are not enabled--as long as
they are added to libevas.la in any condition

by compiling them into separate libraries and linking those into libevas.la,
cc can be used for linking in all cases

fix T2838

Differential Revision: https://phab.enlightenment.org/D6682
2018-09-14 10:54:09 +02:00
Hermet Park 2614179af8 Revert "evas vg: changed "vg object" to "vg""
This reverts commit ec69abed9d.

Ooops, I didn't intended this patch.  @#!@#!@#!@#
2018-09-10 17:27:42 +09:00
Hermet Park ec69abed9d evas vg: changed "vg object" to "vg"
Summary:
Following our naming rule, rename to like other primitives.

i.e. efl_canvas_rect, efl_canvas_image, efl_canvas_vg ...

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7013
2018-09-10 14:06:58 +09:00
Wonki Kim 4fb9effee9 evas: replace a current copy color function for neon
Summary:
current copy color function has problem sometime on a arm neon environment.
inline asm code makes crashing problem.

so that this patch replace the asm code with a function which is a part of pixman project.

Reviewers: cedric, Hermet

Subscribers: kimcinoo, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6922
2018-09-10 13:36:10 +09:00
Chris Michael b4e17905e9 efl: Remove cserve2 support from Makefile_Evas.am
Summary:
ref T7226
Depends on D6938

Reviewers: raster, cedric, zmike, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7226

Differential Revision: https://phab.enlightenment.org/D6939
2018-08-30 13:52:41 +09:00
Mike Blumenkrantz 69fae8c7bf evas: remove render2
Summary:
this is more or less a dead project, having not been actively developed
in over 2 years and instead forcing people to expend more time and energy
to keep it compiling across refactors

fix T7227

Reviewers: stefan_schmidt, Hermet, ManMower, devilhorns

Reviewed By: Hermet, devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7227

Differential Revision: https://phab.enlightenment.org/D6878
2018-08-21 10:36:55 -04:00
Youngbok Shin 517018e008 evas textblock: add/apply cursor cluster APIs based on grapheme cluster
Summary:
Add a feature for moving cursor over a grapheme cluster.
It is applied to edje_entry.c and elm_entry.c for improving
cursor handling just like other modern text editors. ex) gedit
The patch on Evas needs to update libunibreak library.
So, the patch will update libunibreak, too.
@feature

Test Plan:
1. Put "ഹലോ" in your entry.
2. Your cursor can reach at the end of text from the beginning
   only in 2 right key event with this feature.

Reviewers: raster, cedric, jpeg, herdsman, zmike, devilhorns

Reviewed By: herdsman, zmike

Subscribers: #reviewers, #committers, zmike, bowonryu, woohyun

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5490
2018-08-20 10:29:32 -04:00
Mike Blumenkrantz 64c26edd52 build: fix evas static build of gl engines
Summary:
when gl_common is built statically, the include directories for it need
to be added to the main evas library build

@fix

Reviewers: devilhorns, vtorri, ManMower

Reviewed By: ManMower

Subscribers: ManMower, #reviewers, cedric, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D6681
2018-08-14 17:09:11 -04:00
Mike Blumenkrantz ad81ef1364 build: define PACKAGE_BUILD_DIR as $(abs_top_builddir) for all test suites
Summary:
this needs to be consistent so that it can be used reliably across suites

also these build flags really need to be consolidated into a single variable
that can be reused

Depends on D6666

Reviewers: devilhorns, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D6731
2018-08-08 09:45:30 -04:00
Daniel Kolesa 9d9a3e87c8 build: disable Lua binding generation
Summary:
As Lua bindings don't work right now, it is pointless to waste
build time generating them. Elua itself on the other hand is
useful and should stay enabled.

This also does some preparation work for separate configure
switch for bindings after release, but for now keep configure
switches as they are.

Reviewers: zmike, stefan_schmidt

Subscribers: cedric, bu5hm4n, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6721
2018-08-01 13:31:15 -04:00
Hosang Kim df652673fe evas: move clearing cows to right place.
Summary:
Evas is child of main loop now, so evas is deleted when main loop is quitted.
In case of not calling evas_free() explicitly by app side, a crash occurs.
So move clearing cows to below ecore_shutdown().

Test Plan:
//Compile with:
//gcc evas_test.c -o evas_test `pkg-config --cflags --libs ecore evas`

#include <Evas.h>
#include <Ecore.h>

Eina_Bool
_timer_cb (void *data)
{
    ecore_main_loop_quit();
    return 0;
}
int
main(int argc, char *argv[])
{

   evas_init();
   Evas *evas = evas_new();
   Evas_Object *obj = evas_object_box_add(evas);
   Evas_Object *rect = evas_object_rectangle_add(evas);
   evas_object_color_set(rect, 255, 255, 255, 255);
   evas_object_resize(rect, 300, 400);
   evas_object_show(rect);

   evas_object_box_append(obj, rect);

   evas_object_show(obj);
   ecore_timer_add(2.0, _timer_cb, NULL);
   ecore_main_loop_begin();

   evas_shutdown();
   return 0;
}

Reviewers: devilhorns, cedric, jpeg, id213sin, woohyun, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6346
2018-06-27 07:50:31 -04:00
Youngbok Shin 73c39bcf12 Evas textblock: fix wrong hyphenation issues with non UTF8 encoded dictionary
Summary:
hnj_hyphen_hyphenate2() needs properly encoded text based on the given
dictionary. Each dictionary contains its encoding information at the head
of file. So, text will be converted to proper encoding before calling
the function. It fixes T3221.
@fix

Test Plan: Included in Evas test suite.

Reviewers: z-wony, tasn, woohyun, herdsman, Blackmole, minudf

Subscribers: zmike, stefan_schmidt, raster, cedric, jpeg

Tags: #efl

Maniphest Tasks: T3221

Differential Revision: https://phab.enlightenment.org/D3863
2018-05-06 12:01:41 +03:00
Xavi Artigas a217d4b455 Efl.Canvas.Vg.Object (from Efl.Canvas.Vg)
Also, Efl.Canvas.Vg.* (from Efl.Canvas.VG.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:30 -07:00
Xavi Artigas 80db4c0c22 Efl.Canvas.Event_Grabber (from Efl.Canvas.Object.Event.Grabber)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:28 -07:00
Mike Blumenkrantz bbbdfbecc4 Efl.Gesture: rename to Efl.Canvas.Gesture
most C api remains unchanged

ref T6714
ref T6716
2018-02-21 14:43:37 -05:00
Mike Blumenkrantz a0a80fc74a Efl.Animator: rename to Efl.Canvas.Animator
most C api remains unchanged

ref T6714
ref T6716
2018-02-21 14:06:43 -05:00
Mike Blumenkrantz 7eb0375c0e efl_vg: namespace moves
efl.vg -> efl.canvas.vg.node
efl.vg.* -> efl.canvas.vg.*

ref T6714
2018-02-21 14:04:59 -05:00
Marcel Hollerbach 09fd1c273c evas: use new bs static lib 2018-02-17 21:17:58 +01:00
Mike Blumenkrantz 4b91654e5f evas: move evas_stack.c -> evas_stack.x
this file contains canvas methods which should be subject to compiler
type checking, requiring that they be included in the file which contains
the eolian generated code
2018-02-15 13:10:59 -05:00
Daniel Hirt 4a905a22a4 Canvas image: add Efl.Canvas.Text.Factory + use in Ui.Text
This interface has a simple 'create' method to create Efl.Canvas.Object
given a key.
This is used higher-up in Ui.Text in the next commit.

Ui text: add ability to set item factories

Added API to set an item factory object.
This is similar to the previous item providers (that worked with
callbacks).

You instantiate a factory object and set it on the Ui.Text object.
Each factory implements the "create" method from
Efl.Canvas.Text.Item_Factory.

This also includes 3 public factories (Image, Emoticon and Fallback):
  - Image factory: creates images from added entries (key strings)
  - Emoticon factory: creates emoticons by querying the theme
  - Fallback: creates image, then falls back to emoticon

If no factory is set, then the fallback (internal) factory is used.

See the added "Ui.text Item Factory" test in elementary_test for an
example of usage.

@feature
2018-01-18 10:20:28 -08:00
Sungtaek Hong 588995da31 efl_playable: split Efl.Player interface to Efl.Playable interface
Summary:
Efl.Player interface simply provides play functions,
but another interface which indicates Efl.Player will play is also
needed.

Test Plan: Run elementary_test->Efl.Animation tests

Reviewers: woohyun, conr2d, Jaehyun_Cho, jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D5662
2018-01-16 22:04:55 +09:00
Felipe Magno de Almeida e67d6484b8 efl-cxx: Fixes to make dist 2017-12-13 14:13:09 -02:00
Derek Foreman 8a3b983c53 ecore_wl2 wayland_shm: Move surface functions into ecore_wl2
Finish pushing these all into ecore_wl2
2017-12-01 10:58:44 -06:00
Derek Foreman 9fdcf7d0eb wayland_shm/ecore_wl2: Move buffer allocation into ecore_wl2
This moves all the platform specific buffer allocation into ecore_wl2
instead of the engine.

Note that this makes an internal struct available in the header.  This
will be removed shortly.
2017-11-15 11:54:37 -06:00
subhransu mohanty d4a2b2025b evas/common: added a generic cache in evas common. 2017-11-10 11:20:38 +09:00
Derek Foreman c2fe37a46d wayland_shm: Remove old shm code
The new shm code should be equally capable - minus one surface resize
optimization that probably didn't buy us much performance at the cost
of memory.
2017-11-08 15:12:51 -06:00
Vitalii Vorobiov 7d9c1256a3 vg_savers/svg: empty (for now) module that will save svg in original file
Just as a starter to make a working background that, later on, will go
through Svg_Node's and build a certain source code to be saved in SVG
picture as a file
2017-11-07 11:54:09 +09:00
subhransu mohanty b038d7df25 Remove evas internal dependency from the evas_font module
Summary:
dev branch : devs/subhransu/font

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

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

Reviewers: jpeg, raster, herdsman, cedric, id213sin

Subscribers: cedric, jpeg

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

Note: evas_canvas3d is the last remaining thing that is installed along
EO files, but those are all beta APIs.
2017-11-01 11:22:33 +09:00
subhransu mohanty 64231ae699 evas/vg: Added vg tree caching support 2017-10-27 14:58:38 +09:00
Subhransu Mohanty 48c1c4850a static_lib: added vg_common static lib
Features:
 Copied vg eet descriptor from edje_data
 Copied convert func  from Svg_Node to Efl_VG from edje
 added  convert function from Efl_VG to Svg_Node
2017-10-27 14:58:38 +09:00
subhransu mohanty 880dd63a0c evas/vg: renamed the evas_vg class to efl_canvas_vg
Reviewers: jpeg

Subscribers: jenkins, cedric

Differential Revision: https://phab.enlightenment.org/D5357
2017-10-24 15:19:53 +09:00
subhransu mohanty d267595557 evas: add set function for root_node property.
Summary:
Currently user ask for the root_node from the evas_vg object and then attach its tree by setting the root node as parent.
With this change this process will be explicit. user has to set the root node to the evas_vg object and the object will take the ownership
of the tree. User can query the current vg_tree by root_node_get api.

Test Plan:
        Fixed the test app to reflects this change.

Reviewers: jpeg, cedric

Reviewed By: jpeg, cedric

Subscribers: cedric

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2017-10-23 11:05:38 -07:00
Daniel Kolesa f0b7722cc8 elua, js: also update build after evas changes 2017-10-19 20:17:14 +02:00
Daniel Kolesa 823edb9487 cxx build: update after the evas gesture build fix
The changes in f334f2a504 also need
an update in the C++ build.
2017-10-19 20:15:33 +02:00
Daniel Kolesa f334f2a504 evas build: fix installation paths for new gesture stuff
EFL-using things wouldn't build after addition of the new gesture
stuff because gesture headers would get installed into the
$PREFIX/evas-1/canvas instead of $PREFIX/evas-1/gesture
directory and Evas_Eo.h is including headers from the gesture/
directory. This fixes the problem by installing the headers into
their correct location.

Spanks go to @jpeg for not reviewing things properly.
2017-10-19 16:02:20 +02:00
smohanty d5f72053fd evas/gesture: Added long_tap gesture to gesture framework 2017-10-19 10:33:12 +09:00