Page MenuHomePhabricator

[WIP] Efl.Canvas.Group: support Efl.Gfx.Filter
AbandonedPublic

Authored by kimcinoo on Jul 18 2019, 4:53 AM.

Details

Reviewers
Hermet
jsuya
Summary

Implements:

Efl.Gfx.Filter.filter_program { set; }
Efl.Canvas.Filter.Internal.filter_dirty;
Efl.Canvas.Filter.Internal.filter_input_alpha;
Efl.Canvas.Filter.Internal.filter_input_render;
Efl.Canvas.Filter.Internal.filter_state_prepare;

Diff Detail

Repository
rEFL core/efl
Branch
KIMCINOO-FILTER-SMART-OBJECT
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 12611
Build 9076: arc lint + arc unit
kimcinoo created this revision.Jul 18 2019, 4:53 AM
kimcinoo requested review of this revision.Jul 18 2019, 4:53 AM
kimcinoo updated this revision to Diff 23549.Jul 22 2019, 12:59 AM

Use offset correctly when filter surface draws to default surface

kimcinoo updated this revision to Diff 23570.Jul 22 2019, 10:31 PM

Apply changes of children

kimcinoo updated this revision to Diff 23587.Jul 23 2019, 6:29 PM

Fix invalid memory read issue when obj size is changed.

Hermet requested changes to this revision.Jul 23 2019, 11:18 PM

Is there any reason that filter only targets to group object? but not a single canvas object?
We can generally support filter for all types of graphical objects.

This revision now requires changes to proceed.Jul 23 2019, 11:18 PM
kimcinoo updated this revision to Diff 23928.Aug 6 2019, 12:43 AM

Set context clip using clipper.

See eng_image_draw -> evas_common_rgba_image_scalecache_do
-> evas_common_scale_rgba_in_to_out_clip_sample_do
-> scale_rgba_in_to_out_clip_simple_internal which is checking clip.use and
clip information set by eng_context_clip_set -> evas_common_draw_context_set_clip.

Is there any reason that filter only targets to group object? but not a single canvas object?
We can generally support filter for all types of graphical objects.

Let me think more about this... :-]

kimcinoo updated this revision to Diff 23971.Aug 8 2019, 4:06 AM

Fix crash issue and rendering issue on GL engine.
Remove incorrect error message. return value of ENFN->image_draw does not mean
that there is an unexpected error.

kimcinoo abandoned this revision.EditedSep 3 2019, 2:57 AM

Probably D9648 is way to go.
This one has a kind of duplicated lines could lead to a mess.