<?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>83255</bug_id>
          
          <creation_ts>2012-04-05 00:53:33 -0700</creation_ts>
          <short_desc>[chromium] REGRESSION: Refreshed autofill popup renders garbage</short_desc>
          <delta_ts>2012-04-06 01:01:26 -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>Forms</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="Alexander Pavlov (apavlov)">apavlov</reporter>
          <assigned_to name="Alexander Pavlov (apavlov)">apavlov</assigned_to>
          <cc>inferno</cc>
    
    <cc>isherman</cc>
    
    <cc>tkent</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>596369</commentid>
    <comment_count>0</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2012-04-05 00:53:33 -0700</bug_when>
    <thetext>What steps will reproduce the problem?
1. Enter a very long string into autofillable form field and submit form
2. Repeat process and choose very long value from drop down
3. You may need to focus on new field or effect may become immediately visible (see attached image)

What is the expected result?
- Drop down with value (truncated?)
- Form field filled with value, autofill drop down disappears

What happens instead?
- Drop down stretches across page
- When selected dropdown moves to below the address bar followed by a badly rendered portion of the page.

Upstreaming http://code.google.com/p/chromium/issues/detail?id=118374</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>596375</commentid>
    <comment_count>1</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2012-04-05 00:59:47 -0700</bug_when>
    <thetext>The issue is due to the incorrect layout/painting of a refreshed popup that contains a PopupListBox that does not fit into the screen width. In this case, the WebWidget - PopupContainer - PopupListBox hierarchy is painted incorrectly: the PopupContainer is given a position relative to the containing window, not the WebWidget (through chromeClient-&gt;setWindowRect()), thereby making it paint iself outside of the WebWidget (which results in the garbage), and chromeClient is never notified of the popup relocation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>596459</commentid>
    <comment_count>2</comment_count>
      <attachid>135798</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2012-04-05 03:55:03 -0700</bug_when>
    <thetext>Created attachment 135798
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>596808</commentid>
    <comment_count>3</comment_count>
      <attachid>135798</attachid>
    <who name="Ilya Sherman">isherman</who>
    <bug_when>2012-04-05 12:36:36 -0700</bug_when>
    <thetext>Comment on attachment 135798
Patch

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

I am not a reviewer, but this looks good to me.  Thanks for the fix!

&gt; Source/WebCore/ChangeLog:4
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=83255

nit: Please add a link to the Chromium bug here as well.

&gt; Source/WebCore/ChangeLog:16
&gt; +        (PopupContainer):

nit: Please briefly describe the changes to each file.

&gt; Source/WebCore/platform/chromium/PopupContainer.cpp:414
&gt; +

nit: I would omit this blank line; but if you prefer to keep it, that&apos;s fine too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>597167</commentid>
    <comment_count>4</comment_count>
      <attachid>135798</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-04-05 20:14:23 -0700</bug_when>
    <thetext>Comment on attachment 135798
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +
&gt; +        No new tests, as the popup appearance is not testable in WebKit.

It would be nice if you explain what was wrong and how do you fix it in ChangeLog.

&gt; Source/WebCore/platform/chromium/PopupContainer.cpp:202
&gt; +    // In screen coordinates.
&gt;      return widgetRect;

Renaming widgetRect to widgetRectInScreen might be better.

&gt; Source/WebCore/platform/chromium/PopupContainer.cpp:418
&gt; +    // In window coordinates.
&gt;      IntPoint location = m_frameView-&gt;contentsToWindow(targetControlRect.location());

ditto.  locationInWindow

&gt; Source/WebCore/platform/chromium/PopupContainer.cpp:424
&gt; +    // In screen coordinates.
&gt;      IntRect widgetRect = layoutAndCalculateWidgetRect(targetControlRect.height(), location);

ditto. widgetRectInScreen</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>597244</commentid>
    <comment_count>5</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2012-04-06 00:58:38 -0700</bug_when>
    <thetext>Committed r113418: &lt;http://trac.webkit.org/changeset/113418&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>597245</commentid>
    <comment_count>6</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2012-04-06 01:01:26 -0700</bug_when>
    <thetext>Landed with all the comments addressed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>135798</attachid>
            <date>2012-04-05 03:55:03 -0700</date>
            <delta_ts>2012-04-05 20:14:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-83255-20120405145501.patch</filename>
            <type>text/plain</type>
            <size>4820</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEzMjk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGUyMTllMjU5MzE1YzYy
MTkyM2IzODdiYzY2MGU0ZTgzOGRlZjNjOS4uODg0YmM1ZDJhNjY1YjZiZDA2MjI5OGMwODQ0MDAz
ZDgyMjc5MzNiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEyLTA0LTA1ICBBbGV4
YW5kZXIgUGF2bG92ICA8YXBhdmxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1JFR1JFU1NJ
T05dIFJlZnJlc2hlZCBhdXRvZmlsbCBwb3B1cCByZW5kZXJzIGdhcmJhZ2UKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgzMjU1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBhcyB0aGUg
cG9wdXAgYXBwZWFyYW5jZSBpcyBub3QgdGVzdGFibGUgaW4gV2ViS2l0LgorCisgICAgICAgICog
cGxhdGZvcm0vY2hyb21pdW0vUG9wdXBDb250YWluZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
UG9wdXBDb250YWluZXI6OmxheW91dEFuZENhbGN1bGF0ZVdpZGdldFJlY3QpOgorICAgICAgICAo
V2ViQ29yZTo6UG9wdXBDb250YWluZXI6OnNob3dQb3B1cCk6CisgICAgICAgIChXZWJDb3JlOjpQ
b3B1cENvbnRhaW5lcjo6c2hvd0luUmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpQb3B1cENvbnRh
aW5lcjo6cmVmcmVzaCk6CisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBDb250YWlu
ZXIuaDoKKyAgICAgICAgKFBvcHVwQ29udGFpbmVyKToKKwogMjAxMi0wNC0wNCAgS2VudCBUYW11
cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgQWRkIEphdmFTY3JpcHQgYW5kIENT
UyBjb2RlIGZvciB0aGUgY2FsZW5kYXIgcGlja2VyIGltcGxlbWVudGF0aW9uCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cENvbnRhaW5lci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cENvbnRhaW5lci5jcHAKaW5kZXgg
ZTIzMWI4NTA2MjYxZTBmN2ZjMjRjMDllNWUwNzkwZTEwMjc5ZTBhNC4uNDBmOWQ0MTNkZGJlMTAx
OWMwODljY2Q5M2JhNGEzYTE1M2RjOTVhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vY2hyb21pdW0vUG9wdXBDb250YWluZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2Nocm9taXVtL1BvcHVwQ29udGFpbmVyLmNwcApAQCAtMTk3LDYgKzE5Nyw4IEBAIElu
dFJlY3QgUG9wdXBDb250YWluZXI6OmxheW91dEFuZENhbGN1bGF0ZVdpZGdldFJlY3QoaW50IHRh
cmdldENvbnRyb2xIZWlnaHQsIGNvCiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CisK
KyAgICAvLyBJbiBzY3JlZW4gY29vcmRpbmF0ZXMuCiAgICAgcmV0dXJuIHdpZGdldFJlY3Q7CiB9
CiAKQEAgLTIwNyw3ICsyMDksNyBAQCB2b2lkIFBvcHVwQ29udGFpbmVyOjpzaG93UG9wdXAoRnJh
bWVWaWV3KiB2aWV3KQogCiAgICAgQ2hyb21lQ2xpZW50Q2hyb21pdW0qIGNocm9tZUNsaWVudCA9
IGNocm9tZUNsaWVudENocm9taXVtKCk7CiAgICAgaWYgKGNocm9tZUNsaWVudCkgewotICAgICAg
ICBJbnRSZWN0IHBvcHVwUmVjdCA9IGZyYW1lUmVjdCgpOworICAgICAgICBJbnRSZWN0IHBvcHVw
UmVjdCA9IG1fb3JpZ2luYWxGcmFtZVJlY3Q7CiAgICAgICAgIGNocm9tZUNsaWVudC0+cG9wdXBP
cGVuZWQodGhpcywgbGF5b3V0QW5kQ2FsY3VsYXRlV2lkZ2V0UmVjdChwb3B1cFJlY3QuaGVpZ2h0
KCksIHBvcHVwUmVjdC5sb2NhdGlvbigpKSwgZmFsc2UpOwogICAgICAgICBtX3BvcHVwT3BlbiA9
IHRydWU7CiAgICAgfQpAQCAtNDAwLDI5ICs0MDIsMzYgQEAgdm9pZCBQb3B1cENvbnRhaW5lcjo6
c2hvd0luUmVjdChjb25zdCBJbnRSZWN0JiByLCBGcmFtZVZpZXcqIHYsIGludCBpbmRleCkKICAg
ICBsb2NhdGlvbi5tb3ZlKDAsIHIuaGVpZ2h0KCkpOwogCiAgICAgbV9vcmlnaW5hbEZyYW1lUmVj
dCA9IEludFJlY3QobG9jYXRpb24sIHIuc2l6ZSgpKTsKLSAgICBzZXRGcmFtZVJlY3QobV9vcmln
aW5hbEZyYW1lUmVjdCk7CisKKyAgICAvLyBQb3NpdGlvbiBhdCAoMCwgMCkgc2luY2UgdGhlIGZy
YW1lUmVjdCgpLmxvY2F0aW9uKCkgaXMgcmVsYXRpdmUgdG8gdGhlIHBhcmVudCBXZWJXaWRnZXQu
CisgICAgc2V0RnJhbWVSZWN0KEludFJlY3QoSW50UG9pbnQoKSwgci5zaXplKCkpKTsKICAgICBz
aG93UG9wdXAodik7CiB9CiAKIHZvaWQgUG9wdXBDb250YWluZXI6OnJlZnJlc2goY29uc3QgSW50
UmVjdCYgdGFyZ2V0Q29udHJvbFJlY3QpCiB7CisgICAgbGlzdEJveCgpLT5zZXRCYXNlV2lkdGgo
bWF4KG1fb3JpZ2luYWxGcmFtZVJlY3Qud2lkdGgoKSAtIGtCb3JkZXJTaXplICogMiwgMCkpOwor
CisgICAgbGlzdEJveCgpLT51cGRhdGVGcm9tRWxlbWVudCgpOworCisgICAgLy8gSW4gd2luZG93
IGNvb3JkaW5hdGVzLgogICAgIEludFBvaW50IGxvY2F0aW9uID0gbV9mcmFtZVZpZXctPmNvbnRl
bnRzVG9XaW5kb3codGFyZ2V0Q29udHJvbFJlY3QubG9jYXRpb24oKSk7CisKICAgICAvLyBNb3Zl
IGl0IGJlbG93IHRoZSBzZWxlY3Qgd2lkZ2V0LgogICAgIGxvY2F0aW9uLm1vdmUoMCwgdGFyZ2V0
Q29udHJvbFJlY3QuaGVpZ2h0KCkpOwogCi0gICAgbGlzdEJveCgpLT5zZXRCYXNlV2lkdGgobWF4
KG1fb3JpZ2luYWxGcmFtZVJlY3Qud2lkdGgoKSAtIGtCb3JkZXJTaXplICogMiwgMCkpOwotCi0g
ICAgbGlzdEJveCgpLT51cGRhdGVGcm9tRWxlbWVudCgpOwotICAgIC8vIFN0b3JlIHRoZSBvcmln
aW5hbCBzaXplIHRvIGNoZWNrIGlmIHdlIG5lZWQgdG8gcmVxdWVzdCB0aGUgbG9jYXRpb24uCi0g
ICAgSW50U2l6ZSBvcmlnaW5hbFNpemUgPSBzaXplKCk7CisgICAgLy8gSW4gc2NyZWVuIGNvb3Jk
aW5hdGVzLgogICAgIEludFJlY3Qgd2lkZ2V0UmVjdCA9IGxheW91dEFuZENhbGN1bGF0ZVdpZGdl
dFJlY3QodGFyZ2V0Q29udHJvbFJlY3QuaGVpZ2h0KCksIGxvY2F0aW9uKTsKLSAgICBpZiAob3Jp
Z2luYWxTaXplICE9IHdpZGdldFJlY3Quc2l6ZSgpKSB7Ci0gICAgICAgIENocm9tZUNsaWVudENo
cm9taXVtKiBjaHJvbWVDbGllbnQgPSBjaHJvbWVDbGllbnRDaHJvbWl1bSgpOwotICAgICAgICBp
ZiAoY2hyb21lQ2xpZW50KSB7Ci0gICAgICAgICAgICBJbnRQb2ludCB3aWRnZXRMb2NhdGlvbiA9
IGNocm9tZUNsaWVudC0+c2NyZWVuVG9Sb290Vmlldyh3aWRnZXRSZWN0LmxvY2F0aW9uKCkpOwot
ICAgICAgICAgICAgd2lkZ2V0UmVjdC5zZXRMb2NhdGlvbih3aWRnZXRMb2NhdGlvbik7Ci0gICAg
ICAgICAgICBzZXRGcmFtZVJlY3Qod2lkZ2V0UmVjdCk7Ci0gICAgICAgIH0KKworICAgIC8vIFJl
c2V0IHRoZSBzaXplICh3aGljaCBjYW4gYmUgc2V0IHRvIHRoZSBQb3B1cExpc3RCb3ggc2l6ZSBp
biBsYXlvdXRBbmRHZXRSVExPZmZzZXQoKSwgZXhjZWVkaW5nIHRoZSBhdmFpbGFibGUgd2lkZ2V0
IHJlY3RhbmdsZS4pCisgICAgaWYgKHNpemUoKSAhPSB3aWRnZXRSZWN0LnNpemUoKSkKKyAgICAg
ICAgcmVzaXplKHdpZGdldFJlY3Quc2l6ZSgpKTsKKworICAgIENocm9tZUNsaWVudENocm9taXVt
KiBjaHJvbWVDbGllbnQgPSBjaHJvbWVDbGllbnRDaHJvbWl1bSgpOworICAgIGlmIChjaHJvbWVD
bGllbnQpIHsKKyAgICAgICAgLy8gVXBkYXRlIHRoZSBXZWJXaWRnZXQgbG9jYXRpb24gKHdoaWNo
IGlzIHJlbGF0aXZlIHRvIHRoZSBzY3JlZW4gb3JpZ2luKS4KKyAgICAgICAgaWYgKHdpZGdldFJl
Y3QgIT0gY2hyb21lQ2xpZW50LT53aW5kb3dSZWN0KCkpCisgICAgICAgICAgICBjaHJvbWVDbGll
bnQtPnNldFdpbmRvd1JlY3Qod2lkZ2V0UmVjdCk7CiAgICAgfQogCiAgICAgaW52YWxpZGF0ZSgp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBDb250
YWluZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL1BvcHVwQ29udGFpbmVy
LmgKaW5kZXggZDc3NjY2M2Y0YThhN2U0ZDQyOGM3NGNiN2UwZjc1Y2NiNTRlOGQ3Yi4uNzNkMjcx
NzkyZjBjMDVmZTFkNWQxMDdlMGYyYzI5MDAyYmUyMWU2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBDb250YWluZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cENvbnRhaW5lci5oCkBAIC0xMzgsNyArMTM4LDEz
IEBAIHByaXZhdGU6CiAKICAgICBQb3B1cENvbnRhaW5lclNldHRpbmdzIG1fc2V0dGluZ3M7CiAg
ICAgUG9wdXBUeXBlIG1fcG9wdXBUeXBlOworCisgICAgLy8gVGhpcyBjb250YWlucyB0aGUgImlk
ZWFsIiBkaW1lbnNpb25zIGFuZCBwb3NpdGlvbiBmb3IgdGhlIHBvcHVwCisgICAgLy8gKFBvcHVw
Q29udGFpbmVyJ3MgZnJhbWVSZWN0KCkgbG9jYXRpb24gc2hvdWxkIGFsd2F5cyBiZSAoMCwgMCks
IHNpbmNlCisgICAgLy8gaXQgaXMgcmVuZGVyZWQgaW5zaWRlIChhbmQgcmVsYXRpdmUgdG8pIGEg
V2ViV2lkZ2V0LCB3aGljaCBzaG91bGQgZ2V0CisgICAgLy8gdGhlIGFjdHVhbCBwb3B1cCBwb3Np
dGlvbiB0aHJvdWdoIGNocm9tZUNsaWVudENocm9taXVtKCkpLgogICAgIEludFJlY3QgbV9vcmln
aW5hbEZyYW1lUmVjdDsKKwogICAgIC8vIFdoZXRoZXIgdGhlIHBvcHVwIGlzIGN1cnJlbnRseSBv
cGVuLgogICAgIGJvb2wgbV9wb3B1cE9wZW47CiB9Owo=
</data>
<flag name="review"
          id="140426"
          type_id="1"
          status="+"
          setter="tkent"
    />
          </attachment>
      

    </bug>

</bugzilla>