Commit Graph

46434 Commits

Author SHA1 Message Date
Jean-Philippe Andre cb93c26db7 Evas proxy: Implement buffer map/unmap 2016-03-28 16:40:02 +09:00
Jean-Philippe Andre 22353e31e1 Efl.Canvas.Image: Remove object data for maps
The engine is responsible for the complete tracking of
maps.

Also, make buffer_unmap return bool.
2016-03-28 16:40:02 +09:00
Jean-Philippe Andre ba4ffba8c1 Evas: Add a test case for image buffer_map.
This:
1. opens a file
2. maps its data and vaguely verifies it
3. writes data to it
4. writes data to it with a GRY8 map
5. verifies that the final image has all the proper pixels
2016-03-28 16:40:02 +09:00
Jean-Philippe Andre 488854af2b Efl.Gfx.Buffer: Switch to void* data and signed ints
1. unsigned char* as a return type was not even compatible
   with the default colorspace (ARGB: 32 bits).

2. Change all unsigned to int for... uh... simplicity
   unsigned is more correct than int for things like width,
   size or stride, but in fact having both ints (x,y) and unsigned
   ints makes the code more complex.
   This is a matter of personal taste.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre d5b0b1e683 Evas: Add SW engine map/unmap functions
Also, fix some of the code using them.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 078117d367 draw: Import or implement some colorspace conversion routines
Those and many more will be required for proper map/unmap support.
There will be problems with planar formats:
  YUV, RGB565_A5P, ETC1_ALPHA

The quick solution to this problem is to not support region
conversions, only full-image (so we can assume the location of
the various planes in memory).
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 39a970835b Evas: Remove unimplemented border_set/get (engine internal) 2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 28a03d6e19 Evas: Remove unimplemented image comment (internal)
This is a minor cleanup of RGBA_Image.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 8b9f525c01 Evas.Image: Add ERR in long-deprecated functions
- evas_object_image_data_convert()
- evas_object_image_pixels_import()
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 326ff9ae82 Efl.Canvas.Image: Implement support for map/unmap
Now the real hard work is to actually implement support inside
the engines: SW and GL generic.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 91e0bdb1e7 Evas: Simplify direct access to image data
This should avoid issues with image_data_get from the engines,
when we really just want to fetch the original data pointer.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 08c1160888 Efl.Canvas.Image: Implement raw data_set/copy/get
No more refcount. This is only to initialize the data from
an external buffer. data_get will only work if data_set was
used (not even copy_set).
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre f78cbac9e6 Evas.Image: Remove buffer_set/get
This will be properly implemented by the subclasses. In particular,
map/unmap will be used where it makes sense, and data_get/set will
be limited to Efl.Canvas.Image and Surface.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre d4e713a18c Evas.Image: Move stride.get away from Evas.Image
stride does not apply to all image objects, eg. proxies or 3d scenes.
it will be implemented by the classes that support stride and pixel
data access
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 0d41ad0c83 Emile: Move colorspaces to Efl.Gfx
A small hack to the toolchain allows us to generate enums with eolian
for use by Eet and Emile (internal or otherwise non-eo libraries).

Thanks to how BUILT_SOURCES works, the eo.h files required by Emile
will be generated before they are used.

This adds a partial dependency on eo for eet and emile:
 - package dependency
 - include dependency

There is no library link dependency.
2016-03-28 16:40:01 +09:00
Jean-Philippe Andre 83b8b8c958 Evas.Image: Move data_set/get to legacy file
Those functions will be replaced by map/unmap
2016-03-28 15:53:15 +09:00
Jean-Philippe Andre 015554e57e Evas 3d: Hide warning with clang
An otherwise good looking macro triggers a warning with clang,
because of self comparison of constants (always true or always
false). Let's just silence the warning in this specific spot
with a pragma.
2016-03-28 15:53:15 +09:00
Jee-Yong Um 984a8f7f90 edje_cc: support hexadecimal color code
Summary:
Support hexadecimal color code in EDC.

Four types of color code are acceptable.
All values below mean 'Red'. (255 0 0 255)
   color: "#F00";
   color: "#F00F";
   color: "#FF0000";
   color: "#FF0000FF";

Color code tables are usually provided with hexadecimal numbers.
Supporting hexadecimal color code will allow developers to skip
manual conversion hex to decimal.

Test Plan: Test case will provided with seperated commit.

Reviewers: cedric, jpeg, raster

Reviewed By: raster

Subscribers: raster

Differential Revision: https://phab.enlightenment.org/D3831
2016-03-28 15:43:04 +09:00
Carsten Haitzler f23f167d51 efl elm build: fix pc file requirements to be correctly named
this fixes ecore_drm, ecore_fb and ecore_wl2 requirements to be right
have a - instead of an _.
2016-03-28 15:43:04 +09:00
Daniel Zaoui 13dc0d17f9 Fix installation of elementary objects
The path was wrong.
2016-03-28 08:32:44 +03:00
Yakov Goldberg 1cf4184618 elementary: fix installation of cmake config files 2016-03-27 15:01:21 +03:00
Daniel Zaoui 0d85c86e1d Test/Clock: fit Exactness requirements
The clock is directly set in edit mode, so the clock can't progress and
confuse Exactness scenario.
2016-03-27 13:26:15 +03:00
Daniel Zaoui cd1c3e0da7 Clock: adapt test to fit Exactness requirements
Exactness doesn't support mouse clicks pausing/resuming the clock.
Taken shots are not stable and display a different time.
2016-03-27 11:40:57 +03:00
Carsten Haitzler 4d6a8a7fce evas sw render: cutout rects may be used in multiple threads
several draw funcs keep a static Cutout_Rect *rects = NULL; variable
to cache cutout rects to avoid re-allocating them a lot etc. this is
fast and handy but we may use these from multiple threads. thats bad
.... mmmkay. so this fixes it the dirty way - makes them thread local.
:)

this fixes T3348 - the crash mentioned by @zmike

@fix
2016-03-26 10:52:14 +09:00
Cedric Bail 8269713fe5 elementary: fix generation of pkgconfig
T3361
2016-03-25 14:34:31 -07:00
Stefan Schmidt c352c504a5 build: make sure elementary.pc file gets actually installed
It was missing from the Makefile and thus not installed. Thanks Scimmia for
bringing this up.

ref T3361
2016-03-25 18:32:07 +01:00
Carsten Haitzler 2261964ca2 elm - fix elementary test pkgdatadir to be right so icons work etc. 2016-03-25 15:36:45 +09:00
Carsten Haitzler 1c2a5cec93 elm: fix window resize self-trigger
so there was/is a case where when an elm window is resized from
outside, it will happen to use the last known size (maybe old) and end
up requesting a resize to that size again itself. it basically
triggers its own resize request as a result of resize events. this
fixes that and stops the loop

@fix
2016-03-25 15:11:38 +09:00
Carsten Haitzler c413544ef7 elm theme: do some slickening up of shadows
so i had a separate flat theme i was working on but i just can't keep
up with changes so i'm just putting in some of the nicest bits here
slowly like nicer shadows.

@feat
2016-03-25 11:04:35 +09:00
Carsten Haitzler 3d09e68545 pc: add elementary.pc to gitignore 2016-03-25 11:01:48 +09:00
Carsten Haitzler 453329916e efl: fix build when drm and fb are enabled .. and more
after elm merge build broke with things like this enabled. this fixes
that.

i'd like to bring up one issue here. ecore_drm is not a good
abstractionlayer. it requires libdrm and other headers from system and
it should have abstracted things so the system libdrm is hidden/not
needed for build (or even perhaps at runtime and this could be rolled
into ecore_drm). this is how ecore_x is... and ecore_fb etc.
2016-03-25 10:53:38 +09:00
Cedric BAIL c2c99ca742 elementary: add forgotten cmake and pkgconfig files. 2016-03-24 15:43:24 -07:00
Cedric BAIL 77421cde47 elementary: fix directory discovery to properly locate your theme. 2016-03-24 14:55:14 -07:00
Mike Blumenkrantz 5edd64c849 embryo: don't mess with env vars in tzdate if no tz is passed 2016-03-24 17:37:50 -04:00
Cedric BAIL ab4bfcf250 elementary: when building with backends, we apparently need to link with them to.
This make elementary break the modularity of the underlying layer. I haven't looked
at what is going on here, but basically if you have a wayland, a drm, whatever backend
turned on. You need elementary to be link against that ecore_* directly. This means
we are lacking in abstraction in Ecore_Evas and are dlopening to much library at
startup. This needs to be improved in the future.

I am guessing this is related to maybe DnD and C&P.
2016-03-24 14:31:58 -07:00
Mike Blumenkrantz 3b9f53317d BUILD: USE WL2 FOR ELM BUILD 2016-03-24 17:19:13 -04:00
Stefan Schmidt aac7ada79d build elm: do not use libtool library flags for elm binaries
These binaries do not need the libtool library flags. This could actually lead
to problems. We already got a warning for one:

libtool: warning: '-version-info' is ignored for programs
2016-03-24 21:35:27 +01:00
Stefan Schmidt 9e5e69da4c elm_map: remove unused variables 2016-03-24 21:31:24 +01:00
Mike Blumenkrantz 25f0de1147 elm_win: monitor wl CONFIGURE events and unset resizing flag accordingly
resolves inability to resize again after resizing

@fix
2016-03-24 15:39:08 -04:00
Mike Blumenkrantz 2749775c74 elm_win: force resize during show if job is pending
this resolves the issue of all elm windows being created at 1x1 and
immediately resizing to another size after being shown, causing all
kinds of failures in various environments

@fix
2016-03-24 15:39:08 -04:00
Tom Hacohen 5bcb9fe528 Merge Elementary into the EFL
Some things may still be broken, but Cedric will progressively fix
things as they pop. Default configuration works as expected.
2016-03-24 18:50:47 +00:00
Cedric Bail 73895f5249 elementary: remove useless Makefile.am and force file in the correct place. 2016-03-24 11:23:11 -07:00
Cedric Bail 6ffdc07f76 elementary: and now compile all left over data. 2016-03-24 11:23:11 -07:00
Cedric Bail 0f5c30f4f2 elementary: add tests back in. 2016-03-24 11:23:11 -07:00
Cedric Bail fe83a09b67 elementary: disable some ATSPI test that I can't figure out why they fail. 2016-03-24 11:23:11 -07:00
Cedric Bail 7a57e27108 elementary: build themes. 2016-03-24 11:23:11 -07:00
Cedric Bail 14ec825aa9 elementary: search ELM_DATA_DIR environment for themes. 2016-03-24 11:23:11 -07:00
Cedric Bail 1db421c33e elementary: enable compilation of binary. 2016-03-24 11:23:10 -07:00
Cedric BAIL b0df722819 elementary: initial compilation of the library only. 2016-03-24 11:23:10 -07:00
Derek Foreman 0c388f386e ecore_evas: change ECORE_EVAS_RENDER_SYNC to NOSYNC and non-default
Summary:
commit f9e6550468 Changed the RENDER_SYNC
the default behaviour (previously it was something you had to
change source code to set that way)

This leads to massive amounts of tearing with the drm and gl_drm backends,
as they no longer wait for vblank before rendering.

I've changed the env var to ECORE_EVAS_RENDER_NOSYNC and made it
non-default as it used to be.  People can set the env var to disable
frame limiting instead of having to set an env var to enable it.

Frame limiting really should be the default behaviour.

Reviewers: zmike, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3829
2016-03-24 12:15:57 -04:00