<?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>134228</bug_id>
          
          <creation_ts>2014-06-23 17:03:45 -0700</creation_ts>
          <short_desc>Implement WebPageProxy::windowAndViewFramesChanged</short_desc>
          <delta_ts>2014-06-23 18:39:43 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Martin Hock">mhock</reporter>
          <assigned_to name="Martin Hock">mhock</assigned_to>
          <cc>benjamin</cc>
    
    <cc>bfulgham</cc>
    
    <cc>ian</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1017769</commentid>
    <comment_count>0</comment_count>
    <who name="Martin Hock">mhock</who>
    <bug_when>2014-06-23 17:03:45 -0700</bug_when>
    <thetext>Implement WebPageProxy::windowAndViewFramesChanged.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1017773</commentid>
    <comment_count>1</comment_count>
      <attachid>233656</attachid>
    <who name="Martin Hock">mhock</who>
    <bug_when>2014-06-23 17:12:50 -0700</bug_when>
    <thetext>Created attachment 233656
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1017779</commentid>
    <comment_count>2</comment_count>
      <attachid>233656</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-06-23 17:23:55 -0700</bug_when>
    <thetext>Comment on attachment 233656
patch

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

&gt; Source/WebKit2/UIProcess/ios/WKContentView.mm:260
&gt; +        [self.window addObserver:self forKeyPath:@&quot;frame&quot; options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionInitial context:nullptr];

I don&apos;t think this works, did you test this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1017781</commentid>
    <comment_count>3</comment_count>
      <attachid>233656</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-23 17:27:14 -0700</bug_when>
    <thetext>Comment on attachment 233656
patch

lgtm. What was the initial size bug?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1017782</commentid>
    <comment_count>4</comment_count>
      <attachid>233656</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-23 17:28:29 -0700</bug_when>
    <thetext>Comment on attachment 233656
patch

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

&gt; Source/WebKit2/UIProcess/ios/WKContentView.mm:253
&gt; +    // All observations are for bounds changes.
&gt; +    _page-&gt;windowAndViewFramesChanged(self.window.bounds, self.window.bounds.origin);

It would be best to assert the keyPath.

You may want to call self.window.bounds only once since obj-c dispatch is not cheap.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1017785</commentid>
    <comment_count>5</comment_count>
    <who name="Ian Henderson">ian</who>
    <bug_when>2014-06-23 17:32:02 -0700</bug_when>
    <thetext>Why do web pages care about the window frame?  Could we give them the WKWebView size instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1017791</commentid>
    <comment_count>6</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-06-23 17:57:03 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Why do web pages care about the window frame?  Could we give them the WKWebView size instead?

There is no clear specification of what window.outerWidth/height should be on mobile. This matches the usage.

One of the problem with reporting WKWebView&apos;s size is that some people use outerWidth/height to detect the screen orientation.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>233656</attachid>
            <date>2014-06-23 17:12:50 -0700</date>
            <delta_ts>2014-06-23 17:28:29 -0700</delta_ts>
            <desc>patch</desc>
            <filename>windowchanged.01.diff</filename>
            <type>text/plain</type>
            <size>3774</size>
            <attacher name="Martin Hock">mhock</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBhNmRhYjY5Li4wMTExYTk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTQtMDYtMjMgIE1hcnRpbiBIb2NrICA8bWhvY2tAYXBwbGUuY29tPgorCisgICAgICAg
IFtpT1NdIEltcGxlbWVudCBXZWJQYWdlUHJveHk6OndpbmRvd0FuZFZpZXdGcmFtZXNDaGFuZ2Vk
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM0MjI4
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNzA2MDE4Mz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
dy5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyB3aWxsTW92ZVRvV2luZG93Ol0pOgorICAg
ICAgICAoLVtXS0NvbnRlbnRWaWV3IG9ic2VydmVWYWx1ZUZvcktleVBhdGg6b2ZPYmplY3Q6Y2hh
bmdlOmNvbnRleHQ6XSk6CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgZGlkTW92ZVRvV2luZG93
XSk6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XZWJQYWdlUHJveHlJT1MubW06CisgICAgICAg
IChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6d2luZG93QW5kVmlld0ZyYW1lc0NoYW5nZWQpOgorCiAy
MDE0LTA2LTIzICBUaW1vdGh5IEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbV0syXSBVc2UgdGhlIHBhZ2UgYmFja2dyb3VuZCBjb2xvciBpbnN0ZWFkIG9mIHdo
aXRlIHdoZW4gc3dpcGUgc25hcHNob3RzIHdlcmUgcHVyZ2VkICgxMzQyMTgpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXcubW0gYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXcubW0KaW5kZXggY2RlYzQ1Yy4uM2Ew
Y2FlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRW
aWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlldy5t
bQpAQCAtMjM5LDE3ICsyMzksMjYgQEAgcHJpdmF0ZToKICAgICBOU05vdGlmaWNhdGlvbkNlbnRl
ciAqZGVmYXVsdENlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsK
ICAgICBVSVdpbmRvdyAqd2luZG93ID0gc2VsZi53aW5kb3c7CiAKLSAgICBpZiAod2luZG93KQor
ICAgIGlmICh3aW5kb3cpIHsKICAgICAgICAgW2RlZmF1bHRDZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6
c2VsZiBuYW1lOlVJV2luZG93RGlkTW92ZVRvU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5k
b3ddOwotCisgICAgICAgIFt3aW5kb3cgcmVtb3ZlT2JzZXJ2ZXI6c2VsZiBmb3JLZXlQYXRoOkAi
ZnJhbWUiXTsKKyAgICB9CiAgICAgaWYgKG5ld1dpbmRvdykKICAgICAgICAgW2RlZmF1bHRDZW50
ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3IoX3dpbmRvd0RpZE1vdmVUb1Nj
cmVlbk5vdGlmaWNhdGlvbjopIG5hbWU6VUlXaW5kb3dEaWRNb3ZlVG9TY3JlZW5Ob3RpZmljYXRp
b24gb2JqZWN0Om5ld1dpbmRvd107CiB9CiAKKy0gKHZvaWQpb2JzZXJ2ZVZhbHVlRm9yS2V5UGF0
aDooTlNTdHJpbmcgKilrZXlQYXRoIG9mT2JqZWN0OihpZClvYmplY3QgY2hhbmdlOihOU0RpY3Rp
b25hcnkgKiljaGFuZ2UgY29udGV4dDoodm9pZCAqKWNvbnRleHQKK3sKKyAgICAvLyBBbGwgb2Jz
ZXJ2YXRpb25zIGFyZSBmb3IgYm91bmRzIGNoYW5nZXMuCisgICAgX3BhZ2UtPndpbmRvd0FuZFZp
ZXdGcmFtZXNDaGFuZ2VkKHNlbGYud2luZG93LmJvdW5kcywgc2VsZi53aW5kb3cuYm91bmRzLm9y
aWdpbik7Cit9CisKIC0gKHZvaWQpZGlkTW92ZVRvV2luZG93CiB7Ci0gICAgaWYgKHNlbGYud2lu
ZG93KQorICAgIGlmIChzZWxmLndpbmRvdykgewogICAgICAgICBbc2VsZiBfdXBkYXRlRm9yU2Ny
ZWVuOnNlbGYud2luZG93LnNjcmVlbl07CisgICAgICAgIFtzZWxmLndpbmRvdyBhZGRPYnNlcnZl
cjpzZWxmIGZvcktleVBhdGg6QCJmcmFtZSIgb3B0aW9uczpOU0tleVZhbHVlT2JzZXJ2aW5nT3B0
aW9uTmV3IHwgTlNLZXlWYWx1ZU9ic2VydmluZ09wdGlvbkluaXRpYWwgY29udGV4dDpudWxscHRy
XTsKKyAgICB9CiAgICAgX3BhZ2UtPnZpZXdTdGF0ZURpZENoYW5nZShWaWV3U3RhdGU6OkFsbEZs
YWdzKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJQ
YWdlUHJveHlJT1MubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94
eUlPUy5tbQppbmRleCAxOTFlYjMxLi5jOGYzNzhlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTIgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDEyLCAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMTAzLDkgKzEwMywxNiBAQCB2b2lkIFdl
YlBhZ2VQcm94eTo6c2VhcmNoVGhlV2ViKGNvbnN0IFN0cmluZyYpCiAgICAgbm90SW1wbGVtZW50
ZWQoKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OndpbmRvd0FuZFZpZXdGcmFtZXNDaGFuZ2Vk
KGNvbnN0IEZsb2F0UmVjdCYsIGNvbnN0IEZsb2F0UG9pbnQmKQordm9pZCBXZWJQYWdlUHJveHk6
OndpbmRvd0FuZFZpZXdGcmFtZXNDaGFuZ2VkKGNvbnN0IEZsb2F0UmVjdCYgdmlld0ZyYW1lSW5X
aW5kb3dDb29yZGluYXRlcywgY29uc3QgRmxvYXRQb2ludCYgYWNjZXNzaWJpbGl0eVZpZXdDb29y
ZGluYXRlcykKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIGlmICghaXNWYWxpZCgpKQor
ICAgICAgICByZXR1cm47CisKKyAgICAvLyBJbiBjYXNlIHRoZSBVSSBjbGllbnQgb3ZlcnJpZGVz
IGdldFdpbmRvd0ZyYW1lKCksIHdlIGNhbGwgaXQgaGVyZSB0byBtYWtlIHN1cmUgd2Ugc2VuZCB0
aGUgYXBwcm9wcmlhdGUgd2luZG93IGZyYW1lLgorICAgIEZsb2F0UmVjdCB3aW5kb3dGcmFtZUlu
U2NyZWVuQ29vcmRpbmF0ZXMgPSBtX3VpQ2xpZW50LT53aW5kb3dGcmFtZSh0aGlzKTsKKyAgICBG
bG9hdFJlY3Qgd2luZG93RnJhbWVJblVuZmxpcHBlZFNjcmVlbkNvb3JkaW5hdGVzID0gd2luZG93
RnJhbWVJblNjcmVlbkNvb3JkaW5hdGVzOworCisgICAgcHJvY2VzcygpLnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2U6OldpbmRvd0FuZFZpZXdGcmFtZXNDaGFuZ2VkKHdpbmRvd0ZyYW1lSW5TY3JlZW5D
b29yZGluYXRlcywgd2luZG93RnJhbWVJblVuZmxpcHBlZFNjcmVlbkNvb3JkaW5hdGVzLCB2aWV3
RnJhbWVJbldpbmRvd0Nvb3JkaW5hdGVzLCBhY2Nlc3NpYmlsaXR5Vmlld0Nvb3JkaW5hdGVzKSwg
bV9wYWdlSUQpOwogfQogCiBTdHJpbmcgV2ViUGFnZVByb3h5OjpzdHJpbmdTZWxlY3Rpb25Gb3JQ
YXN0ZWJvYXJkKCkK
</data>
<flag name="review"
          id="258149"
          type_id="1"
          status="+"
          setter="benjamin"
    />
          </attachment>
      

    </bug>

</bugzilla>