Make sure not to sample the mask image outside its boundaries.
This is a series of last resort checks. I can not reproduce the
crashes but know they have happened.
I used EINA_UNLIKELY more for clarity than for compiler optimizations.
Summary:
... to simply invoke `_ecore_main_fd_handler_add()`. The only difference appears to be the former sets `->file` to `EINA_TRUE`. So, we add that as a parameter.
You can consider this patch, and any other contributions I make to enlightenment, to be under the terms of whatever open source license governs that particular project, or at your option, the MIT license. Basically, if I'm uploading patches here, it's because I want them to be useful.
Test Plan: Should be pretty straightforward. I am in the process of doing a compile check.
Reviewers: #efl
Projects: #efl
Differential Revision: https://phab.enlightenment.org/D2302
Use type Edje_Object instead of Eo in legacy EAPI's.
Spotted in TAsn's ABI report, under "Problems with Symbols".
I believe this will actually add two changes (Eo -> Edje_Object),
but I like the typing better ;)
- prioritize vertical scroll over horizontal
- set amount to either -1 or 1, since EFL doesn't handle other value properly
- fix wheel bouncing with some devices (X:0,Y:0 scrolling events)
@fix
These headers are being included from public headers (Ector.h),
so they need to be available.
That's what happens when you push in code that's not actually used
by anyone.
@fix
As C version,
It increase alpha value by 1 to avoid loosing of the remains while it divides
values. Neon version does same technique to make same results.
This patch reduces power consumption by around 18mA in certain scenarios
(music player list scroll, my files sound list scroll), making
evas_common_convert_argb_premul() ~60% faster (6.2msec->2.6msec).
Take music-player application, make 100 copies of the standard
Over the Horizon” song, scroll up and down to see those
downscaled-from-720x720 thumbnails enter and leave the screen.
Every time a list item enters the screen, the image is re-read
(as evas image cache is not large enough to store more than two
pictures of that size), and one call of _common_convert_argb_premul()
occurs, taking ~6.2msec (which is not much compared to ~60msec
spent in libpng->libz (the biggest bottleneck here),
but still noticeable).
A similar power consumption improvement is observed during
scrolling sounds list of the same files in My Files application
(just with idle level ~100mA lower).
We also checked the new code to be correct on random input data.
all tests are performed based on tizen device.
Signed-Off-By: Artem Dergachev <dergachev.a@samsung.com>
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.
Test case:
- Elementary Test
-- GLView
--- Direct rendering
Direct rendering would never happen in reality, because Evas GL
had to fallback. The reason being that DR requires the window
to have a depth buffer, but this depth buffer was no present
in the default config.
From elm, the solution is to set a special accel_preference,
for instance "gl:depth". But setting this value right before
calling elm_win_add() for the GLView test was already too late.
Indeed, evas_x would keep the default configurations and reuse
them no matter what was requested (ie. only RGB and RGBA would
work).
Solution:
Implement a slightly more complex cache based on a hash map instead
of just two static variables. Always request a new config if it's
not found in the current hash. Store that config, and reuse it for
the same config requests.
Tons of line changes because of the name changes and the whitespace
adjustments. Also some variables disappeared into the magic hash table.
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
Summary:
Made http and ftp url configurable via configure and also added test cases for ftp upload and http post.
Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: Sergeant_Whitespace, cedric
Subscribers: Sergeant_Whitespace, cedric
Differential Revision: https://phab.enlightenment.org/D2226
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
prev logic increased the alpha channel by 1 so the unpremul resulted in the color got too diff from the origin.
We can't avoid losing the rest values while dividing values in premul/unpremul()
but this will recover the value better closed to origin value.
Summary:
Some other patches in elm will implement support for images.
async means fopen() will happen asynchronously in a thread.
Reviewers: cedric, raster, tasn
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2261
Summary:
Add pointer to target billboard node in Evas_3D_Node
Skip set flags change orientation for billboard node
Add method node_billboard_update to use it for change orientation during traverse
by nodes
Split API evas_3d_node_look_at_set to have possibility change orientation of node
without set flags
Reviewers: cedric, Hermet
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2245