<?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>127721</bug_id>
          
          <creation_ts>2014-01-27 16:05:07 -0800</creation_ts>
          <short_desc>Copy relevant code from the iOS version of WKView to WKWebView</short_desc>
          <delta_ts>2014-01-27 16:20:19 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>972644</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-01-27 16:05:07 -0800</bug_when>
    <thetext>Copy relevant code from the iOS version of WKView to WKWebView</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972645</commentid>
    <comment_count>1</comment_count>
      <attachid>222377</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-01-27 16:05:59 -0800</bug_when>
    <thetext>Created attachment 222377
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972651</commentid>
    <comment_count>2</comment_count>
      <attachid>222377</attachid>
    <who name="">mitz</who>
    <bug_when>2014-01-27 16:15:42 -0800</bug_when>
    <thetext>Comment on attachment 222377
Patch

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

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:43
&gt; +#endif
&gt; +
&gt; +#if PLATFORM(IOS)

Not necessary

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:96
&gt; +    [_contentView setDelegate:self];
&gt; +    [_contentView layer].anchorPoint = CGPointZero;
&gt; +    [_contentView setFrame:bounds];
&gt; +    [_scrollView addSubview:_contentView.get()];

Please use property syntax here.

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:99
&gt; +    [_viewportHandler setDelegate:self];

And here.

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:113
&gt; +#pragma mark iOS specific methods

iOS-specific

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:141
&gt; +    return [_contentView browsingContextController];

And here.

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:174
&gt; +    CGFloat zoomScale = [_scrollView zoomScale];
&gt; +    CGSize contentsSizeInScrollViewCoordinates = CGSizeMake(newSize.width * zoomScale, newSize.height * zoomScale);
&gt; +    [_scrollView setContentSize:contentsSizeInScrollViewCoordinates];
&gt; +
&gt; +    [_viewportHandler update:^{
&gt; +         [_viewportHandler setDocumentBounds:{CGPointZero, newSize}];
&gt; +    }];
&gt; +}
&gt; +
&gt; +- (void)contentViewDidCommitLoadForMainFrame:(WKContentView *)contentView
&gt; +{
&gt; +    _userHasChangedPageScale = NO;
&gt; +
&gt; +    WKContentType contentType = [_contentView contentType];
&gt; +    [_viewportHandler update:^{
&gt; +        [_viewportHandler clearWebKitViewportConfigurationFlags];
&gt; +        struct _UIWebViewportConfiguration configuration = standardViewportConfiguration;
&gt; +
&gt; +        if (contentType == PlainText) {
&gt; +            CGFloat screenWidth = [[UIScreen mainScreen] bounds].size.width;
&gt; +            configuration.size.width = screenWidth;
&gt; +        } else if (contentType == WKContentType::Image)
&gt; +            configuration.minimumScale = 0.01;
&gt; +
&gt; +        [_viewportHandler resetViewportConfiguration:&amp;configuration];
&gt; +    }];
&gt; +}

And here.

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:181
&gt; +        configuration.size = CGSizeMake(320.0, UIWebViewportGrowsAndShrinksToFitHeight);

No need for .0

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:193
&gt; +    [_viewportHandler update:^{
&gt; +        [_viewportHandler applyWebKitViewportArgumentsSize:newSize
&gt; +                                              initialScale:initialScale
&gt; +                                              minimumScale:minimumScale
&gt; +                                              maximumScale:maximumScale
&gt; +                                         allowsUserScaling:allowsUserScaling];

Please fix the weird indentation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972653</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-01-27 16:20:19 -0800</bug_when>
    <thetext>Committed r162886: &lt;http://trac.webkit.org/changeset/162886&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222377</attachid>
            <date>2014-01-27 16:05:59 -0800</date>
            <delta_ts>2014-01-27 16:15:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-127721-20140127160558.patch</filename>
            <type>text/plain</type>
            <size>10914</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyODgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZmM1NTRjOGExYjgyNWM5
MmE1NWFiNTE3MDE2NGQ5YWYwNWMzZjYwZi4uMmY0NmJjOGQzMzBmMzM1YWJhMmM5ZDkxYTY0ZmUy
YWQ2MjhjYjRhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM1IEBACiAyMDE0LTAxLTI3ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgQ29weSByZWxldmFu
dCBjb2RlIGZyb20gdGhlIGlPUyB2ZXJzaW9uIG9mIFdLVmlldyB0byBXS1dlYlZpZXcKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzcyMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYlZpZXcubW06CisgICAgICAgICgtW1dLV2ViVmlldyBpbml0V2l0aEZyYW1l
OmNvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICgtW1dLV2ViVmlldyBzZXRGcmFtZTpdKToKKyAg
ICAgICAgKC1bV0tXZWJWaWV3IHNldEJvdW5kczpdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3IHNj
cm9sbFZpZXddKToKKyAgICAgICAgKC1bV0tXZWJWaWV3IGJyb3dzaW5nQ29udGV4dENvbnRyb2xs
ZXJdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3IGNvbnRlbnRWaWV3OmNvbnRlbnRzU2l6ZURpZENo
YW5nZTpdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3IGNvbnRlbnRWaWV3RGlkQ29tbWl0TG9hZEZv
ck1haW5GcmFtZTpdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3IGNvbnRlbnRWaWV3RGlkUmVjZWl2
ZU1vYmlsZURvY1R5cGU6XSk6CisgICAgICAgICgtW1dLV2ViVmlldyBjb250ZW50VmlldzpkaWRD
aGFuZ2VWaWV3cG9ydEFyZ3VtZW50c1NpemU6aW5pdGlhbFNjYWxlOm1pbmltdW1TY2FsZTptYXhp
bXVtU2NhbGU6YWxsb3dzVXNlclNjYWxpbmc6XSk6CisgICAgICAgICgtW1dLV2ViVmlldyB2aWV3
cG9ydEhhbmRsZXJEaWRDaGFuZ2VTY2FsZXM6XSk6CisgICAgICAgICgtW1dLV2ViVmlldyB2aWV3
cG9ydEhhbmRsZXI6ZGlkQ2hhbmdlVmlld3BvcnRTaXplOl0pOgorICAgICAgICAoLVtXS1dlYlZp
ZXcgdmlld0Zvclpvb21pbmdJblNjcm9sbFZpZXc6XSk6CisgICAgICAgICgtW1dLV2ViVmlldyBz
Y3JvbGxWaWV3V2lsbEJlZ2luWm9vbWluZzp3aXRoVmlldzpdKToKKyAgICAgICAgKC1bV0tXZWJW
aWV3IF9kaWRGaW5pc2hTY3JvbGxdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3IHNjcm9sbFZpZXdE
aWRFbmREcmFnZ2luZzp3aWxsRGVjZWxlcmF0ZTpdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3IHNj
cm9sbFZpZXdEaWRFbmREZWNlbGVyYXRpbmc6XSk6CisgICAgICAgICgtW1dLV2ViVmlldyBzY3Jv
bGxWaWV3RGlkU2Nyb2xsVG9Ub3A6XSk6CisgICAgICAgICgtW1dLV2ViVmlldyBzY3JvbGxWaWV3
RGlkU2Nyb2xsOl0pOgorICAgICAgICAoLVtXS1dlYlZpZXcgc2Nyb2xsVmlld0RpZEVuZFpvb21p
bmc6d2l0aFZpZXc6YXRTY2FsZTpdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3IF9mcmFtZU9yQm91
bmRzQ2hhbmdlZF0pOgorICAgICAgICAoLVtXS1dlYlZpZXcgX3NldERvY3VtZW50U2NhbGU6XSk6
CisKKzIwMTQtMDEtMjcgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwog
ICAgICAgICBBZGQgYSBXS0NvbnRlbnRWaWV3IGluaXRpYWxpemVyIHRoYXQgdGFrZXMgYSBXS1dl
YlZpZXdDb25maWd1cmF0aW9uCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMjc3MTgKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9Db2NvYS9XS1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nv
Y29hL1dLV2ViVmlldy5tbQppbmRleCBkMDg5YjBkNzA3ZGUwMjExMjA1ZWYyYmRmYWFiNzk0N2Jl
ZmZlNmJiLi5mZWFkNmE0Njc0NGY4MjBjMTVmNTUzOTkzYjQ2ZDdiMDY2OWM5NjhiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQpAQCAtMjgs
MTEgKzI4LDQwIEBACiAKICNpZiBXS19BUElfRU5BQkxFRAogCisjaW1wb3J0ICJXS1Byb2Nlc3ND
bGFzcy5oIgogI2ltcG9ydCAiV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5oIgorI2ltcG9ydCAiV2Vi
UGFnZVByb3h5LmgiCiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAKKyNpZiBQTEFURk9STShJ
T1MpCisjaW1wb3J0ICJXS0NvbnRlbnRWaWV3SW50ZXJuYWwuaCIKKyNpbXBvcnQgIldLU2Nyb2xs
Vmlldy5oIgorI2ltcG9ydCA8VUlLaXQvVUlTY3JvbGxWaWV3X1ByaXZhdGUuaD4KKyNpbXBvcnQg
PFVJS2l0L19VSVdlYlZpZXdwb3J0SGFuZGxlci5oPgorI2VuZGlmCisKKyNpZiBQTEFURk9STShJ
T1MpCitzdGF0aWMgY29uc3QgZmxvYXQgbWluV2ViVmlld1NjYWxlID0gMC4yNTsKK3N0YXRpYyBj
b25zdCBmbG9hdCBtYXhXZWJWaWV3U2NhbGUgPSA1Oworc3RhdGljIHN0cnVjdCBfVUlXZWJWaWV3
cG9ydENvbmZpZ3VyYXRpb24gc3RhbmRhcmRWaWV3cG9ydENvbmZpZ3VyYXRpb24gPSB7IHsgVUlX
ZWJWaWV3cG9ydFN0YW5kYXJkVmlld3BvcnRXaWR0aCwgVUlXZWJWaWV3cG9ydEdyb3dzQW5kU2hy
aW5rc1RvRml0SGVpZ2h0IH0sIFVJV2ViVmlld3BvcnRTY2FsZUZvclNjYWxlc1RvRml0LCBtaW5X
ZWJWaWV3U2NhbGUsIG1heFdlYlZpZXdTY2FsZSwgdHJ1ZQorfTsKKworQGludGVyZmFjZSBXS1dl
YlZpZXcgKCkgPFVJU2Nyb2xsVmlld0RlbGVnYXRlLCBXS0NvbnRlbnRWaWV3RGVsZWdhdGUsIF9V
SVdlYlZpZXdwb3J0SGFuZGxlckRlbGVnYXRlPgorQGVuZAorI2VuZGlmCisKIEBpbXBsZW1lbnRh
dGlvbiBXS1dlYlZpZXcgewogICAgIFJldGFpblB0cjxXS1dlYlZpZXdDb25maWd1cmF0aW9uPiBf
Y29uZmlndXJhdGlvbjsKKyAgICBSZWZQdHI8V2ViS2l0OjpXZWJQYWdlUHJveHk+IF9wYWdlOwor
CisjaWYgUExBVEZPUk0oSU9TKQorICAgIFJldGFpblB0cjxXS1Njcm9sbFZpZXc+IF9zY3JvbGxW
aWV3OworICAgIFJldGFpblB0cjxXS0NvbnRlbnRWaWV3PiBfY29udGVudFZpZXc7CisKKyAgICBC
T09MIF91c2VySGFzQ2hhbmdlZFBhZ2VTY2FsZTsKKyAgICBSZXRhaW5QdHI8X1VJV2ViVmlld3Bv
cnRIYW5kbGVyPiBfdmlld3BvcnRIYW5kbGVyOworICAgIEJPT0wgX2hhc1N0YXRpY01pbmltdW1M
YXlvdXRTaXplOworI2VuZGlmCiB9CiAKIC0gKGluc3RhbmNldHlwZSlpbml0V2l0aEZyYW1lOihD
R1JlY3QpZnJhbWUKQEAgLTQ1LDEwICs3NCwzMyBAQAogICAgIGlmICghKHNlbGYgPSBbc3VwZXIg
aW5pdFdpdGhGcmFtZTpmcmFtZV0pKQogICAgICAgICByZXR1cm4gbmlsOwogCi0gICAgLy8gRklY
TUU6IEZpbGwgaW4gbmlsIHByb3BlcnRpZXMgd2l0aCBjb25jcmV0ZSBwcm9wZXJ0aWVzLgogICAg
IF9jb25maWd1cmF0aW9uID0gYWRvcHROUyhbY29uZmlndXJhdGlvbiBjb3B5XSk7CiAKLSAgICAv
LyBGSVhNRTogSW5pdGlhbGl6ZSB0aGUgV0tXZWJWaWV3IG9iamVjdC4KKyAgICBpZiAoIVtfY29u
ZmlndXJhdGlvbiBwcm9jZXNzQ2xhc3NdKQorICAgICAgICBbX2NvbmZpZ3VyYXRpb24gc2V0UHJv
Y2Vzc0NsYXNzOmFkb3B0TlMoW1tXS1Byb2Nlc3NDbGFzcyBhbGxvY10gaW5pdF0pLmdldCgpXTsK
KworI2lmIFBMQVRGT1JNKElPUykKKyAgICBDR1JlY3QgYm91bmRzID0gc2VsZi5ib3VuZHM7CisK
KyAgICBfc2Nyb2xsVmlldyA9IGFkb3B0TlMoW1tXS1Njcm9sbFZpZXcgYWxsb2NdIGluaXRXaXRo
RnJhbWU6Ym91bmRzXSk7CisgICAgW19zY3JvbGxWaWV3IHNldEludGVybmFsRGVsZWdhdGU6c2Vs
Zl07CisgICAgW19zY3JvbGxWaWV3IHNldEJvdW5jZXNab29tOllFU107CisKKyAgICBbc2VsZiBh
ZGRTdWJ2aWV3Ol9zY3JvbGxWaWV3LmdldCgpXTsKKworICAgIF9jb250ZW50VmlldyA9IGFkb3B0
TlMoW1tXS0NvbnRlbnRWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOmJvdW5kcyBjb25maWd1cmF0
aW9uOl9jb25maWd1cmF0aW9uLmdldCgpXSk7CisgICAgX3BhZ2UgPSBfY29udGVudFZpZXctPl9w
YWdlOworICAgIFtfY29udGVudFZpZXcgc2V0RGVsZWdhdGU6c2VsZl07CisgICAgW19jb250ZW50
VmlldyBsYXllcl0uYW5jaG9yUG9pbnQgPSBDR1BvaW50WmVybzsKKyAgICBbX2NvbnRlbnRWaWV3
IHNldEZyYW1lOmJvdW5kc107CisgICAgW19zY3JvbGxWaWV3IGFkZFN1YnZpZXc6X2NvbnRlbnRW
aWV3LmdldCgpXTsKKworICAgIF92aWV3cG9ydEhhbmRsZXIgPSBhZG9wdE5TKFtbX1VJV2ViVmll
d3BvcnRIYW5kbGVyIGFsbG9jXSBpbml0XSk7CisgICAgW192aWV3cG9ydEhhbmRsZXIgc2V0RGVs
ZWdhdGU6c2VsZl07CisKKyAgICBbc2VsZiBfZnJhbWVPckJvdW5kc0NoYW5nZWRdOworCisjZW5k
aWYKIAogICAgIHJldHVybiBzZWxmOwogfQpAQCAtNTgsNiArMTEwLDE5MSBAQAogICAgIHJldHVy
biBbW19jb25maWd1cmF0aW9uIGNvcHldIGF1dG9yZWxlYXNlXTsKIH0KIAorI3ByYWdtYSBtYXJr
IGlPUyBzcGVjaWZpYyBtZXRob2RzCisKKyNpZiBQTEFURk9STShJT1MpCistICh2b2lkKXNldEZy
YW1lOihDR1JlY3QpZnJhbWUKK3sKKyAgICBDR1JlY3Qgb2xkRnJhbWUgPSBzZWxmLmZyYW1lOwor
ICAgIFtzdXBlciBzZXRGcmFtZTpmcmFtZV07CisKKyAgICBpZiAoIUNHU2l6ZUVxdWFsVG9TaXpl
KG9sZEZyYW1lLnNpemUsIGZyYW1lLnNpemUpKQorICAgICAgICBbc2VsZiBfZnJhbWVPckJvdW5k
c0NoYW5nZWRdOworfQorCistICh2b2lkKXNldEJvdW5kczooQ0dSZWN0KWJvdW5kcworeworICAg
IENHUmVjdCBvbGRCb3VuZHMgPSBzZWxmLmJvdW5kczsKKyAgICBbc3VwZXIgc2V0Qm91bmRzOmJv
dW5kc107CisKKyAgICBpZiAoIUNHU2l6ZUVxdWFsVG9TaXplKG9sZEJvdW5kcy5zaXplLCBib3Vu
ZHMuc2l6ZSkpCisgICAgICAgIFtzZWxmIF9mcmFtZU9yQm91bmRzQ2hhbmdlZF07Cit9CisKKy0g
KFVJU2Nyb2xsVmlldyAqKXNjcm9sbFZpZXcKK3sKKyAgICByZXR1cm4gX3Njcm9sbFZpZXcuZ2V0
KCk7Cit9CisKKy0gKFdLQnJvd3NpbmdDb250ZXh0Q29udHJvbGxlciAqKWJyb3dzaW5nQ29udGV4
dENvbnRyb2xsZXIKK3sKKyAgICByZXR1cm4gW19jb250ZW50VmlldyBicm93c2luZ0NvbnRleHRD
b250cm9sbGVyXTsKK30KKworI3ByYWdtYSBtYXJrIFdLQ29udGVudFZpZXdEZWxlZ2F0ZQorCist
ICh2b2lkKWNvbnRlbnRWaWV3OihXS0NvbnRlbnRWaWV3ICopY29udGVudFZpZXcgY29udGVudHNT
aXplRGlkQ2hhbmdlOihDR1NpemUpbmV3U2l6ZQoreworICAgIENHRmxvYXQgem9vbVNjYWxlID0g
W19zY3JvbGxWaWV3IHpvb21TY2FsZV07CisgICAgQ0dTaXplIGNvbnRlbnRzU2l6ZUluU2Nyb2xs
Vmlld0Nvb3JkaW5hdGVzID0gQ0dTaXplTWFrZShuZXdTaXplLndpZHRoICogem9vbVNjYWxlLCBu
ZXdTaXplLmhlaWdodCAqIHpvb21TY2FsZSk7CisgICAgW19zY3JvbGxWaWV3IHNldENvbnRlbnRT
aXplOmNvbnRlbnRzU2l6ZUluU2Nyb2xsVmlld0Nvb3JkaW5hdGVzXTsKKworICAgIFtfdmlld3Bv
cnRIYW5kbGVyIHVwZGF0ZTpeeworICAgICAgICAgW192aWV3cG9ydEhhbmRsZXIgc2V0RG9jdW1l
bnRCb3VuZHM6e0NHUG9pbnRaZXJvLCBuZXdTaXplfV07CisgICAgfV07Cit9CisKKy0gKHZvaWQp
Y29udGVudFZpZXdEaWRDb21taXRMb2FkRm9yTWFpbkZyYW1lOihXS0NvbnRlbnRWaWV3ICopY29u
dGVudFZpZXcKK3sKKyAgICBfdXNlckhhc0NoYW5nZWRQYWdlU2NhbGUgPSBOTzsKKworICAgIFdL
Q29udGVudFR5cGUgY29udGVudFR5cGUgPSBbX2NvbnRlbnRWaWV3IGNvbnRlbnRUeXBlXTsKKyAg
ICBbX3ZpZXdwb3J0SGFuZGxlciB1cGRhdGU6XnsKKyAgICAgICAgW192aWV3cG9ydEhhbmRsZXIg
Y2xlYXJXZWJLaXRWaWV3cG9ydENvbmZpZ3VyYXRpb25GbGFnc107CisgICAgICAgIHN0cnVjdCBf
VUlXZWJWaWV3cG9ydENvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbiA9IHN0YW5kYXJkVmlld3Bv
cnRDb25maWd1cmF0aW9uOworCisgICAgICAgIGlmIChjb250ZW50VHlwZSA9PSBQbGFpblRleHQp
IHsKKyAgICAgICAgICAgIENHRmxvYXQgc2NyZWVuV2lkdGggPSBbW1VJU2NyZWVuIG1haW5TY3Jl
ZW5dIGJvdW5kc10uc2l6ZS53aWR0aDsKKyAgICAgICAgICAgIGNvbmZpZ3VyYXRpb24uc2l6ZS53
aWR0aCA9IHNjcmVlbldpZHRoOworICAgICAgICB9IGVsc2UgaWYgKGNvbnRlbnRUeXBlID09IFdL
Q29udGVudFR5cGU6OkltYWdlKQorICAgICAgICAgICAgY29uZmlndXJhdGlvbi5taW5pbXVtU2Nh
bGUgPSAwLjAxOworCisgICAgICAgIFtfdmlld3BvcnRIYW5kbGVyIHJlc2V0Vmlld3BvcnRDb25m
aWd1cmF0aW9uOiZjb25maWd1cmF0aW9uXTsKKyAgICB9XTsKK30KKworLSAodm9pZCljb250ZW50
Vmlld0RpZFJlY2VpdmVNb2JpbGVEb2NUeXBlOihXS0NvbnRlbnRWaWV3ICopY29udGVudFZpZXcK
K3sKKyAgICBbX3ZpZXdwb3J0SGFuZGxlciB1cGRhdGU6XnsKKyAgICAgICAgc3RydWN0IF9VSVdl
YlZpZXdwb3J0Q29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uID0gc3RhbmRhcmRWaWV3cG9ydENv
bmZpZ3VyYXRpb247CisgICAgICAgIGNvbmZpZ3VyYXRpb24ubWluaW11bVNjYWxlID0gMTsKKyAg
ICAgICAgY29uZmlndXJhdGlvbi5zaXplID0gQ0dTaXplTWFrZSgzMjAuMCwgVUlXZWJWaWV3cG9y
dEdyb3dzQW5kU2hyaW5rc1RvRml0SGVpZ2h0KTsKKyAgICAgICAgW192aWV3cG9ydEhhbmRsZXIg
cmVzZXRWaWV3cG9ydENvbmZpZ3VyYXRpb246JmNvbmZpZ3VyYXRpb25dOworICAgIH1dOworfQor
CistICh2b2lkKWNvbnRlbnRWaWV3OihXS0NvbnRlbnRWaWV3ICopY29udGVudFZpZXcgZGlkQ2hh
bmdlVmlld3BvcnRBcmd1bWVudHNTaXplOihDR1NpemUpbmV3U2l6ZSBpbml0aWFsU2NhbGU6KGZs
b2F0KWluaXRpYWxTY2FsZSBtaW5pbXVtU2NhbGU6KGZsb2F0KW1pbmltdW1TY2FsZSBtYXhpbXVt
U2NhbGU6KGZsb2F0KW1heGltdW1TY2FsZSBhbGxvd3NVc2VyU2NhbGluZzooZmxvYXQpYWxsb3dz
VXNlclNjYWxpbmcKK3sKKyAgICBbX3ZpZXdwb3J0SGFuZGxlciB1cGRhdGU6XnsKKyAgICAgICAg
W192aWV3cG9ydEhhbmRsZXIgYXBwbHlXZWJLaXRWaWV3cG9ydEFyZ3VtZW50c1NpemU6bmV3U2l6
ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluaXRpYWxT
Y2FsZTppbml0aWFsU2NhbGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtaW5pbXVtU2NhbGU6bWluaW11bVNjYWxlCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bVNjYWxlOm1heGltdW1TY2FsZQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd3NVc2VyU2NhbGluZzphbGxv
d3NVc2VyU2NhbGluZ107CisgICAgfV07Cit9CisKKyNwcmFnbWEgbWFyayAtIF9VSVdlYlZpZXdw
b3J0SGFuZGxlckRlbGVnYXRlCisKKy0gKHZvaWQpdmlld3BvcnRIYW5kbGVyRGlkQ2hhbmdlU2Nh
bGVzOihfVUlXZWJWaWV3cG9ydEhhbmRsZXIgKil2aWV3cG9ydEhhbmRsZXIKK3sKKyAgICBBU1NF
UlQodmlld3BvcnRIYW5kbGVyID09IF92aWV3cG9ydEhhbmRsZXIpOworICAgIFtfc2Nyb2xsVmll
dyBzZXRNaW5pbXVtWm9vbVNjYWxlOnZpZXdwb3J0SGFuZGxlci5taW5pbXVtU2NhbGVdOworICAg
IFtfc2Nyb2xsVmlldyBzZXRNYXhpbXVtWm9vbVNjYWxlOnZpZXdwb3J0SGFuZGxlci5tYXhpbXVt
U2NhbGVdOworICAgIFtfc2Nyb2xsVmlldyBzZXRab29tRW5hYmxlZDp2aWV3cG9ydEhhbmRsZXIu
YWxsb3dzVXNlclNjYWxpbmddOworCisgICAgaWYgKCFfdXNlckhhc0NoYW5nZWRQYWdlU2NhbGUp
CisgICAgICAgIFtzZWxmIF9zZXREb2N1bWVudFNjYWxlOnZpZXdwb3J0SGFuZGxlci5pbml0aWFs
U2NhbGVdOworICAgIGVsc2UgeworICAgICAgICBDR0Zsb2F0IGN1cnJlbnRTY2FsZSA9IFtfc2Ny
b2xsVmlldyB6b29tU2NhbGVdOworICAgICAgICBDR0Zsb2F0IHZhbGlkU2NhbGUgPSBzdGQ6Om1h
eChzdGQ6Om1pbihjdXJyZW50U2NhbGUsIHN0YXRpY19jYXN0PENHRmxvYXQ+KHZpZXdwb3J0SGFu
ZGxlci5tYXhpbXVtU2NhbGUpKSwgc3RhdGljX2Nhc3Q8Q0dGbG9hdD4odmlld3BvcnRIYW5kbGVy
Lm1pbmltdW1TY2FsZSkpOworICAgICAgICBbc2VsZiBfc2V0RG9jdW1lbnRTY2FsZTp2YWxpZFNj
YWxlXTsKKyAgICB9Cit9CisKKy0gKHZvaWQpdmlld3BvcnRIYW5kbGVyOihfVUlXZWJWaWV3cG9y
dEhhbmRsZXIgKil2aWV3cG9ydEhhbmRsZXIgZGlkQ2hhbmdlVmlld3BvcnRTaXplOihDR1NpemUp
bmV3U2l6ZQoreworICAgIEFTU0VSVCh2aWV3cG9ydEhhbmRsZXIgPT0gX3ZpZXdwb3J0SGFuZGxl
cik7CisgICAgW19jb250ZW50VmlldyBzZXRWaWV3cG9ydFNpemU6bmV3U2l6ZV07Cit9CisKKyNw
cmFnbWEgbWFyayAtIFVJU2Nyb2xsVmlld0RlbGVnYXRlCisKKy0gKFVJVmlldyAqKXZpZXdGb3Ja
b29taW5nSW5TY3JvbGxWaWV3OihVSVNjcm9sbFZpZXcgKilzY3JvbGxWaWV3Cit7CisgICAgQVNT
RVJUKF9zY3JvbGxWaWV3ID09IHNjcm9sbFZpZXcpOworICAgIHJldHVybiBfY29udGVudFZpZXcu
Z2V0KCk7Cit9CisKKy0gKHZvaWQpc2Nyb2xsVmlld1dpbGxCZWdpblpvb21pbmc6KFVJU2Nyb2xs
VmlldyAqKXNjcm9sbFZpZXcgd2l0aFZpZXc6KFVJVmlldyAqKXZpZXcKK3sKKyAgICBpZiAoc2Ny
b2xsVmlldy5waW5jaEdlc3R1cmVSZWNvZ25pemVyLnN0YXRlID09IFVJR2VzdHVyZVJlY29nbml6
ZXJTdGF0ZUJlZ2FuKQorICAgICAgICBfdXNlckhhc0NoYW5nZWRQYWdlU2NhbGUgPSBZRVM7Cit9
CisKKy0gKHZvaWQpX2RpZEZpbmlzaFNjcm9sbAoreworICAgIENHUG9pbnQgcG9zaXRpb24gPSBb
X3Njcm9sbFZpZXcgY29udmVydFBvaW50Oltfc2Nyb2xsVmlldyBjb250ZW50T2Zmc2V0XSB0b1Zp
ZXc6X2NvbnRlbnRWaWV3LmdldCgpXTsKKyAgICBbX2NvbnRlbnRWaWV3IGRpZEZpbmlzaFNjcm9s
bFRvOnBvc2l0aW9uXTsKK30KKworLSAodm9pZClzY3JvbGxWaWV3RGlkRW5kRHJhZ2dpbmc6KFVJ
U2Nyb2xsVmlldyAqKXNjcm9sbFZpZXcgd2lsbERlY2VsZXJhdGU6KEJPT0wpZGVjZWxlcmF0ZQor
eworICAgIC8vIElmIHdlJ3JlIGRlY2VsZXJhdGluZywgc2Nyb2xsIG9mZnNldCB3aWxsIGJlIHVw
ZGF0ZWQgd2hlbiBzY3JvbGxWaWV3RGlkRmluaXNoRGVjZWxlcmF0aW5nOiBpcyBjYWxsZWQuCisg
ICAgaWYgKCFkZWNlbGVyYXRlKQorICAgICAgICBbc2VsZiBfZGlkRmluaXNoU2Nyb2xsXTsKK30K
KworLSAodm9pZClzY3JvbGxWaWV3RGlkRW5kRGVjZWxlcmF0aW5nOihVSVNjcm9sbFZpZXcgKilz
Y3JvbGxWaWV3Cit7CisgICAgW3NlbGYgX2RpZEZpbmlzaFNjcm9sbF07Cit9CisKKy0gKHZvaWQp
c2Nyb2xsVmlld0RpZFNjcm9sbFRvVG9wOihVSVNjcm9sbFZpZXcgKilzY3JvbGxWaWV3Cit7Cisg
ICAgW3NlbGYgX2RpZEZpbmlzaFNjcm9sbF07Cit9CisKKy0gKHZvaWQpc2Nyb2xsVmlld0RpZFNj
cm9sbDooVUlTY3JvbGxWaWV3ICopc2Nyb2xsVmlldworeworICAgIENHUG9pbnQgcG9zaXRpb24g
PSBbX3Njcm9sbFZpZXcgY29udmVydFBvaW50Oltfc2Nyb2xsVmlldyBjb250ZW50T2Zmc2V0XSB0
b1ZpZXc6X2NvbnRlbnRWaWV3LmdldCgpXTsKKyAgICBbX2NvbnRlbnRWaWV3IGRpZFNjcm9sbFRv
OnBvc2l0aW9uXTsKK30KKworLSAodm9pZClzY3JvbGxWaWV3RGlkRW5kWm9vbWluZzooVUlTY3Jv
bGxWaWV3ICopc2Nyb2xsVmlldyB3aXRoVmlldzooVUlWaWV3ICopdmlldyBhdFNjYWxlOihDR0Zs
b2F0KXNjYWxlCit7CisgICAgQVNTRVJUKHNjcm9sbFZpZXcgPT0gX3Njcm9sbFZpZXcpOworICAg
IFtfY29udGVudFZpZXcgZGlkWm9vbVRvU2NhbGU6c2NhbGVdOworfQorCisjcHJhZ21hIG1hcmsg
SW50ZXJuYWwKKworLSAodm9pZClfZnJhbWVPckJvdW5kc0NoYW5nZWQKK3sKKyAgICBDR1JlY3Qg
Ym91bmRzID0gc2VsZi5ib3VuZHM7CisKKyAgICBpZiAoIV9oYXNTdGF0aWNNaW5pbXVtTGF5b3V0
U2l6ZSkgeworICAgICAgICBbX3ZpZXdwb3J0SGFuZGxlciB1cGRhdGU6XnsKKyAgICAgICAgICAg
IFtfdmlld3BvcnRIYW5kbGVyIHNldEF2YWlsYWJsZVZpZXdTaXplOmJvdW5kcy5zaXplXTsKKyAg
ICAgICAgfV07CisgICAgfQorICAgIFtfc2Nyb2xsVmlldyBzZXRGcmFtZTpib3VuZHNdOworICAg
IFtfY29udGVudFZpZXcgc2V0TWluaW11bVNpemU6Ym91bmRzLnNpemVdOworfQorCistICh2b2lk
KV9zZXREb2N1bWVudFNjYWxlOihDR0Zsb2F0KW5ld1NjYWxlCit7CisgICAgQ0dQb2ludCBjb250
ZW50T2Zmc2V0SW5Eb2N1bWVudENvb3JkaW5hdGVzID0gW19zY3JvbGxWaWV3IGNvbnZlcnRQb2lu
dDpbX3Njcm9sbFZpZXcgY29udGVudE9mZnNldF0gdG9WaWV3Ol9jb250ZW50Vmlldy5nZXQoKV07
CisKKyAgICBbX3Njcm9sbFZpZXcgc2V0Wm9vbVNjYWxlOm5ld1NjYWxlXTsKKyAgICBbX2NvbnRl
bnRWaWV3IGRpZFpvb21Ub1NjYWxlOm5ld1NjYWxlXTsKKworICAgIENHUG9pbnQgY29udGVudE9m
ZnNldCA9IFtfc2Nyb2xsVmlldyBjb252ZXJ0UG9pbnQ6Y29udGVudE9mZnNldEluRG9jdW1lbnRD
b29yZGluYXRlcyBmcm9tVmlldzpfY29udGVudFZpZXcuZ2V0KCldOworICAgIFtfc2Nyb2xsVmll
dyBzZXRDb250ZW50T2Zmc2V0OmNvbnRlbnRPZmZzZXRdOworfQorCisjZW5kaWYKKwogQGVuZAog
CiAjZW5kaWYgLy8gV0tfQVBJX0VOQUJMRUQK
</data>
<flag name="review"
          id="246363"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>