WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED INVALID
74925
[EFL] Added selective rendering to tiled backing store
https://bugs.webkit.org/show_bug.cgi?id=74925
Summary
[EFL] Added selective rendering to tiled backing store
Tomasz Morawski
Reported
2011-12-20 05:46:08 PST
The selective rendering allows to render and update tiles during scrolling without blocking of UI. This is especially useful on mobile devices comparing to the old implementation of tiled backing store where UI can be blocked for long time when there was a lot of tiles to update.
Attachments
Patch
(17.93 KB, patch)
2011-12-20 05:48 PST
,
Tomasz Morawski
no flags
Details
Formatted Diff
Diff
Updated.
(17.92 KB, patch)
2011-12-20 06:27 PST
,
Tomasz Morawski
no flags
Details
Formatted Diff
Diff
Updated. Changed API version
(18.23 KB, patch)
2011-12-21 01:56 PST
,
Tomasz Morawski
no flags
Details
Formatted Diff
Diff
Updated according to suggestions
(18.24 KB, patch)
2011-12-22 00:57 PST
,
Tomasz Morawski
no flags
Details
Formatted Diff
Diff
Show Obsolete
(3)
View All
Add attachment
proposed patch, testcase, etc.
Tomasz Morawski
Comment 1
2011-12-20 05:48:45 PST
Created
attachment 120015
[details]
Patch
KwangHyuk
Comment 2
2011-12-20 06:05:55 PST
Need small fix.
> Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp:1804 > + PRIV_DATA_GET_OR_RETURN(ewkBackingStore, priv, EINA_FALSE);
check EINA_FALSE.
> Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp:1819 > + PRIV_DATA_GET_OR_RETURN(ewkBackingStore, priv, EINA_FALSE);
Ditto.
KwangHyuk
Comment 3
2011-12-20 06:07:13 PST
> Source/WebKit/efl/ChangeLog:3 > + [EFL] Added selective rendering to tiled backing store
Need to be end with ".".
Tomasz Morawski
Comment 4
2011-12-20 06:27:35 PST
Created
attachment 120021
[details]
Updated.
KwangHyuk
Comment 5
2011-12-20 06:45:58 PST
LGTM.
Raphael Kubo da Costa (:rakuco)
Comment 6
2011-12-20 07:43:07 PST
Comment on
attachment 120021
[details]
Updated. View in context:
https://bugs.webkit.org/attachment.cgi?id=120021&action=review
How does this relate to the rendering suspension code?
> Source/WebKit/efl/ewk/ewk_view.h:186 > -#define EWK_VIEW_SMART_CLASS_INIT(smart_class_init) {smart_class_init, EWK_VIEW_SMART_CLASS_VERSION, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} > +#define EWK_VIEW_SMART_CLASS_INIT(smart_class_init) {smart_class_init, EWK_VIEW_SMART_CLASS_VERSION, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
Whenever you change the public structure, you need to bump EWK_VIEW_SMART_CLASS_VERSION.
KwangHyuk
Comment 7
2011-12-20 20:25:26 PST
(In reply to
comment #6
)
> (From update of
attachment 120021
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=120021&action=review
> > How does this relate to the rendering suspension code? > > > Source/WebKit/efl/ewk/ewk_view.h:186 > > -#define EWK_VIEW_SMART_CLASS_INIT(smart_class_init) {smart_class_init, EWK_VIEW_SMART_CLASS_VERSION, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} > > +#define EWK_VIEW_SMART_CLASS_INIT(smart_class_init) {smart_class_init, EWK_VIEW_SMART_CLASS_VERSION, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} > > Whenever you change the public structure, you need to bump EWK_VIEW_SMART_CLASS_VERSION.
Good point. :) Update of this field can be useful for preventing unexpected crash. Tomasz, would you update the version too ?
Tomasz Morawski
Comment 8
2011-12-21 01:56:18 PST
Created
attachment 120161
[details]
Updated. Changed API version
Tomasz Morawski
Comment 9
2011-12-21 02:10:21 PST
(In reply to
comment #6
)
> (From update of
attachment 120021
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=120021&action=review
> > How does this relate to the rendering suspension code?
Selective rendering partially neutralizes rendering suspension in some conditions and allows to render some tiles in diffrent way. But still enabled rendering suspension doesn't allow to call some code inside _ewk_tiled_backing_store_smart_calculate function (change matrix model).
KwangHyuk
Comment 10
2011-12-21 16:46:44 PST
LGTM.
Gyuyoung Kim
Comment 11
2011-12-21 18:48:58 PST
Comment on
attachment 120161
[details]
Updated. Changed API version View in context:
https://bugs.webkit.org/attachment.cgi?id=120161&action=review
> Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp:94 > + bool selective_rendering : 1; // Set if selective tile rendering should be used. This setting allows to create a new tiles when are needed.
Do not use efl coding style for internal implementation.
Tomasz Morawski
Comment 12
2011-12-22 00:57:53 PST
Created
attachment 120284
[details]
Updated according to suggestions
KwangHyuk
Comment 13
2012-01-11 06:11:02 PST
> Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp:1586 > + // disable selective rendering if zooming
You may check comment rule #2 on webkit coding style.
> Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp:1641 > + // disable selective rendering if zooming
Ditto.
> Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp:1810 > + // update pending updates now
Ditto.
> Source/WebKit/efl/ewk/ewk_view.h:174 > +#define EWK_VIEW_SMART_CLASS_VERSION 4UL
Need to rebase and update version again. :)
KwangHyuk
Comment 14
2012-01-26 20:40:36 PST
Tomasz, Would you update this patch ? GyuYoung and Ryuan, Would you share your additional idea for this patch after the update ? :)
KwangHyuk
Comment 15
2012-02-01 05:07:16 PST
(In reply to
comment #14
)
> Tomasz, > Would you update this patch ? > > GyuYoung and Ryuan, > Would you share your additional idea for this patch after the update ? :)
Any update ?
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug