<?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>109528</bug_id>
          
          <creation_ts>2013-02-11 17:43:47 -0800</creation_ts>
          <short_desc>Fix keyboard scrolling in suggestionpicker</short_desc>
          <delta_ts>2013-02-15 09:28:51 -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>Forms</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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="Emil A Eklund">eae</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>keishi</cc>
    
    <cc>tkent</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>830390</commentid>
    <comment_count>0</comment_count>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2013-02-11 17:43:47 -0800</bug_when>
    <thetext>The keyboard scrolling behavior in suggestion pickle depends on the scroll-to-reveal logic and often results in undesired scroll positions (especially when using pg up/down). Furthermore it doesn&apos;t support Home/End nor does it work the same way as keyboard scrolling in native controls or listboxes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>830454</commentid>
    <comment_count>1</comment_count>
      <attachid>187750</attachid>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2013-02-11 18:51:47 -0800</bug_when>
    <thetext>Created attachment 187750
WIP, do not review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831284</commentid>
    <comment_count>2</comment_count>
      <attachid>187941</attachid>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2013-02-12 14:47:46 -0800</bug_when>
    <thetext>Created attachment 187941
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833881</commentid>
    <comment_count>3</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2013-02-15 04:14:26 -0800</bug_when>
    <thetext>Thanks for fixing this. I didn&apos;t know it was wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834099</commentid>
    <comment_count>4</comment_count>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2013-02-15 09:28:51 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Thanks for fixing this. I didn&apos;t know it was wrong.

It is quite tricky to get right and I still have one more edge case I want to fix before uploading a real patch for review. We really should fix this in the web platform at some point...</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187750</attachid>
            <date>2013-02-11 18:51:47 -0800</date>
            <delta_ts>2013-02-11 18:51:47 -0800</delta_ts>
            <desc>WIP, do not review</desc>
            <filename>p4</filename>
            <type>text/plain</type>
            <size>4875</size>
            <attacher name="Emil A Eklund">eae</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1Jlc291cmNlcy9wYWdlcG9wdXBzL3N1Z2dlc3Rpb25QaWNr
ZXIuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUmVzb3VyY2VzL3BhZ2Vwb3B1cHMv
c3VnZ2VzdGlvblBpY2tlci5qcwkocmV2aXNpb24gMTQyNTM4KQorKysgU291cmNlL1dlYkNvcmUv
UmVzb3VyY2VzL3BhZ2Vwb3B1cHMvc3VnZ2VzdGlvblBpY2tlci5qcwkod29ya2luZyBjb3B5KQpA
QCAtMjE5LDEzICsyMTksMTMgQEAgU3VnZ2VzdGlvblBpY2tlci5wcm90b3R5cGUuX2hhbmRsZUVu
dHJ5QwogICovCiBTdWdnZXN0aW9uUGlja2VyLnByb3RvdHlwZS5fZmluZEZpcnN0VmlzaWJsZUVu
dHJ5ID0gZnVuY3Rpb24oKSB7CiAgICAgdmFyIHNjcm9sbFRvcCA9IHRoaXMuX2NvbnRhaW5lckVs
ZW1lbnQuc2Nyb2xsVG9wOwotICAgIHZhciBjaGlsZE5vZGVzID0gdGhpcy5fY29udGFpbmVyRWxl
bWVudC5jaGlsZE5vZGVzOwotICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGROb2Rlcy5sZW5n
dGg7ICsraSkgewotICAgICAgICB2YXIgbm9kZSA9IGNoaWxkTm9kZXNbaV07Ci0gICAgICAgIGlm
IChub2RlLm5vZGVUeXBlICE9PSBOb2RlLkVMRU1FTlRfTk9ERSB8fCAhbm9kZS5jbGFzc0xpc3Qu
Y29udGFpbnMoU3VnZ2VzdGlvblBpY2tlci5MaXN0RW50cnlDbGFzcykpCisgICAgdmFyIGNoaWxk
cmVuID0gdGhpcy5fY29udGFpbmVyRWxlbWVudC5jaGlsZHJlbjsKKyAgICBmb3IgKHZhciBpID0g
MDsgaSA8IGNoaWxkcmVuLmxlbmd0aDsgKytpKSB7CisgICAgICAgIHZhciBlbGVtZW50ID0gY2hp
bGRyZW5baV07CisgICAgICAgIGlmICghZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoU3VnZ2Vz
dGlvblBpY2tlci5MaXN0RW50cnlDbGFzcykpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAg
ICAgaWYgKG5vZGUub2Zmc2V0VG9wICsgbm9kZS5vZmZzZXRIZWlnaHQgLSBzY3JvbGxUb3AgPiBT
dWdnZXN0aW9uUGlja2VyLlZpc2libGVFbnRyeVRocmVzaG9sZEhlaWdodCkKLSAgICAgICAgICAg
IHJldHVybiBub2RlOworICAgICAgICBpZiAoZWxlbWVudC5vZmZzZXRUb3AgKyBlbGVtZW50Lm9m
ZnNldEhlaWdodCAtIHNjcm9sbFRvcCA+IFN1Z2dlc3Rpb25QaWNrZXIuVmlzaWJsZUVudHJ5VGhy
ZXNob2xkSGVpZ2h0KQorICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQ7CiAgICAgfQogICAgIHJl
dHVybiBudWxsOwogfTsKQEAgLTI0Niw2ICsyNDYsMjQgQEAgU3VnZ2VzdGlvblBpY2tlci5wcm90
b3R5cGUuX2ZpbmRMYXN0VmlzaQogICAgIHJldHVybiBudWxsOwogfTsKIAorCisvKioKKyAqIEBw
YXJhbSB7IUV2ZW50fSBldmVudAorICovCitTdWdnZXN0aW9uUGlja2VyLnByb3RvdHlwZS5fc2Ny
b2xsSW50b1ZpZXdBbmRGb2N1cyA9IGZ1bmN0aW9uKGVsZW1lbnQpIHsKKyAgICB2YXIgZWxlbWVu
dFJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOworICAgIHZhciB2aXNpYmxl
VG9wID0gdGhpcy5fY29udGFpbmVyRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3Ag
KyB0aGlzLl9jb250YWluZXJFbGVtZW50LmNsaWVudFRvcDsKKyAgICB2YXIgdmlzaWJsZUJvdHRv
bSA9IHZpc2libGVUb3AgKyB0aGlzLl9jb250YWluZXJFbGVtZW50LmNsaWVudEhlaWdodDsKKyAg
ICAKKyAgICBpZiAoZWxlbWVudFJlY3QudG9wIDwgdmlzaWJsZVRvcCkKKyAgICAgICAgZWxlbWVu
dC5zY3JvbGxJbnRvVmlldyh0cnVlIC8qIGFsaWduV2l0aFRvcCAqLyk7CisKKyAgICBlbHNlIGlm
IChlbGVtZW50UmVjdC5ib3R0b20gPiB2aXNpYmxlQm90dG9tKQorICAgICAgICBlbGVtZW50LnNj
cm9sbEludG9WaWV3KGZhbHNlIC8qIGFsaWduV2l0aFRvcCAqLyk7CisgICAgICAgIAorICAgIGVs
ZW1lbnQuZm9jdXMoKTsKK307CisKIC8qKgogICogQHBhcmFtIHshRXZlbnR9IGV2ZW50CiAgKi8K
QEAgLTI2MCwxMiArMjc4LDEyIEBAIFN1Z2dlc3Rpb25QaWNrZXIucHJvdG90eXBlLl9oYW5kbGVC
b2R5S2UKICAgICAgICAgICAgIGZvciAodmFyIG5vZGUgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50
LnByZXZpb3VzRWxlbWVudFNpYmxpbmc7IG5vZGU7IG5vZGUgPSBub2RlLnByZXZpb3VzRWxlbWVu
dFNpYmxpbmcpIHsKICAgICAgICAgICAgICAgICBpZiAobm9kZS5jbGFzc0xpc3QuY29udGFpbnMo
U3VnZ2VzdGlvblBpY2tlci5MaXN0RW50cnlDbGFzcykpIHsKICAgICAgICAgICAgICAgICAgICAg
dGhpcy5faXNGb2N1c0J5TW91c2UgPSBmYWxzZTsKLSAgICAgICAgICAgICAgICAgICAgbm9kZS5m
b2N1cygpOworICAgICAgICAgICAgICAgICAgICB0aGlzLl9zY3JvbGxJbnRvVmlld0FuZEZvY3Vz
KG5vZGUpOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICB0aGlzLl9lbGVtZW50
LnF1ZXJ5U2VsZWN0b3IoIi4iICsgU3VnZ2VzdGlvblBpY2tlci5MaXN0RW50cnlDbGFzcyArICI6
bGFzdC1jaGlsZCIpLmZvY3VzKCk7CisgICAgICAgICAgICB0aGlzLl9zY3JvbGxJbnRvVmlld0Fu
ZEZvY3VzKHRoaXMuX2VsZW1lbnQucXVlcnlTZWxlY3RvcigiLiIgKyBTdWdnZXN0aW9uUGlja2Vy
Lkxpc3RFbnRyeUNsYXNzICsgIjpsYXN0LWNoaWxkIikpOwogICAgICAgICB9CiAgICAgICAgIGV2
ZW50SGFuZGxlZCA9IHRydWU7CiAgICAgfSBlbHNlIGlmIChrZXkgPT0gIkRvd24iKSB7CkBAIC0y
NzMsMTIgKzI5MSwxMiBAQCBTdWdnZXN0aW9uUGlja2VyLnByb3RvdHlwZS5faGFuZGxlQm9keUtl
CiAgICAgICAgICAgICBmb3IgKHZhciBub2RlID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudC5uZXh0
RWxlbWVudFNpYmxpbmc7IG5vZGU7IG5vZGUgPSBub2RlLm5leHRFbGVtZW50U2libGluZykgewog
ICAgICAgICAgICAgICAgIGlmIChub2RlLmNsYXNzTGlzdC5jb250YWlucyhTdWdnZXN0aW9uUGlj
a2VyLkxpc3RFbnRyeUNsYXNzKSkgewogICAgICAgICAgICAgICAgICAgICB0aGlzLl9pc0ZvY3Vz
QnlNb3VzZSA9IGZhbHNlOwotICAgICAgICAgICAgICAgICAgICBub2RlLmZvY3VzKCk7CisgICAg
ICAgICAgICAgICAgICAgIHRoaXMuX3Njcm9sbEludG9WaWV3QW5kRm9jdXMobm9kZSk7CiAgICAg
ICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0K
ICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQucXVlcnlTZWxlY3Rv
cigiLiIgKyBTdWdnZXN0aW9uUGlja2VyLkxpc3RFbnRyeUNsYXNzICsgIjpmaXJzdC1jaGlsZCIp
LmZvY3VzKCk7CisgICAgICAgICAgICB0aGlzLl9zY3JvbGxJbnRvVmlld0FuZEZvY3VzKHRoaXMu
X2VsZW1lbnQucXVlcnlTZWxlY3RvcigiLiIgKyBTdWdnZXN0aW9uUGlja2VyLkxpc3RFbnRyeUNs
YXNzICsgIjpmaXJzdC1jaGlsZCIpKTsKICAgICAgICAgfQogICAgICAgICBldmVudEhhbmRsZWQg
PSB0cnVlOwogICAgIH0gZWxzZSBpZiAoa2V5ID09PSAiRW50ZXIiKSB7CkBAIC0yODksMTIgKzMw
NywyMiBAQCBTdWdnZXN0aW9uUGlja2VyLnByb3RvdHlwZS5faGFuZGxlQm9keUtlCiAgICAgICAg
IC8vIFNjcm9sbGluZyBjYXVzZXMgbW91c2VvdmVyIGV2ZW50IHRvIGJlIGNhbGxlZCBhbmQgdGhh
dCB0cmllcyB0byBtb3ZlIHRoZSBmb2N1cyB0b28uCiAgICAgICAgIC8vIFRvIHByZXZlbnQgZmxp
Y2tlcmluZyB3ZSB3b24ndCBmb2N1cyBpZiB0aGUgY3VycmVudCBmb2N1cyB3YXMgY2F1c2VkIGJ5
IHRoZSBtb3VzZS4KICAgICAgICAgaWYgKCF0aGlzLl9pc0ZvY3VzQnlNb3VzZSkKLSAgICAgICAg
ICAgIHRoaXMuX2ZpbmRGaXJzdFZpc2libGVFbnRyeSgpLmZvY3VzKCk7CisgICAgICAgICAgICB0
aGlzLl9zY3JvbGxJbnRvVmlld0FuZEZvY3VzKHRoaXMuX2ZpbmRGaXJzdFZpc2libGVFbnRyeSgp
KTsKICAgICAgICAgZXZlbnRIYW5kbGVkID0gdHJ1ZTsKICAgICB9IGVsc2UgaWYgKGtleSA9PT0g
IlBhZ2VEb3duIikgewogICAgICAgICB0aGlzLl9jb250YWluZXJFbGVtZW50LnNjcm9sbFRvcCAr
PSB0aGlzLl9jb250YWluZXJFbGVtZW50LmNsaWVudEhlaWdodDsKICAgICAgICAgaWYgKCF0aGlz
Ll9pc0ZvY3VzQnlNb3VzZSkKLSAgICAgICAgICAgIHRoaXMuX2ZpbmRMYXN0VmlzaWJsZUVudHJ5
KCkuZm9jdXMoKTsKKyAgICAgICAgICAgIHRoaXMuX3Njcm9sbEludG9WaWV3QW5kRm9jdXModGhp
cy5fZmluZExhc3RWaXNpYmxlRW50cnkoKSk7CisgICAgICAgIGV2ZW50SGFuZGxlZCA9IHRydWU7
CisgICAgfSBlbHNlIGlmIChrZXkgPT09ICJIb21lIikgeworICAgICAgICB0aGlzLl9jb250YWlu
ZXJFbGVtZW50LnNjcm9sbFRvcCA9IDA7CisgICAgICAgIGlmICghdGhpcy5faXNGb2N1c0J5TW91
c2UpCisgICAgICAgICAgICB0aGlzLl9zY3JvbGxJbnRvVmlld0FuZEZvY3VzKHRoaXMuX2ZpbmRG
aXJzdFZpc2libGVFbnRyeSgpKTsKKyAgICAgICAgZXZlbnRIYW5kbGVkID0gdHJ1ZTsKKyAgICB9
IGVsc2UgaWYgKGtleSA9PT0gIkVuZCIpIHsKKyAgICAgICAgdGhpcy5fY29udGFpbmVyRWxlbWVu
dC5zY3JvbGxUb3AgPSB0aGlzLl9jb250YWluZXJFbGVtZW50LnNjcm9sbEhlaWdodCAtIHRoaXMu
X2NvbnRhaW5lckVsZW1lbnQuY2xpZW50SGVpZ2h0OworICAgICAgICBpZiAoIXRoaXMuX2lzRm9j
dXNCeU1vdXNlKQorICAgICAgICAgICAgdGhpcy5fc2Nyb2xsSW50b1ZpZXdBbmRGb2N1cyh0aGlz
Ll9maW5kTGFzdFZpc2libGVFbnRyeSgpKTsKICAgICAgICAgZXZlbnRIYW5kbGVkID0gdHJ1ZTsK
ICAgICB9CiAgICAgaWYgKGV2ZW50SGFuZGxlZCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187941</attachid>
            <date>2013-02-12 14:47:46 -0800</date>
            <delta_ts>2013-02-12 14:47:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>p3</filename>
            <type>text/plain</type>
            <size>7686</size>
            <attacher name="Emil A Eklund">eae</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1Jlc291cmNlcy9wYWdlcG9wdXBzL3N1Z2dlc3Rpb25QaWNr
ZXIuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUmVzb3VyY2VzL3BhZ2Vwb3B1cHMv
c3VnZ2VzdGlvblBpY2tlci5qcwkocmV2aXNpb24gMTQyNjcyKQorKysgU291cmNlL1dlYkNvcmUv
UmVzb3VyY2VzL3BhZ2Vwb3B1cHMvc3VnZ2VzdGlvblBpY2tlci5qcwkod29ya2luZyBjb3B5KQpA
QCAtMzAsNyArMzAsNyBAQAogICovCiBmdW5jdGlvbiBTdWdnZXN0aW9uUGlja2VyKGVsZW1lbnQs
IGNvbmZpZykgewogICAgIFBpY2tlci5jYWxsKHRoaXMsIGVsZW1lbnQsIGNvbmZpZyk7Ci0gICAg
dGhpcy5faXNGb2N1c0J5TW91c2UgPSBmYWxzZTsKKyAgICB0aGlzLl9pZ25vcmVOZXh0TW91c2VP
dmVyRXZlbnQgPSBmYWxzZTsKICAgICB0aGlzLl9jb250YWluZXJFbGVtZW50ID0gbnVsbDsKICAg
ICB0aGlzLl9zZXRDb2xvcnMoKTsKICAgICB0aGlzLl9sYXlvdXQoKTsKQEAgLTIxNCwzOCArMjE0
LDY1IEBAIFN1Z2dlc3Rpb25QaWNrZXIucHJvdG90eXBlLl9oYW5kbGVFbnRyeUMKICAgICBldmVu
dC5wcmV2ZW50RGVmYXVsdCgpOwogfTsKIAorCiAvKioKLSAqIEByZXR1cm4gez9FbGVtZW50fQor
ICogU2Nyb2xscyB0aGUgZ2l2ZW4gZWxlbWVudCBpbnRvIHZpZXcgaWYgbmVlZGVkIGFuZCBmb2N1
c2VzIGl0LgorICogVW5saWtlIEVsZW1lbnQuZm9jdXMgdGhpcyBtYWtlcyBzdXJlIHRoZSBlbGVt
ZW50IGlzIGFsaWduZWQgd2l0aAorICogZWl0aGVyIHRoZSB0b3Agb3IgYm90dG9tIGVkZ2UgaWYg
c2Nyb2xsaW5nIGlzIG5lZWRlZCBhbmQgdW5saWtlIGp1c3QKKyAqIGNhbGxpbmcgRWxlbWVudC5z
Y3JvbGxJbnRvVmlldyBpdCBvbmx5IHNjcm9sbHMgYXMgbmVlZGVkLgorICogQHBhcmFtIHshRWxl
bWVudH0gZWxlbWVudAogICovCi1TdWdnZXN0aW9uUGlja2VyLnByb3RvdHlwZS5fZmluZEZpcnN0
VmlzaWJsZUVudHJ5ID0gZnVuY3Rpb24oKSB7Ci0gICAgdmFyIHNjcm9sbFRvcCA9IHRoaXMuX2Nv
bnRhaW5lckVsZW1lbnQuc2Nyb2xsVG9wOwotICAgIHZhciBjaGlsZE5vZGVzID0gdGhpcy5fY29u
dGFpbmVyRWxlbWVudC5jaGlsZE5vZGVzOwotICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGRO
b2Rlcy5sZW5ndGg7ICsraSkgewotICAgICAgICB2YXIgbm9kZSA9IGNoaWxkTm9kZXNbaV07Ci0g
ICAgICAgIGlmIChub2RlLm5vZGVUeXBlICE9PSBOb2RlLkVMRU1FTlRfTk9ERSB8fCAhbm9kZS5j
bGFzc0xpc3QuY29udGFpbnMoU3VnZ2VzdGlvblBpY2tlci5MaXN0RW50cnlDbGFzcykpCi0gICAg
ICAgICAgICBjb250aW51ZTsKLSAgICAgICAgaWYgKG5vZGUub2Zmc2V0VG9wICsgbm9kZS5vZmZz
ZXRIZWlnaHQgLSBzY3JvbGxUb3AgPiBTdWdnZXN0aW9uUGlja2VyLlZpc2libGVFbnRyeVRocmVz
aG9sZEhlaWdodCkKLSAgICAgICAgICAgIHJldHVybiBub2RlOworU3VnZ2VzdGlvblBpY2tlci5w
cm90b3R5cGUuX3Njcm9sbEludG9WaWV3QW5kRm9jdXMgPSBmdW5jdGlvbihlbGVtZW50KSB7Cisg
ICAgdmFyIGVsZW1lbnRSZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKKyAg
ICB2YXIgdmlzaWJsZVRvcCA9IHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuZ2V0Qm91bmRpbmdDbGll
bnRSZWN0KCkudG9wICsgdGhpcy5fY29udGFpbmVyRWxlbWVudC5jbGllbnRUb3A7CisgICAgdmFy
IHZpc2libGVCb3R0b20gPSB2aXNpYmxlVG9wICsgdGhpcy5fY29udGFpbmVyRWxlbWVudC5jbGll
bnRIZWlnaHQ7CisgICAgCisgICAgaWYgKGVsZW1lbnRSZWN0LnRvcCA8IHZpc2libGVUb3ApIHsK
KyAgICAgICAgZWxlbWVudC5zY3JvbGxJbnRvVmlldyh0cnVlIC8qIGFsaWduV2l0aFRvcCAqLyk7
CisgICAgICAgIHRoaXMuX2lnbm9yZU5leHRNb3VzZU92ZXJFdmVudCA9IHRydWU7CiAgICAgfQot
ICAgIHJldHVybiBudWxsOworICAgICBlbHNlIGlmIChlbGVtZW50UmVjdC5ib3R0b20gPiB2aXNp
YmxlQm90dG9tKSB7CisgICAgICAgIGVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoZmFsc2UgLyogYWxp
Z25XaXRoVG9wICovKTsKKyAgICAgICAgdGhpcy5faWdub3JlTmV4dE1vdXNlT3ZlckV2ZW50ID0g
dHJ1ZTsKKyAgICB9CisgICAgIGVsZW1lbnQuZm9jdXMoKTsKIH07CiAKKwogLyoqCi0gKiBAcmV0
dXJuIHs/RWxlbWVudH0KKyAqIEZvY3VzZXMgYW4gaXRlbSBuIG51bWJlciBvZiBpdGVtcyBhd2F5
IGZyb20gdGhlIGFjdGl2ZSBvbmUuCisgKiBAcGFyYW0ge051bWJlcn0gbiBOdW1iZXIgb2YgZWxl
bWVudHMgdG8gc2hpZnQgZm9jdXMgYnkuCiAgKi8KLVN1Z2dlc3Rpb25QaWNrZXIucHJvdG90eXBl
Ll9maW5kTGFzdFZpc2libGVFbnRyeSA9IGZ1bmN0aW9uKCkgewotICAgIHZhciBzY3JvbGxCb3R0
b20gPSB0aGlzLl9jb250YWluZXJFbGVtZW50LnNjcm9sbFRvcCArIHRoaXMuX2NvbnRhaW5lckVs
ZW1lbnQub2Zmc2V0SGVpZ2h0OwotICAgIHZhciBjaGlsZE5vZGVzID0gdGhpcy5fY29udGFpbmVy
RWxlbWVudC5jaGlsZE5vZGVzOwotICAgIGZvciAodmFyIGkgPSBjaGlsZE5vZGVzLmxlbmd0aCAt
IDE7IGkgPj0gMDsgLS1pKXsKLSAgICAgICAgdmFyIG5vZGUgPSBjaGlsZE5vZGVzW2ldOwotICAg
ICAgICBpZiAobm9kZS5ub2RlVHlwZSAhPT0gTm9kZS5FTEVNRU5UX05PREUgfHwgIW5vZGUuY2xh
c3NMaXN0LmNvbnRhaW5zKFN1Z2dlc3Rpb25QaWNrZXIuTGlzdEVudHJ5Q2xhc3MpKQotICAgICAg
ICAgICAgY29udGludWU7Ci0gICAgICAgIGlmIChzY3JvbGxCb3R0b20gLSBub2RlLm9mZnNldFRv
cCA+IFN1Z2dlc3Rpb25QaWNrZXIuVmlzaWJsZUVudHJ5VGhyZXNob2xkSGVpZ2h0KQotICAgICAg
ICAgICAgcmV0dXJuIG5vZGU7CitTdWdnZXN0aW9uUGlja2VyLnByb3RvdHlwZS5fZm9jdXNOZXh0
SW5EaXJlY3Rpb24gPSBmdW5jdGlvbihuKSB7CisgICAgdmFyIGl0ZW1FbGVtZW50cyA9IHRoaXMu
X2VsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLiIgKyBTdWdnZXN0aW9uUGlja2VyLkxpc3RFbnRy
eUNsYXNzKTsKKyAgICB2YXIgaW5kZXg7CisgICAgCisgICAgaWYgKGRvY3VtZW50LmFjdGl2ZUVs
ZW1lbnQgJiYgZG9jdW1lbnQuYWN0aXZlRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoU3VnZ2Vz
dGlvblBpY2tlci5MaXN0RW50cnlDbGFzcykpIHsKKyAgICAgICAgZm9yICh2YXIgZWxlbWVudCwg
aSA9IDA7IGVsZW1lbnQgPSBpdGVtRWxlbWVudHNbaV07IGkrKykgeworICAgICAgICAgICAgaWYg
KGVsZW1lbnQgPT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCkgeworICAgICAgICAgICAgICAgIGlu
ZGV4ID0gaSArIG47CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KICAgICB9Ci0gICAgcmV0dXJuIG51bGw7CisgICAgZWxzZQorICAgICAgICBpbmRleCA9
IG4gPCAwID8gaXRlbUVsZW1lbnRzLmxlbmd0aCAtIDEgKyBuIDogbjsKKyAgICAKKyAgICB0aGlz
Ll9zY3JvbGxJbnRvVmlld0FuZEZvY3VzKGl0ZW1FbGVtZW50c1tNYXRoLm1heChNYXRoLm1pbihp
bmRleCwgaXRlbUVsZW1lbnRzLmxlbmd0aCAtIDEpLCAwKV0pOworfTsKKyAvKioKKyAqIEZvY3Vz
ZXMgYSBzcGVjaWZpYyBpdGVtLgorICogQHBhcmFtIHtOdW1iZXJ9IGluZGV4IEluZGV4IG9mIGl0
ZW0gdG8gZm9jdXMuIC0xIGZvciBsYXN0IGl0ZW0uCisgKi8KK1N1Z2dlc3Rpb25QaWNrZXIucHJv
dG90eXBlLl9mb2N1c0F0SW5kZXggPSBmdW5jdGlvbihpbmRleCkgeworICAgIHZhciBpdGVtRWxl
bWVudHMgPSB0aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi4iICsgU3VnZ2VzdGlvblBp
Y2tlci5MaXN0RW50cnlDbGFzcyk7CisgICAgCisgICAgaWYgKGluZGV4ID09IC0xIHx8IGluZGV4
ID49IGl0ZW1FbGVtZW50cy5sZW5ndGgpCisgICAgICAgIGluZGV4ID0gaXRlbUVsZW1lbnRzLmxl
bmd0aCAtIDE7CisgICAgIHRoaXMuX3Njcm9sbEludG9WaWV3QW5kRm9jdXMoaXRlbUVsZW1lbnRz
W01hdGgubWF4KGluZGV4LCAwKV0pOwogfTsKIAorCiAvKioKICAqIEBwYXJhbSB7IUV2ZW50fSBl
dmVudAogICovCkBAIC0yNTYsNDUgKzI4MywyNSBAQCBTdWdnZXN0aW9uUGlja2VyLnByb3RvdHlw
ZS5faGFuZGxlQm9keUtlCiAgICAgICAgIHRoaXMuaGFuZGxlQ2FuY2VsKCk7CiAgICAgICAgIGV2
ZW50SGFuZGxlZCA9IHRydWU7CiAgICAgfSBlbHNlIGlmIChrZXkgPT0gIlVwIikgewotICAgICAg
ICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAmJiBkb2N1bWVudC5hY3RpdmVFbGVtZW50LmNs
YXNzTGlzdC5jb250YWlucyhTdWdnZXN0aW9uUGlja2VyLkxpc3RFbnRyeUNsYXNzKSkgewotICAg
ICAgICAgICAgZm9yICh2YXIgbm9kZSA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQucHJldmlvdXNF
bGVtZW50U2libGluZzsgbm9kZTsgbm9kZSA9IG5vZGUucHJldmlvdXNFbGVtZW50U2libGluZykg
ewotICAgICAgICAgICAgICAgIGlmIChub2RlLmNsYXNzTGlzdC5jb250YWlucyhTdWdnZXN0aW9u
UGlja2VyLkxpc3RFbnRyeUNsYXNzKSkgewotICAgICAgICAgICAgICAgICAgICB0aGlzLl9pc0Zv
Y3VzQnlNb3VzZSA9IGZhbHNlOwotICAgICAgICAgICAgICAgICAgICBub2RlLmZvY3VzKCk7Ci0g
ICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQucXVlcnlTZWxl
Y3RvcigiLiIgKyBTdWdnZXN0aW9uUGlja2VyLkxpc3RFbnRyeUNsYXNzICsgIjpsYXN0LWNoaWxk
IikuZm9jdXMoKTsKLSAgICAgICAgfQorICAgICAgICB0aGlzLl9mb2N1c05leHRJbkRpcmVjdGlv
bigtMSk7CiAgICAgICAgIGV2ZW50SGFuZGxlZCA9IHRydWU7CiAgICAgfSBlbHNlIGlmIChrZXkg
PT0gIkRvd24iKSB7Ci0gICAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ICYmIGRvY3Vt
ZW50LmFjdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKFN1Z2dlc3Rpb25QaWNrZXIuTGlz
dEVudHJ5Q2xhc3MpKSB7Ci0gICAgICAgICAgICBmb3IgKHZhciBub2RlID0gZG9jdW1lbnQuYWN0
aXZlRWxlbWVudC5uZXh0RWxlbWVudFNpYmxpbmc7IG5vZGU7IG5vZGUgPSBub2RlLm5leHRFbGVt
ZW50U2libGluZykgewotICAgICAgICAgICAgICAgIGlmIChub2RlLmNsYXNzTGlzdC5jb250YWlu
cyhTdWdnZXN0aW9uUGlja2VyLkxpc3RFbnRyeUNsYXNzKSkgewotICAgICAgICAgICAgICAgICAg
ICB0aGlzLl9pc0ZvY3VzQnlNb3VzZSA9IGZhbHNlOwotICAgICAgICAgICAgICAgICAgICBub2Rl
LmZvY3VzKCk7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHRoaXMuX2VsZW1l
bnQucXVlcnlTZWxlY3RvcigiLiIgKyBTdWdnZXN0aW9uUGlja2VyLkxpc3RFbnRyeUNsYXNzICsg
IjpmaXJzdC1jaGlsZCIpLmZvY3VzKCk7Ci0gICAgICAgIH0KKyAgICAgICAgdGhpcy5fZm9jdXNO
ZXh0SW5EaXJlY3Rpb24oMSk7CiAgICAgICAgIGV2ZW50SGFuZGxlZCA9IHRydWU7CiAgICAgfSBl
bHNlIGlmIChrZXkgPT09ICJFbnRlciIpIHsKICAgICAgICAgdGhpcy5zZWxlY3RFbnRyeShkb2N1
bWVudC5hY3RpdmVFbGVtZW50KTsKICAgICAgICAgZXZlbnRIYW5kbGVkID0gdHJ1ZTsKICAgICB9
IGVsc2UgaWYgKGtleSA9PT0gIlBhZ2VVcCIpIHsKLSAgICAgICAgdGhpcy5fY29udGFpbmVyRWxl
bWVudC5zY3JvbGxUb3AgLT0gdGhpcy5fY29udGFpbmVyRWxlbWVudC5jbGllbnRIZWlnaHQ7Ci0g
ICAgICAgIC8vIFNjcm9sbGluZyBjYXVzZXMgbW91c2VvdmVyIGV2ZW50IHRvIGJlIGNhbGxlZCBh
bmQgdGhhdCB0cmllcyB0byBtb3ZlIHRoZSBmb2N1cyB0b28uCi0gICAgICAgIC8vIFRvIHByZXZl
bnQgZmxpY2tlcmluZyB3ZSB3b24ndCBmb2N1cyBpZiB0aGUgY3VycmVudCBmb2N1cyB3YXMgY2F1
c2VkIGJ5IHRoZSBtb3VzZS4KLSAgICAgICAgaWYgKCF0aGlzLl9pc0ZvY3VzQnlNb3VzZSkKLSAg
ICAgICAgICAgIHRoaXMuX2ZpbmRGaXJzdFZpc2libGVFbnRyeSgpLmZvY3VzKCk7CisgICAgICAg
IHRoaXMuX2ZvY3VzTmV4dEluRGlyZWN0aW9uKC1TdWdnZXN0aW9uUGlja2VyLk51bWJlck9mVmlz
aWJsZUVudHJpZXMpOwogICAgICAgICBldmVudEhhbmRsZWQgPSB0cnVlOwogICAgIH0gZWxzZSBp
ZiAoa2V5ID09PSAiUGFnZURvd24iKSB7Ci0gICAgICAgIHRoaXMuX2NvbnRhaW5lckVsZW1lbnQu
c2Nyb2xsVG9wICs9IHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuY2xpZW50SGVpZ2h0OwotICAgICAg
ICBpZiAoIXRoaXMuX2lzRm9jdXNCeU1vdXNlKQotICAgICAgICAgICAgdGhpcy5fZmluZExhc3RW
aXNpYmxlRW50cnkoKS5mb2N1cygpOworICAgICAgICB0aGlzLl9mb2N1c05leHRJbkRpcmVjdGlv
bihTdWdnZXN0aW9uUGlja2VyLk51bWJlck9mVmlzaWJsZUVudHJpZXMpOworICAgICAgICBldmVu
dEhhbmRsZWQgPSB0cnVlOworICAgIH0gZWxzZSBpZiAoa2V5ID09PSAiSG9tZSIpIHsKKyAgICAg
ICAgdGhpcy5fZm9jdXNBdEluZGV4KDApOworICAgICAgICBldmVudEhhbmRsZWQgPSB0cnVlOwor
ICAgIH0gZWxzZSBpZiAoa2V5ID09PSAiRW5kIikgeworICAgICAgICB0aGlzLl9mb2N1c0F0SW5k
ZXgoLTEpOwogICAgICAgICBldmVudEhhbmRsZWQgPSB0cnVlOwogICAgIH0KICAgICBpZiAoZXZl
bnRIYW5kbGVkKQpAQCAtMzA1LDYgKzMxMiwxMSBAQCBTdWdnZXN0aW9uUGlja2VyLnByb3RvdHlw
ZS5faGFuZGxlQm9keUtlCiAgKiBAcGFyYW0geyFFdmVudH0gZXZlbnQKICAqLwogU3VnZ2VzdGlv
blBpY2tlci5wcm90b3R5cGUuX2hhbmRsZUVudHJ5TW91c2VPdmVyID0gZnVuY3Rpb24oZXZlbnQp
IHsKKyAgICBpZiAodGhpcy5faWdub3JlTmV4dE1vdXNlT3ZlckV2ZW50KSB7CisgICAgICAgIHRo
aXMuX2lnbm9yZU5leHRNb3VzZU92ZXJFdmVudCA9IGZhbHNlOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCiAgICAgdmFyIGVudHJ5ID0gZW5jbG9zaW5nTm9kZU9yU2VsZldpdGhDbGFzcyhldmVu
dC50YXJnZXQsIFN1Z2dlc3Rpb25QaWNrZXIuTGlzdEVudHJ5Q2xhc3MpOwogICAgIGlmICghZW50
cnkpCiAgICAgICAgIHJldHVybjsKQEAgLTMxNyw5ICszMjksOCBAQCBTdWdnZXN0aW9uUGlja2Vy
LnByb3RvdHlwZS5faGFuZGxlRW50cnlNCiAgKiBAcGFyYW0geyFFdmVudH0gZXZlbnQKICAqLwog
U3VnZ2VzdGlvblBpY2tlci5wcm90b3R5cGUuX2hhbmRsZU1vdXNlT3V0ID0gZnVuY3Rpb24oZXZl
bnQpIHsKLSAgICBpZiAoIWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5z
KFN1Z2dlc3Rpb25QaWNrZXIuTGlzdEVudHJ5Q2xhc3MpKQorICAgIGlmICghZG9jdW1lbnQuYWN0
aXZlRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoU3VnZ2VzdGlvblBpY2tlci5MaXN0RW50cnlD
bGFzcykgfHwgdGhpcy5faWdub3JlTmV4dE1vdXNlT3ZlckV2ZW50KQogICAgICAgICByZXR1cm47
Ci0gICAgdGhpcy5faXNGb2N1c0J5TW91c2UgPSBmYWxzZTsKICAgICBkb2N1bWVudC5hY3RpdmVF
bGVtZW50LmJsdXIoKTsKICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwogfTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>