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.
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.
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.
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
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
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
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
Summary:
Each Ecore_Wl_Input structure has there own keymap.
This keymap is struct xkb_keymap used in libxkbcommon lib and
the client can get this keymap from server in wayland system.
So if the client want to get keymap and use some libxkbcommon APIs,
use this API to get keymap.
Test Plan: Use this api after initialize wayland system.
Reviewers: raster, zmike, ManMower, devilhorns
Reviewed By: devilhorns
Subscribers: input.hacker, ohduna, cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3819
Summary:
add null check in _style_match_tag()
if evas_object_textblock_text_markup_set() is called with markup text before setting style,
segmentation fault is occurred in _style_match_tag()
@fix
Test Plan:
Insert this situation to test suite
-> test id : evas_textblock_simple
Test for without this patch:
1. apply patch just "src/tests/evas/evas_test_textblock.c" partially.
2. $make check
Test for with this patch:
1. apply this patch completely (2 files)
2. $make check
Reviewers: id213sin, herdsman
Subscribers: Blackmole, cedric, jpeg
Projects: #efl
Differential Revision: https://phab.enlightenment.org/D3818
Only Efl.Canvas.Proxy implements efl_canvas_proxy_source_clip_set.
Legacy image objects should use legacy APIs.
Thanks @zmike for the report and sorry I never saw the ERR myself :(
Fixes T3342
Width calculations should consider the x_bear. This has been leading to
inconsistent results between wrapping calculation during layout and the
final formatted size.
Also, we should stop our walk only when exceeding 'x', so changed "<="
to "<".
@fix
Summary:
Previous implementation loaded data from memory first and then checked the borders.
Here I check the borders first as it is for C implementation.
This prevents read of non-accessible memory.
Reviewers: cedric, jypark, Hermet, jiin.moon, jpeg
Reviewed By: jpeg
Projects: #efl
Differential Revision: https://phab.enlightenment.org/D3809
So I forgot to clean my hard drive from previously generated files,
and obviously everything still worked. This lead to having to roll back
evas_smart_clipped.eo as a public eo object until we merge elementary.
Still I would like someone to take a look at elm_pan.eo and figure out
how to not rely on smart clipped there.
There's no point in calling fill_set AND fillet_set(false).
If a users wants to specify the fill, that should be enough
to switch to non-filled mode.
Maybe the "filled" mode should even be called auto or something?
Summary:
Applications usually use edje syntax like as,
```
part { name :"bg";
type: SWALLOW;
description {
state: "default" 0.0;
rel1.relative: 0.0 0.0;
rel2.relative: 0.0 0.0;
align: 0.0 0.0;
min: 100 100;
}
}
```
But edje does not calculate it exactly without "fixed: 1 1".
So edje calculation is repeated until 4000 x 4000, it is waste of time.
Reviewers: woohyun, raster, Hermet, id213sin, cedric
Reviewed By: cedric
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3801
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>