<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>111401</bug_id>
          
          <creation_ts>2013-03-04 20:30:52 -0800</creation_ts>
          <short_desc>[EFL][WK2] WebView::didRenderFrame() does not need to schedule update display.</short_desc>
          <delta_ts>2017-03-11 10:37:31 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit EFL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>110741</dependson>
          <blocked>110066</blocked>
    
    <blocked>111405</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dongseong Hwang">dongseong.hwang</reporter>
          <assigned_to name="Dongseong Hwang">dongseong.hwang</assigned_to>
          <cc>gyuyoung.kim</cc>
    
    <cc>kenneth</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>mikhail.pozdnyakov</cc>
    
    <cc>rakuco</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>847223</commentid>
    <comment_count>0</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2013-03-04 20:30:52 -0800</bug_when>
    <thetext>PageClient::didRenderFrame() is called to notify time to draw, so didRenderFrame()
is not related to scheduling update display. QtPageClient::didRenderFrame() does
not schedule update display also. So this patch makes WebView::didRenderFrame()
not schedule update display.

On the other hands, PageClient::setViewNeedsDisplay() requires scheduling update
display to draw contents next time, so WebView::setViewNeedsDisplay() must
schedule update display.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847232</commentid>
    <comment_count>1</comment_count>
      <attachid>191392</attachid>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2013-03-04 20:57:12 -0800</bug_when>
    <thetext>Created attachment 191392
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847255</commentid>
    <comment_count>2</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2013-03-04 21:42:22 -0800</bug_when>
    <thetext>This isa  potential bug that the change of Bug 111405 can reveal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847336</commentid>
    <comment_count>3</comment_count>
      <attachid>191392</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-03-04 23:42:21 -0800</bug_when>
    <thetext>Comment on attachment 191392
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=191392&amp;action=review

Not sure this change will help anyhow.

&gt; Source/WebKit2/UIProcess/efl/WebView.cpp:260
&gt; +    m_ewkView-&gt;scheduleUpdateDisplay();

this should be done inside client

&gt; Source/WebKit2/UIProcess/efl/WebView.cpp:515
&gt; +    m_ewkView-&gt;pageViewportController()-&gt;didRenderFrame(contentsSize, coveredRect);

All above is also view client business.
Please consider patch at https://bugs.webkit.org/show_bug.cgi?id=110741. 
Are you sure you don&apos;t break view legacy behaviour code path?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847358</commentid>
    <comment_count>4</comment_count>
      <attachid>191392</attachid>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2013-03-05 00:05:11 -0800</bug_when>
    <thetext>Comment on attachment 191392
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=191392&amp;action=review

&gt;&gt; Source/WebKit2/UIProcess/efl/WebView.cpp:515
&gt;&gt; +    m_ewkView-&gt;pageViewportController()-&gt;didRenderFrame(contentsSize, coveredRect);
&gt; 
&gt; All above is also view client business.
&gt; Please consider patch at https://bugs.webkit.org/show_bug.cgi?id=110741. 
&gt; Are you sure you don&apos;t break view legacy behaviour code path?

Thank you for review.
My change matches to Qt PageClient behavior.
And I&apos;m sure it does not break view legacy behaviour, because didRenderFrame() is called by only one client, which already schedule update display.
updateViewport() in below code eventually calls WebView::setViewNeedsDisplay().

void CoordinatedLayerTreeHostProxy::didRenderFrame(const FloatPoint&amp; scrollPosition, const IntSize&amp; contentsSize, const IntRect&amp; coveredRect)
{
    dispatchUpdate(bind(&amp;CoordinatedGraphicsScene::flushLayerChanges, m_scene.get(), scrollPosition));
    updateViewport();
#if USE(TILED_BACKING_STORE)
    m_drawingAreaProxy-&gt;page()-&gt;didRenderFrame(contentsSize, coveredRect);
#endif
}

I&apos;ll update this patch after your Bug 110741 is landed :)

btw, I hope to remove didRenderFrame() in all code base. didRenderFrame() makes our code complex..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847365</commentid>
    <comment_count>5</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2013-03-05 00:16:17 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; btw, I hope to remove didRenderFrame() in all code base. didRenderFrame() makes our code complex..

So I don&apos;t want any code to depend on didRenderFrame to enqueue update display event.

In conclusion, I want
1. WebView::setViewNeedsDisplay() should enqueue update display event.
2. WebView::didRenderFrame() should not enqueue update display event.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>909101</commentid>
    <comment_count>6</comment_count>
      <attachid>191392</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-07-16 18:41:42 -0700</bug_when>
    <thetext>Comment on attachment 191392
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=191392&amp;action=review

Set r- because this patch needs to be updated according to Bug 110741.

&gt;&gt;&gt; Source/WebKit2/UIProcess/efl/WebView.cpp:515
&gt;&gt;&gt; +    m_ewkView-&gt;pageViewportController()-&gt;didRenderFrame(contentsSize, coveredRect);
&gt;&gt; 
&gt;&gt; All above is also view client business.
&gt;&gt; Please consider patch at https://bugs.webkit.org/show_bug.cgi?id=110741. 
&gt;&gt; Are you sure you don&apos;t break view legacy behaviour code path?
&gt; 
&gt; Thank you for review.
&gt; My change matches to Qt PageClient behavior.
&gt; And I&apos;m sure it does not break view legacy behaviour, because didRenderFrame() is called by only one client, which already schedule update display.
&gt; updateViewport() in below code eventually calls WebView::setViewNeedsDisplay().
&gt; 
&gt; void CoordinatedLayerTreeHostProxy::didRenderFrame(const FloatPoint&amp; scrollPosition, const IntSize&amp; contentsSize, const IntRect&amp; coveredRect)
&gt; {
&gt;     dispatchUpdate(bind(&amp;CoordinatedGraphicsScene::flushLayerChanges, m_scene.get(), scrollPosition));
&gt;     updateViewport();
&gt; #if USE(TILED_BACKING_STORE)
&gt;     m_drawingAreaProxy-&gt;page()-&gt;didRenderFrame(contentsSize, coveredRect);
&gt; #endif
&gt; }
&gt; 
&gt; I&apos;ll update this patch after your Bug 110741 is landed :)
&gt; 
&gt; btw, I hope to remove didRenderFrame() in all code base. didRenderFrame() makes our code complex..

&gt; I&apos;ll update this patch after your Bug 110741 is landed :)

Bug 110741 was landed. Will you update this patch ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1286342</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-03-11 10:37:31 -0800</bug_when>
    <thetext>Closing this bug because the EFL port has been removed from trunk.

If you feel this bug applies to a different upstream WebKit port and was closed in error, please either update the title and reopen the bug, or leave a comment to request this.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>191392</attachid>
            <date>2013-03-04 20:57:12 -0800</date>
            <delta_ts>2013-07-16 18:41:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-111401-20130305135246.patch</filename>
            <type>text/plain</type>
            <size>2417</size>
            <attacher name="Dongseong Hwang">dongseong.hwang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ0NzEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMmJlMTY5MjMzMzc0ZDc4
NzI5OTcxYWQ1ZDdmNzg2ODlhYmNjODlhMy4uMWE2ZmNkNGFmN2Y1MjkzM2Y3NjE3OTM3ZDZlOTY2
MWQ2MGI0MGQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEzLTAzLTA0ICBIdWFu
ZyBEb25nc3VuZyAgPGx1eHRlbGxhQGNvbXBhbnkxMDAubmV0PgorCisgICAgICAgIFtFRkxdW1dL
Ml0gV2ViVmlldzo6ZGlkUmVuZGVyRnJhbWUoKSBkb2VzIG5vdCBuZWVkIHRvIHNjaGVkdWxlIHVw
ZGF0ZSBkaXNwbGF5LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTExNDAxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgUGFnZUNsaWVudDo6ZGlkUmVuZGVyRnJhbWUoKSBpcyBjYWxsZWQgdG8gbm90aWZ5IHRp
bWUgdG8gZHJhdywgc28gZGlkUmVuZGVyRnJhbWUoKQorICAgICAgICBpcyBub3QgcmVsYXRlZCB0
byBzY2hlZHVsaW5nIHVwZGF0ZSBkaXNwbGF5LiBRdFBhZ2VDbGllbnQ6OmRpZFJlbmRlckZyYW1l
KCkgZG9lcworICAgICAgICBub3Qgc2NoZWR1bGUgdXBkYXRlIGRpc3BsYXkgYWxzby4gU28gdGhp
cyBwYXRjaCBtYWtlcyBXZWJWaWV3OjpkaWRSZW5kZXJGcmFtZSgpCisgICAgICAgIG5vdCBzY2hl
ZHVsZSB1cGRhdGUgZGlzcGxheS4KKworICAgICAgICBPbiB0aGUgb3RoZXIgaGFuZHMsIFBhZ2VD
bGllbnQ6OnNldFZpZXdOZWVkc0Rpc3BsYXkoKSByZXF1aXJlcyBzY2hlZHVsaW5nIHVwZGF0ZQor
ICAgICAgICBkaXNwbGF5IHRvIGRyYXcgY29udGVudHMgbmV4dCB0aW1lLCBzbyBXZWJWaWV3Ojpz
ZXRWaWV3TmVlZHNEaXNwbGF5KCkgbXVzdAorICAgICAgICBzY2hlZHVsZSB1cGRhdGUgZGlzcGxh
eS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9lZmwvV2ViVmlldy5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlZpZXc6OnNldFZpZXdOZWVkc0Rpc3BsYXkpOgorICAgICAgICAoV2ViS2l0OjpXZWJW
aWV3OjpkaWRSZW5kZXJGcmFtZSk6CisKIDIwMTMtMDItMjYgIEh1YW5nIERvbmdzdW5nICA8bHV4
dGVsbGFAY29tcGFueTEwMC5uZXQ+CiAKICAgICAgICAgW0VGTF1bUXRdIENvb3JkaW5hdGVkIEdy
YXBoaWNzOiBzY3JvbGwgYW5pbWF0aW9uIG1ha2VzIGZpeGVkIGVsZW1lbnQgc2hha2UuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZpZXcuY3BwIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3LmNwcAppbmRleCBiNWQ5MTJhMDdhZDUwOTJj
OGM3NjVhNmVmODFhNWM4M2Q0OGZhYmY4Li45ZTE5MDNkNmUxMDQxMjFkN2FjZmVjNzE3NGMwNjA3
ZjJmODJhYmRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZp
ZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmlldy5jcHAKQEAg
LTI1Nyw2ICsyNTcsNyBAQCBQYXNzT3duUHRyPERyYXdpbmdBcmVhUHJveHk+IFdlYlZpZXc6OmNy
ZWF0ZURyYXdpbmdBcmVhUHJveHkoKQogdm9pZCBXZWJWaWV3OjpzZXRWaWV3TmVlZHNEaXNwbGF5
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGFyZWEpCiB7CiAgICAgbV9jbGllbnQudmlld05lZWRz
RGlzcGxheSh0aGlzLCBhcmVhKTsKKyAgICBtX2V3a1ZpZXctPnNjaGVkdWxlVXBkYXRlRGlzcGxh
eSgpOwogfQogCiB2b2lkIFdlYlZpZXc6OmRpc3BsYXlWaWV3KCkKQEAgLTUwOSwxMSArNTEwLDkg
QEAgdm9pZCBXZWJWaWV3OjpwYWdlRGlkUmVxdWVzdFNjcm9sbChjb25zdCBJbnRQb2ludCYgcG9z
aXRpb24pCiAKIHZvaWQgV2ViVmlldzo6ZGlkUmVuZGVyRnJhbWUoY29uc3QgV2ViQ29yZTo6SW50
U2l6ZSYgY29udGVudHNTaXplLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBjb3ZlcmVkUmVjdCkK
IHsKLSAgICBpZiAobV9wYWdlLT51c2VGaXhlZExheW91dCgpKSB7Ci0gICAgICAgIG1fZXdrVmll
dy0+cGFnZVZpZXdwb3J0Q29udHJvbGxlcigpLT5kaWRSZW5kZXJGcmFtZShjb250ZW50c1NpemUs
IGNvdmVyZWRSZWN0KTsKKyAgICBpZiAoIW1fcGFnZS0+dXNlRml4ZWRMYXlvdXQoKSkKICAgICAg
ICAgcmV0dXJuOwotICAgIH0KLSAgICBtX2V3a1ZpZXctPnNjaGVkdWxlVXBkYXRlRGlzcGxheSgp
OworICAgIG1fZXdrVmlldy0+cGFnZVZpZXdwb3J0Q29udHJvbGxlcigpLT5kaWRSZW5kZXJGcmFt
ZShjb250ZW50c1NpemUsIGNvdmVyZWRSZWN0KTsKIH0KIAogdm9pZCBXZWJWaWV3OjpwYWdlVHJh
bnNpdGlvblZpZXdwb3J0UmVhZHkoKQo=
</data>
<flag name="review"
          id="212336"
          type_id="1"
          status="-"
          setter="gyuyoung.kim"
    />
    <flag name="commit-queue"
          id="212337"
          type_id="3"
          status="-"
          setter="gyuyoung.kim"
    />
          </attachment>
      

    </bug>

</bugzilla>