<?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>147573</bug_id>
          
          <creation_ts>2015-08-03 11:24:19 -0700</creation_ts>
          <short_desc>Need WKWebView API to enable/disable link preview</short_desc>
          <delta_ts>2015-08-13 11:42:30 -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>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="Beth Dakin">bdakin</reporter>
          <assigned_to name="Beth Dakin">bdakin</assigned_to>
          <cc>andersca</cc>
    
    <cc>bdakin</cc>
    
    <cc>enrica</cc>
    
    <cc>mitz</cc>
    
    <cc>sam</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1114257</commentid>
    <comment_count>0</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2015-08-03 11:24:19 -0700</bug_when>
    <thetext>Need WKWebView API to enable/disable link preview

rdar://problem/22077836</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1114268</commentid>
    <comment_count>1</comment_count>
      <attachid>258090</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2015-08-03 11:31:18 -0700</bug_when>
    <thetext>Created attachment 258090
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1114341</commentid>
    <comment_count>2</comment_count>
      <attachid>258090</attachid>
    <who name="">mitz</who>
    <bug_when>2015-08-03 13:53:12 -0700</bug_when>
    <thetext>Comment on attachment 258090
Patch

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

&gt; Source/WebKit2/ChangeLog:20
&gt; +        (-[WKWebView _ignoresNonWheelEvents]):

I don’t think that one has changed.

&gt; Source/WebKit2/ChangeLog:33
&gt; +        (-[WKView _setIgnoresNonWheelEvents:]):

Nor that one.

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:354
&gt; -    _allowsLinkPreview = YES;
&gt; +    _allowsLinkPreview = NO;

ivars are NO by default, so you can just remove this assignment.

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:1858
&gt; +- (BOOL)allowsLinkPreview
&gt; +{
&gt; +    return [_wkView allowsLinkPreview];
&gt; +}
&gt; +
&gt; +- (void)setAllowsLinkPreview:(BOOL)allowsLinkPreview
&gt; +{
&gt; +    [_wkView setAllowsLinkPreview:allowsLinkPreview];
&gt; +}
&gt; +

It’s confusing to have these methods implemented in two places in the file (although this is not unprecedented). It might be nicer to have one implementation in a cross-platform section of the file, with #if PLATFORM() inside the implementation.

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:3810
&gt; +    _data-&gt;_allowsLinkPreview = NO;

No need to initialize ivars to NO.

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:4246
&gt; +#if HAVE(LINK_PREVIEW)
&gt; +    if (!_allowsLinkPreview)
&gt; +        [self removeGestureRecognizer:_data-&gt;_immediateActionGestureRecognizer.get()];
&gt; +    else if (NSGestureRecognizer *immediateActionRecognizer = _data-&gt;_immediateActionGestureRecognizer.get())
&gt; +        [self addGestureRecognizer:immediateActionRecognizer];
&gt; +#endif

Is HAVE(LINK_PREVIEW) the right check here in Mac code? Should you just check for &gt;= 101000 like mostly everywhere else?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1114352</commentid>
    <comment_count>3</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2015-08-03 14:08:00 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 258090 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=258090&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/ChangeLog:20
&gt; &gt; +        (-[WKWebView _ignoresNonWheelEvents]):
&gt; 
&gt; I don’t think that one has changed.
&gt; 
&gt; &gt; Source/WebKit2/ChangeLog:33
&gt; &gt; +        (-[WKView _setIgnoresNonWheelEvents:]):
&gt; 
&gt; Nor that one.
&gt; 

Removed!

&gt; &gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:354
&gt; &gt; -    _allowsLinkPreview = YES;
&gt; &gt; +    _allowsLinkPreview = NO;
&gt; 
&gt; ivars are NO by default, so you can just remove this assignment.
&gt; 

Removed!

&gt; &gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:1858
&gt; &gt; +- (BOOL)allowsLinkPreview
&gt; &gt; +{
&gt; &gt; +    return [_wkView allowsLinkPreview];
&gt; &gt; +}
&gt; &gt; +
&gt; &gt; +- (void)setAllowsLinkPreview:(BOOL)allowsLinkPreview
&gt; &gt; +{
&gt; &gt; +    [_wkView setAllowsLinkPreview:allowsLinkPreview];
&gt; &gt; +}
&gt; &gt; +
&gt; 
&gt; It’s confusing to have these methods implemented in two places in the file
&gt; (although this is not unprecedented). It might be nicer to have one
&gt; implementation in a cross-platform section of the file, with #if PLATFORM()
&gt; inside the implementation.
&gt; 

It is confusing. I did as you suggested.

&gt; &gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:3810
&gt; &gt; +    _data-&gt;_allowsLinkPreview = NO;
&gt; 
&gt; No need to initialize ivars to NO.
&gt; 

Removed!

&gt; &gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:4246
&gt; &gt; +#if HAVE(LINK_PREVIEW)
&gt; &gt; +    if (!_allowsLinkPreview)
&gt; &gt; +        [self removeGestureRecognizer:_data-&gt;_immediateActionGestureRecognizer.get()];
&gt; &gt; +    else if (NSGestureRecognizer *immediateActionRecognizer = _data-&gt;_immediateActionGestureRecognizer.get())
&gt; &gt; +        [self addGestureRecognizer:immediateActionRecognizer];
&gt; &gt; +#endif
&gt; 
&gt; Is HAVE(LINK_PREVIEW) the right check here in Mac code? Should you just
&gt; check for &gt;= 101000 like mostly everywhere else?

Yes! I&apos;m a little surprised HAVE(LINK_PREVIEW) worked! But I have changed it to &gt;= 101000.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1117299</commentid>
    <comment_count>4</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2015-08-13 11:42:30 -0700</bug_when>
    <thetext>Forgot to update this with the trac: http://trac.webkit.org/changeset/187764</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>258090</attachid>
            <date>2015-08-03 11:31:18 -0700</date>
            <delta_ts>2015-08-03 13:53:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>for-review.txt</filename>
            <type>text/plain</type>
            <size>9878</size>
            <attacher name="Beth Dakin">bdakin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4Nzc0NikKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQxIEBACisyMDE1LTA4LTAzICBCZXRoIERh
a2luICA8YmRha2luQGFwcGxlLmNvbT4KKworICAgICAgICBOZWVkIFdLV2ViVmlldyBBUEkgdG8g
ZW5hYmxlL2Rpc2FibGUgbGluayBwcmV2aWV3CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNDc1NzMKKyAgICAgICAgLWFuZCBjb3JyZXNwb25kaW5nLQor
ICAgICAgICByZGFyOi8vcHJvYmxlbS8yMjA3NzgzNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFdLVmlldyBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLVmlld1ByaXZhdGUuaDoKKworICAgICAgICBOZXcgQVBJ
LiBDYWxsIGludG8gV0tWaWV3IHRvIGhhbmRsZSBNYWMuCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYlZpZXcuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vi
Vmlldy5tbToKKyAgICAgICAgKC1bV0tXZWJWaWV3IGluaXRXaXRoRnJhbWU6Y29uZmlndXJhdGlv
bjpdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3IHNldE1hZ25pZmljYXRpb246Y2VudGVyZWRBdFBv
aW50Ol0pOgorICAgICAgICAoLVtXS1dlYlZpZXcgYWxsb3dzTGlua1ByZXZpZXddKToKKyAgICAg
ICAgKC1bV0tXZWJWaWV3IHNldEFsbG93c0xpbmtQcmV2aWV3Ol0pOgorICAgICAgICAoLVtXS1dl
YlZpZXcgX2lnbm9yZXNOb25XaGVlbEV2ZW50c10pOgorCisgICAgICAgIFJlbW92ZSB0aGUgU1BJ
IGRlY2xhcmF0aW9uIGZyb20gV0tXZWJWaWV3UHJpdmF0ZSBpbiBvcmRlciB0byBtYWtlIHRoaXMg
QVBJLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0ZS5oOgor
CisgICAgICAgIEhhbmRsZSB0aGUgTWFjIHNpZGUuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9t
YWMvV0tWaWV3Lm1tOgorICAgICAgICAoLVtXS1ZpZXcgdmlld0RpZE1vdmVUb1dpbmRvd10pOgor
ICAgICAgICAoLVtXS1ZpZXcgaW5pdFdpdGhGcmFtZTpwcm9jZXNzUG9vbDpjb25maWd1cmF0aW9u
OndlYlZpZXc6XSk6CisgICAgICAgICgtW1dLVmlldyBhbGxvd3NCYWNrRm9yd2FyZE5hdmlnYXRp
b25HZXN0dXJlc10pOgorICAgICAgICAoLVtXS1ZpZXcgYWxsb3dzTGlua1ByZXZpZXddKToKKyAg
ICAgICAgKC1bV0tWaWV3IHNldEFsbG93c0xpbmtQcmV2aWV3Ol0pOgorICAgICAgICAoLVtXS1Zp
ZXcgX3NldElnbm9yZXNBbGxFdmVudHM6XSk6CisgICAgICAgICgtW1dLVmlldyBfc2V0SWdub3Jl
c05vbldoZWVsRXZlbnRzOl0pOgorCisgICAgICAgIERvbuKAmXQgcmVnaXN0ZXIgcHJldmlld3Mg
d2hlbiBsaW5rIHByZXZpZXcgaXMgcHJldmVudGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF9y
ZWdpc3RlclByZXZpZXddKToKKwogMjAxNS0wOC0wMyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxj
Z2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gVXBkYXRlIE9wdGlvbnNH
VEsuY21ha2UgYW5kIE5FV1MgZm9yIDIuOS41IHJlbGVhc2UuCkluZGV4OiBTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVmlld1ByaXZhdGUuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVmlld1ByaXZhdGUuaAkocmV2aXNpb24g
MTg3NjY3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ZpZXdQcml2
YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTEyOSw2ICsxMjksOSBAQAogCiAtICh2b2lkKXNldE1h
Z25pZmljYXRpb246KGRvdWJsZSltYWduaWZpY2F0aW9uIGNlbnRlcmVkQXRQb2ludDooTlNQb2lu
dClwb2ludDsKIAorLSAodm9pZClzZXRBbGxvd3NMaW5rUHJldmlldzooQk9PTClhbGxvd3NMaW5r
UHJldmlldzsKKy0gKEJPT0wpYWxsb3dzTGlua1ByZXZpZXc7CisKIC0gKHZvaWQpc2F2ZUJhY2tG
b3J3YXJkU25hcHNob3RGb3JDdXJyZW50SXRlbTsKIC0gKHZvaWQpc2F2ZUJhY2tGb3J3YXJkU25h
cHNob3RGb3JJdGVtOihXS0JhY2tGb3J3YXJkTGlzdEl0ZW1SZWYpaXRlbTsKIApJbmRleDogU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5oCShyZXZpc2lv
biAxODc2NjcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmll
dy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMzEsNiArMjMxLDEyIEBAIFdLX0NMQVNTX0FWQUlMQUJM
RSgxMF8xMCwgOF8wKQogKi8KIEBwcm9wZXJ0eSAoV0tfTlVMTEFCTEVfUFJPUEVSVFkgbm9uYXRv
bWljLCBjb3B5KSBOU1N0cmluZyAqY3VzdG9tVXNlckFnZW50IFdLX0FWQUlMQUJMRShXS19NQUNf
VEJBLCBXS19JT1NfVEJBKTsKIAorLyohIEBhYnN0cmFjdCBBIEJvb2xlYW4gdmFsdWUgaW5kaWNh
dGluZyB3aGV0aGVyIGxpbmsgcHJldmlldyBpcyBhbGxvd2VkIGZvciBhbnkKKyBsaW5rcyBpbnNp
ZGUgdGhpcyBXS1dlYlZpZXcuCisgQGRpc2N1c3Npb24gVGhlIGRlZmF1bHQgdmFsdWUgaXMgTk8g
b24gaU9TIGFuZCBZRVMgb24gTWFjLgorICovCitAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBh
bGxvd3NMaW5rUHJldmlldyBXS19BVkFJTEFCTEUoV0tfTUFDX1RCQSwgV0tfSU9TX1RCQSk7CisK
ICNpZiBUQVJHRVRfT1NfSVBIT05FCiAvKiEgQGFic3RyYWN0IFRoZSBzY3JvbGwgdmlldyBhc3Nv
Y2lhdGVkIHdpdGggdGhlIHdlYiB2aWV3LgogICovCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQkocmV2aXNpb24gMTg3NjY3KQorKysg
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTM1MSw3ICszNTEsNyBAQCAtIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhGcmFtZToo
Q0dSZWN0KWZyCiAgICAgW3NlbGYgX3VwZGF0ZVNjcm9sbFZpZXdCYWNrZ3JvdW5kXTsKIAogICAg
IF92aWV3cG9ydE1ldGFUYWdXaWR0aCA9IC0xOwotICAgIF9hbGxvd3NMaW5rUHJldmlldyA9IFlF
UzsKKyAgICBfYWxsb3dzTGlua1ByZXZpZXcgPSBOTzsKIAogICAgIFtzZWxmIF9mcmFtZU9yQm91
bmRzQ2hhbmdlZF07CiAKQEAgLTE4NDYsNiArMTg0NiwxNiBAQCAtICh2b2lkKXNldE1hZ25pZmlj
YXRpb246KENHRmxvYXQpbWFnbmlmCiAgICAgW193a1ZpZXcgc2V0TWFnbmlmaWNhdGlvbjptYWdu
aWZpY2F0aW9uIGNlbnRlcmVkQXRQb2ludDpOU1BvaW50RnJvbUNHUG9pbnQocG9pbnQpXTsKIH0K
IAorLSAoQk9PTClhbGxvd3NMaW5rUHJldmlldworeworICAgIHJldHVybiBbX3drVmlldyBhbGxv
d3NMaW5rUHJldmlld107Cit9CisKKy0gKHZvaWQpc2V0QWxsb3dzTGlua1ByZXZpZXc6KEJPT0wp
YWxsb3dzTGlua1ByZXZpZXcKK3sKKyAgICBbX3drVmlldyBzZXRBbGxvd3NMaW5rUHJldmlldzph
bGxvd3NMaW5rUHJldmlld107Cit9CisKIC0gKEJPT0wpX2lnbm9yZXNOb25XaGVlbEV2ZW50cwog
ewogICAgIHJldHVybiBbX3drVmlldyBfaWdub3Jlc05vbldoZWVsRXZlbnRzXTsKQEAgLTMwMjks
MjAgKzMwMzksMjcgQEAgLSAoX1dLV2ViVmlld1ByaW50Rm9ybWF0dGVyICopX3dlYlZpZXdQcgog
ICAgIHJldHVybiAoX1dLV2ViVmlld1ByaW50Rm9ybWF0dGVyICopdmlld1ByaW50Rm9ybWF0dGVy
OwogfQogCi0tIChCT09MKV9hbGxvd3NMaW5rUHJldmlldworLSAoQk9PTClhbGxvd3NMaW5rUHJl
dmlldwogewogICAgIHJldHVybiBfYWxsb3dzTGlua1ByZXZpZXc7CiB9CiAKLS0gKHZvaWQpX3Nl
dEFsbG93c0xpbmtQcmV2aWV3OihCT09MKWFsbG93c0xpbmtQcmV2aWV3CistICh2b2lkKXNldEFs
bG93c0xpbmtQcmV2aWV3OihCT09MKWFsbG93c0xpbmtQcmV2aWV3CiB7CiAgICAgaWYgKF9hbGxv
d3NMaW5rUHJldmlldyA9PSBhbGxvd3NMaW5rUHJldmlldykKICAgICAgICAgcmV0dXJuOwogCiAg
ICAgX2FsbG93c0xpbmtQcmV2aWV3ID0gYWxsb3dzTGlua1ByZXZpZXc7CisKKyNpZiBIQVZFKExJ
TktfUFJFVklFVykKKyAgICBpZiAoX2FsbG93c0xpbmtQcmV2aWV3KQorICAgICAgICBbX2NvbnRl
bnRWaWV3IF9yZWdpc3RlclByZXZpZXddOworICAgIGVsc2UKKyAgICAgICAgW19jb250ZW50Vmll
dyBfdW5yZWdpc3RlclByZXZpZXddOworI2VuZGlmCiB9CiAKLSNlbHNlCisjZWxzZSAvLyAjaWYg
UExBVEZPUk0oSU9TKQogCiAjcHJhZ21hIG1hcmsgLSBPUyBYLXNwZWNpZmljIG1ldGhvZHMKIApJ
bmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdQcml2YXRl
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YlZpZXdQcml2YXRlLmgJKHJldmlzaW9uIDE4NzY2NykKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzEs
OSArMTMxLDYgQEAgV0tfRVhURVJOIE5TU3RyaW5nICogY29uc3QgX1dLU2hvdWxkT3BlbgogCiBA
cHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIF9XS1dlYlZpZXdQcmludEZvcm1hdHRlciAq
X3dlYlZpZXdQcmludEZvcm1hdHRlcjsKIAotLy8gSW5kaWNhdGluZyB3aGV0aGVyIGxpbmsgcHJl
dmlldyBpcyBhbGxvd2VkLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBZRVMuCi1AcHJvcGVydHkgKG5v
bmF0b21pYywgZ2V0dGVyPV9hbGxvd3NMaW5rUHJldmlldywgc2V0dGVyPV9zZXRBbGxvd3NMaW5r
UHJldmlldzopIEJPT0wgX2FsbG93c0xpbmtQcmV2aWV3IFdLX0FWQUlMQUJMRShOQSwgV0tfSU9T
X1RCQSk7Ci0KIC0gKHZvaWQpX2JlZ2luSW50ZXJhY3RpdmVPYnNjdXJlZEluc2V0c0NoYW5nZTsK
IC0gKHZvaWQpX2VuZEludGVyYWN0aXZlT2JzY3VyZWRJbnNldHNDaGFuZ2U7CiAtICh2b2lkKV9o
aWRlQ29udGVudFVudGlsTmV4dFVwZGF0ZTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvbWFjL1dLVmlldy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL21hYy9XS1ZpZXcubW0JKHJldmlzaW9uIDE4NzY2NykKKysrIFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjYxLDYgKzI2
MSw3IEBAIEBpbnRlcmZhY2UgV0tWaWV3RGF0YSA6IE5TT2JqZWN0IHsKICAgICBCT09MIF9pZ25v
cmVzTm9uV2hlZWxFdmVudHM7CiAgICAgQk9PTCBfaWdub3Jlc0FsbEV2ZW50czsKICAgICBCT09M
IF9hbGxvd3NCYWNrRm9yd2FyZE5hdmlnYXRpb25HZXN0dXJlczsKKyAgICBCT09MIF9hbGxvd3NM
aW5rUHJldmlldzsKIAogICAgIFJldGFpblB0cjxXS1ZpZXdMYXlvdXRTdHJhdGVneT4gX2xheW91
dFN0cmF0ZWd5OwogICAgIENHU2l6ZSBfbWluaW11bVZpZXdTaXplOwpAQCAtMjcwNiw3ICsyNzA3
LDcgQEAgLSAodm9pZCl2aWV3RGlkTW92ZVRvV2luZG93CiAgICAgICAgIFtzZWxmIF9hY2Nlc3Np
YmlsaXR5UmVnaXN0ZXJVSVByb2Nlc3NUb2tlbnNdOwogCiAjaWYgX19NQUNfT1NfWF9WRVJTSU9O
X01JTl9SRVFVSVJFRCA+PSAxMDEwMDAKLSAgICAgICAgaWYgKF9kYXRhLT5faW1tZWRpYXRlQWN0
aW9uR2VzdHVyZVJlY29nbml6ZXIgJiYgIVtbc2VsZiBnZXN0dXJlUmVjb2duaXplcnNdIGNvbnRh
aW5zT2JqZWN0Ol9kYXRhLT5faW1tZWRpYXRlQWN0aW9uR2VzdHVyZVJlY29nbml6ZXIuZ2V0KCld
ICYmICFfZGF0YS0+X2lnbm9yZXNOb25XaGVlbEV2ZW50cykKKyAgICAgICAgaWYgKF9kYXRhLT5f
aW1tZWRpYXRlQWN0aW9uR2VzdHVyZVJlY29nbml6ZXIgJiYgIVtbc2VsZiBnZXN0dXJlUmVjb2du
aXplcnNdIGNvbnRhaW5zT2JqZWN0Ol9kYXRhLT5faW1tZWRpYXRlQWN0aW9uR2VzdHVyZVJlY29n
bml6ZXIuZ2V0KCldICYmICFfZGF0YS0+X2lnbm9yZXNOb25XaGVlbEV2ZW50cyAmJiBfZGF0YS0+
X2FsbG93c0xpbmtQcmV2aWV3KQogICAgICAgICAgICAgW3NlbGYgYWRkR2VzdHVyZVJlY29nbml6
ZXI6X2RhdGEtPl9pbW1lZGlhdGVBY3Rpb25HZXN0dXJlUmVjb2duaXplci5nZXQoKV07CiAjZW5k
aWYKICAgICB9IGVsc2UgewpAQCAtMzc5NywxMiArMzc5OCwxNiBAQCAtIChpbnN0YW5jZXR5cGUp
aW5pdFdpdGhGcmFtZTooTlNSZWN0KWZyCiAgICAgW3dvcmtzcGFjZU5vdGlmaWNhdGlvbkNlbnRl
ciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3RvcihfYWN0aXZlU3BhY2VEaWRDaGFu
Z2U6KSBuYW1lOk5TV29ya3NwYWNlQWN0aXZlU3BhY2VEaWRDaGFuZ2VOb3RpZmljYXRpb24gb2Jq
ZWN0Om5pbF07CiAKICNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTAw
MAorICAgIF9kYXRhLT5fYWxsb3dzTGlua1ByZXZpZXcgPSBZRVM7CisKICAgICBpZiAoQ2xhc3Mg
Z2VzdHVyZUNsYXNzID0gTlNDbGFzc0Zyb21TdHJpbmcoQCJOU0ltbWVkaWF0ZUFjdGlvbkdlc3R1
cmVSZWNvZ25pemVyIikpIHsKICAgICAgICAgX2RhdGEtPl9pbW1lZGlhdGVBY3Rpb25HZXN0dXJl
UmVjb2duaXplciA9IGFkb3B0TlMoWyhOU0ltbWVkaWF0ZUFjdGlvbkdlc3R1cmVSZWNvZ25pemVy
ICopW2dlc3R1cmVDbGFzcyBhbGxvY10gaW5pdF0pOwogICAgICAgICBfZGF0YS0+X2ltbWVkaWF0
ZUFjdGlvbkNvbnRyb2xsZXIgPSBhZG9wdE5TKFtbV0tJbW1lZGlhdGVBY3Rpb25Db250cm9sbGVy
IGFsbG9jXSBpbml0V2l0aFBhZ2U6Kl9kYXRhLT5fcGFnZSB2aWV3OnNlbGYgcmVjb2duaXplcjpf
ZGF0YS0+X2ltbWVkaWF0ZUFjdGlvbkdlc3R1cmVSZWNvZ25pemVyLmdldCgpXSk7CiAgICAgICAg
IFtfZGF0YS0+X2ltbWVkaWF0ZUFjdGlvbkdlc3R1cmVSZWNvZ25pemVyIHNldERlbGVnYXRlOl9k
YXRhLT5faW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5nZXQoKV07CiAgICAgICAgIFtfZGF0YS0+
X2ltbWVkaWF0ZUFjdGlvbkdlc3R1cmVSZWNvZ25pemVyIHNldERlbGF5c1ByaW1hcnlNb3VzZUJ1
dHRvbkV2ZW50czpOT107CiAgICAgfQorI2Vsc2UKKyAgICBfZGF0YS0+X2FsbG93c0xpbmtQcmV2
aWV3ID0gTk87CiAjZW5kaWYKIAogICAgIHJldHVybiBzZWxmOwpAQCAtNDIyMSw2ICs0MjI2LDI2
IEBAIC0gKEJPT0wpYWxsb3dzQmFja0ZvcndhcmROYXZpZ2F0aW9uR2VzdHUKICAgICByZXR1cm4g
X2RhdGEtPl9hbGxvd3NCYWNrRm9yd2FyZE5hdmlnYXRpb25HZXN0dXJlczsKIH0KIAorLSAoQk9P
TClhbGxvd3NMaW5rUHJldmlldworeworICAgIHJldHVybiBfZGF0YS0+X2FsbG93c0xpbmtQcmV2
aWV3OworfQorCistICh2b2lkKXNldEFsbG93c0xpbmtQcmV2aWV3OihCT09MKWFsbG93c0xpbmtQ
cmV2aWV3Cit7CisgICAgaWYgKF9kYXRhLT5fYWxsb3dzTGlua1ByZXZpZXcgPT0gYWxsb3dzTGlu
a1ByZXZpZXcpCisgICAgICAgIHJldHVybjsKKworICAgIF9kYXRhLT5fYWxsb3dzTGlua1ByZXZp
ZXcgPSBhbGxvd3NMaW5rUHJldmlldzsKKyAgICAKKyNpZiBIQVZFKExJTktfUFJFVklFVykKKyAg
ICBpZiAoIV9hbGxvd3NMaW5rUHJldmlldykKKyAgICAgICAgW3NlbGYgcmVtb3ZlR2VzdHVyZVJl
Y29nbml6ZXI6X2RhdGEtPl9pbW1lZGlhdGVBY3Rpb25HZXN0dXJlUmVjb2duaXplci5nZXQoKV07
CisgICAgZWxzZSBpZiAoTlNHZXN0dXJlUmVjb2duaXplciAqaW1tZWRpYXRlQWN0aW9uUmVjb2du
aXplciA9IF9kYXRhLT5faW1tZWRpYXRlQWN0aW9uR2VzdHVyZVJlY29nbml6ZXIuZ2V0KCkpCisg
ICAgICAgIFtzZWxmIGFkZEdlc3R1cmVSZWNvZ25pemVyOmltbWVkaWF0ZUFjdGlvblJlY29nbml6
ZXJdOworI2VuZGlmCit9CisKIC0gKHZvaWQpX3NldElnbm9yZXNBbGxFdmVudHM6KEJPT0wpaWdu
b3Jlc0FsbEV2ZW50cwogewogICAgIF9kYXRhLT5faWdub3Jlc0FsbEV2ZW50cyA9IGlnbm9yZXNB
bGxFdmVudHM7CkBAIC00MjQ0LDggKzQyNjksMTAgQEAgLSAodm9pZClfc2V0SWdub3Jlc05vbldo
ZWVsRXZlbnRzOihCT09MKQogI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0g
MTAxMDAwCiAgICAgaWYgKGlnbm9yZXNOb25XaGVlbEV2ZW50cykKICAgICAgICAgW3NlbGYgcmVt
b3ZlR2VzdHVyZVJlY29nbml6ZXI6X2RhdGEtPl9pbW1lZGlhdGVBY3Rpb25HZXN0dXJlUmVjb2du
aXplci5nZXQoKV07Ci0gICAgZWxzZSBpZiAoTlNHZXN0dXJlUmVjb2duaXplciAqaW1tZWRpYXRl
QWN0aW9uUmVjb2duaXplciA9IF9kYXRhLT5faW1tZWRpYXRlQWN0aW9uR2VzdHVyZVJlY29nbml6
ZXIuZ2V0KCkpCi0gICAgICAgIFtzZWxmIGFkZEdlc3R1cmVSZWNvZ25pemVyOmltbWVkaWF0ZUFj
dGlvblJlY29nbml6ZXJdOworICAgIGVsc2UgaWYgKE5TR2VzdHVyZVJlY29nbml6ZXIgKmltbWVk
aWF0ZUFjdGlvblJlY29nbml6ZXIgPSBfZGF0YS0+X2ltbWVkaWF0ZUFjdGlvbkdlc3R1cmVSZWNv
Z25pemVyLmdldCgpKSB7CisgICAgICAgIGlmIChfZGF0YS0+X2FsbG93c0xpbmtQcmV2aWV3KQor
ICAgICAgICAgICAgW3NlbGYgYWRkR2VzdHVyZVJlY29nbml6ZXI6aW1tZWRpYXRlQWN0aW9uUmVj
b2duaXplcl07CisgICAgfQogI2VuZGlmCiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCShyZXZp
c2lvbiAxODc2NjcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5tbQkod29ya2luZyBjb3B5KQpAQCAtMzIxMSw2ICszMjExLDkgQEAgLSAo
dm9pZClhY3Rpb25TaGVldEFzc2lzdGFudERpZFN0b3BJbnRlcgogCiAtICh2b2lkKV9yZWdpc3Rl
clByZXZpZXcKIHsKKyAgICBpZiAoIV93ZWJWaWV3LmFsbG93c0xpbmtQcmV2aWV3KQorICAgICAg
ICByZXR1cm47CisKICAgICBfcHJldmlld0l0ZW1Db250cm9sbGVyID0gYWRvcHROUyhbW1VJUHJl
dmlld0l0ZW1Db250cm9sbGVyIGFsbG9jXSBpbml0V2l0aFZpZXc6c2VsZl0pOwogICAgIFtfcHJl
dmlld0l0ZW1Db250cm9sbGVyIHNldERlbGVnYXRlOnNlbGZdOwogICAgIF9wcmV2aWV3R2VzdHVy
ZVJlY29nbml6ZXIgPSBfcHJldmlld0l0ZW1Db250cm9sbGVyLmdldCgpLnByZXNlbnRhdGlvbkdl
c3R1cmVSZWNvZ25pemVyOwo=
</data>
<flag name="review"
          id="283260"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>