<?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>26934</bug_id>
          
          <creation_ts>2009-07-02 14:08:28 -0700</creation_ts>
          <short_desc>[Qt] It would be useful to have methods for scrolling QWebElement</short_desc>
          <delta_ts>2009-12-18 06:56:25 -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>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>32668</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P2</priority>
          <bug_severity>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Ligman">joseph.ligman</reporter>
          <assigned_to name="Joseph Ligman">joseph.ligman</assigned_to>
          <cc>hausmann</cc>
    
    <cc>kenneth</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>tonikitoo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>129567</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Ligman">joseph.ligman</who>
    <bug_when>2009-07-02 14:08:28 -0700</bug_when>
    <thetext>It would be useful for ui clients to have a method to scroll the QWebElement when possible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129568</commentid>
    <comment_count>1</comment_count>
      <attachid>32197</attachid>
    <who name="Joseph Ligman">joseph.ligman</who>
    <bug_when>2009-07-02 14:16:58 -0700</bug_when>
    <thetext>Created attachment 32197
Proposed patch, for adding scrolling to QWebElement

I&apos;m not sure what is the correct API, but something like this would be useful for me anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130355</commentid>
    <comment_count>2</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2009-07-07 21:01:50 -0700</bug_when>
    <thetext>@joseph: patch looks ok to me (not a reviewer). some comments:

1) NIT: remove dup code.

+    if (!m_element)
+        return false;
+
+    if (!m_element) 
+        return false;

2) About the API, in my opinion exposing just a *ByPixel method is weak. IMO, patch should add methods for:

*DoScroll(direction) -&gt; where is would scroll &quot;one unit&quot; in the given direction ... e.g. it simulates arrow keypress
* ScrollByPage (direction) -&gt; it simulates a pageUp/Down

as well as the already done *ByPixel.

(...)
+    QVERIFY(div.scrollByPixel(10,0));
+    QVERIFY(div.scrollByPixel(0,10));
+    QVERIFY(div.scrollByPixel(-10,-10));
+    QVERIFY(!div.scrollByPixel(-10,-10));
+    QVERIFY(!p.scrollByPixel(10,10));
(...)

e.g. code above looks like a panning implementation (which is ok), but limits API to this.

3) what about content w/ overflow:hidden like gmail main page. Does your scroll method work ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130381</commentid>
    <comment_count>3</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2009-07-07 23:58:39 -0700</bug_when>
    <thetext>@tonikitoo: I dont like making so many functions, it would be better with an enum, but actually this API should be the same as for QWebFrame etc. I think the function there is just called ScrollBy, but you can have a look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130422</commentid>
    <comment_count>4</comment_count>
    <who name="Joseph Ligman">joseph.ligman</who>
    <bug_when>2009-07-08 07:00:19 -0700</bug_when>
    <thetext>I looked again at the scrolling methods RenderLayer. The options are:
panScrollFromPoint
scrollByRecursively
scrollXOffset
scrollYOffset
scrollToOffset
scrollToXOffset
scrollToYOffset
scrollRectToVisible
scroll: this method takes the granularity enum and is what the patch is using.

It looks like adding scrollToOffset and panScrollFromPoint to WebElement would make sense. Adding the enum to the APi might be difficult to maintain in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>130426</commentid>
    <comment_count>5</comment_count>
    <who name="Joseph Ligman">joseph.ligman</who>
    <bug_when>2009-07-08 07:08:52 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; @tonikitoo: I dont like making so many functions, it would be better with an
&gt; enum, but actually this API should be the same as for QWebFrame etc. I think
&gt; the function there is just called ScrollBy, but you can have a look.

QWebFrame has a scroll(int, int) method. I guess this is the same thing as scrollToOffset.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131310</commentid>
    <comment_count>6</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2009-07-13 07:35:46 -0700</bug_when>
    <thetext>Joe, this looks interesting. Can you explain your use-case a bit?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131314</commentid>
    <comment_count>7</comment_count>
    <who name="Joseph Ligman">joseph.ligman</who>
    <bug_when>2009-07-13 07:53:39 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Joe, this looks interesting. Can you explain your use-case a bit?

Thanks for your comments. This new api provides clients with a method to pan scroll elements with the overflow scroll style set. One live use case can be seen if you navigate to the gmail - create a account page, scroll down to the terms of service div.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131532</commentid>
    <comment_count>8</comment_count>
      <attachid>32197</attachid>
    <who name="Adam Treat">manyoso</who>
    <bug_when>2009-07-14 05:33:29 -0700</bug_when>
    <thetext>Comment on attachment 32197
Proposed patch, for adding scrolling to QWebElement

And how would a client use this exactly?  I&apos;m not convinced that it is necessary.  At Torch we have a client that uses QtWebKit that has automatic panning on a touch screen.  We didn&apos;t need this API to accomplish it.

More than happy to have this if a real use-case can be demonstrated.  r- to get it out of review queue until such use case is understood and because of the concerns with scrollByPixel API from other comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>167231</commentid>
    <comment_count>9</comment_count>
    <who name="Joseph Ligman">joseph.ligman</who>
    <bug_when>2009-11-30 06:51:44 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 32197 [details])
&gt; And how would a client use this exactly?  I&apos;m not convinced that it is
&gt; necessary.  At Torch we have a client that uses QtWebKit that has automatic
&gt; panning on a touch screen.  We didn&apos;t need this API to accomplish it.
&gt; 
&gt; More than happy to have this if a real use-case can be demonstrated.  r- to get
&gt; it out of review queue until such use case is understood and because of the
&gt; concerns with scrollByPixel API from other comments.


This is the element in question:
.content {
    position: absolute;
    top: 50px;
    overflow-x: hidden;
    overflow-y: auto;
    height: 532px;
    width: 360px;
}

Also fails if only one &quot;overflow: auto;&quot; -property is used instead of
-x and -y, no big difference there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>168097</commentid>
    <comment_count>10</comment_count>
      <attachid>44167</attachid>
    <who name="Joseph Ligman">joseph.ligman</who>
    <bug_when>2009-12-02 11:28:08 -0800</bug_when>
    <thetext>Created attachment 44167
Proposed patch, for adding scrolling to QWebElement

Modified scroll API to be the same as QWebFrame. Use case in comment #9</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>168793</commentid>
    <comment_count>11</comment_count>
      <attachid>44167</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2009-12-04 09:23:39 -0800</bug_when>
    <thetext>Comment on attachment 44167
Proposed patch, for adding scrolling to QWebElement


&gt; +    Scrollbar* hsb = layer-&gt;horizontalScrollbar();
&gt; +    Scrollbar* vsb = layer-&gt;verticalScrollbar();
&gt; +    return ( vsb || hsb );

What is scrollbars were disabled via the settings?


&gt; +
&gt; +    if (dx &gt; 0)
&gt; +        scrolled = layer-&gt;scroll(ScrollRight, ScrollByPixel, qAbs(dx));

qAbs doesn&apos;t seem needed in this case

&gt; +    else if (dx &lt; 0)
&gt; +        scrolled = layer-&gt;scroll(ScrollLeft, ScrollByPixel, qAbs(dx));

maybe do scrolled = layer-&gt;scroll((dx &lt; 0) ? ScrollLeft : ScrollRight, ScrollByPixel, qAbs(dx)); ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>168795</commentid>
    <comment_count>12</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2009-12-04 09:24:58 -0800</bug_when>
    <thetext>Our other api&apos;s don&apos;t have isScrollable() methods. Would it be possible to add a contentsSize instead? you can compare it with the geometry().size()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>168963</commentid>
    <comment_count>13</comment_count>
      <attachid>44167</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2009-12-04 15:43:46 -0800</bug_when>
    <thetext>Comment on attachment 44167
Proposed patch, for adding scrolling to QWebElement

Hmm, does this really tell that the element itself is scrollbar or its enclosing layer?

I wonder if it may be a good idea to make it a bit clearer in the API that this isn&apos;t really a feature of the element itself but it&apos;s encoding layer.

This could be reflected in the method name for example.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>170413</commentid>
    <comment_count>14</comment_count>
      <attachid>44612</attachid>
    <who name="Joseph Ligman">joseph.ligman</who>
    <bug_when>2009-12-10 06:46:09 -0800</bug_when>
    <thetext>Created attachment 44612
Proposed patch, for adding scrolling to QWebElement

I removed the methods isScrollable() and contentsSize from the patch. The scroll method informs the client if the QWebElement can scroll and for my use case that is all that is needed. If it&apos;s important to add contentsSize I can propose another patch as well. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173145</commentid>
    <comment_count>15</comment_count>
    <who name="Joseph Ligman">joseph.ligman</who>
    <bug_when>2009-12-18 06:56:25 -0800</bug_when>
    <thetext>This general idea of this use case is resolved in https://bugs.webkit.org/show_bug.cgi?id=32668

*** This bug has been marked as a duplicate of bug 32668 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32197</attachid>
            <date>2009-07-02 14:16:58 -0700</date>
            <delta_ts>2009-12-02 11:28:08 -0800</delta_ts>
            <desc>Proposed patch, for adding scrolling to QWebElement</desc>
            <filename>bug26934.patch</filename>
            <type>text/plain</type>
            <size>5656</size>
            <attacher name="Joseph Ligman">joseph.ligman</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNDU0ODUpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMDktMDctMDIgIEpvZSBMaWdtYW4gIDxqb3NlcGgubGln
bWFuQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBOZXcgbWV0aG9kcyBmb3Igc2Nyb2xsaW5nIFFXZWJFbGVtZW50CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjkzNAorCisgICAgICAgIEFk
ZGVkIG5ldyBwdWJsaWMgbWV0aG9kcyBRV2ViRWxlbWVudDo6aXNTY3JvbGxhYmxlKCkgYW5kIFFX
ZWJFbGVtZW50OjpzY3JvbGxCeVBpeGVsKCkKKyAgICAgICAgQWRkZWQgYXV0byB0ZXN0CisKKyAg
ICAgICAgKiBBcGkvcXdlYmVsZW1lbnQuY3BwOgorICAgICAgICAoUVdlYkVsZW1lbnQ6OmlzU2Ny
b2xsYWJsZSk6CisgICAgICAgIChRV2ViRWxlbWVudDo6c2Nyb2xsQnlQaXhlbCk6CisgICAgICAg
ICogQXBpL3F3ZWJlbGVtZW50Lmg6CisgICAgICAgICogdGVzdHMvcXdlYmVsZW1lbnQvdHN0X3F3
ZWJlbGVtZW50LmNwcDoKKyAgICAgICAgKHRzdF9RV2ViRWxlbWVudDo6b3ZlcmZsb3dTY3JvbGxp
bmcpOgorCiAyMDA5LTA3LTAyICBTaW1vbiBIYXVzbWFubiAgPHNpbW9uLmhhdXNtYW5uQG5va2lh
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBcml5YSBIaWRheWF0LgpJbmRleDogV2ViS2l0
L3F0L0FwaS9xd2ViZWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0FwaS9xd2Vi
ZWxlbWVudC5jcHAJKHJldmlzaW9uIDQ1NDg1KQorKysgV2ViS2l0L3F0L0FwaS9xd2ViZWxlbWVu
dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQyMiw2ICs0MjIsNjUgQEAgUVJlY3QgUVdlYkVsZW1l
bnQ6Omdlb21ldHJ5KCkgY29uc3QKICAgICByZXR1cm4gbV9lbGVtZW50LT5nZXRSZWN0KCk7CiB9
CiAKKworLyohCisgICAgUmV0dXJucyB0cnVlIGlmIHRoZSBlbGVtZW50IGlzIHNjcm9sbGFibGUu
CisqLworYm9vbCBRV2ViRWxlbWVudDo6aXNTY3JvbGxhYmxlKCkgY29uc3QKK3sKKyAgICBpZiAo
IW1fZWxlbWVudCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFtX2VsZW1lbnQp
IAorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0g
bV9lbGVtZW50LT5yZW5kZXJlcigpOworICAgIGlmICghcmVuZGVyZXIpIAorICAgICAgICByZXR1
cm4gZmFsc2U7CisKKyAgICBSZW5kZXJMYXllciogbGF5ZXIgPSByZW5kZXJlci0+ZW5jbG9zaW5n
TGF5ZXIoKTsKKyAgICBpZiAoIWxheWVyKSAKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAg
U2Nyb2xsYmFyKiBoc2IgPSBsYXllci0+aG9yaXpvbnRhbFNjcm9sbGJhcigpOworICAgIFNjcm9s
bGJhciogdnNiID0gbGF5ZXItPnZlcnRpY2FsU2Nyb2xsYmFyKCk7CisgICAgcmV0dXJuICggdnNi
IHx8IGhzYiApOworfQorCisvKiEKKyAgICBJZiB0aGUgZWxlbWVudCBpcyBzY3JvbGxhYmxlLCBz
Y3JvbGxzIHRoZSBlbGVtZW50IFxhIGR4IHBpeGVscyB0byB0aGUgCisgICAgcmlnaHQgYW5kIFxh
IGR5IHBpeGVscyBkb3dud2FyZC4gQm90aCBcYSBkeCBhbmQgXGEgZHkgbWF5IGJlIG5lZ2F0aXZl
LgorCisgICAgUmV0dXJucyB0cnVlIGlmIHRoZSBlbGVtZW50IGlzIHNjcm9sbGVkCisqLworYm9v
bCBRV2ViRWxlbWVudDo6c2Nyb2xsQnlQaXhlbChpbnQgZHgsIGludCBkeSkKK3sKKyAgICBib29s
IHNjcm9sbGVkID0gZmFsc2U7CisKKyAgICBpZiAoIW1fZWxlbWVudCkKKyAgICAgICAgcmV0dXJu
IHNjcm9sbGVkOworCisgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IG1fZWxlbWVudC0+cmVu
ZGVyZXIoKTsKKyAgICBpZiAoIXJlbmRlcmVyKSAKKyAgICAgICAgcmV0dXJuIHNjcm9sbGVkOwor
CisgICAgUmVuZGVyTGF5ZXIqIGxheWVyID0gcmVuZGVyZXItPmVuY2xvc2luZ0xheWVyKCk7Cisg
ICAgaWYgKCFsYXllcikgCisgICAgICAgIHJldHVybiBzY3JvbGxlZDsKKworICAgIGlmIChkeCA+
IDApCisgICAgICAgIHNjcm9sbGVkID0gbGF5ZXItPnNjcm9sbChTY3JvbGxSaWdodCwgU2Nyb2xs
QnlQaXhlbCwgcUFicyhkeCkpOworICAgIGVsc2UgaWYgKGR4IDwgMCkKKyAgICAgICAgc2Nyb2xs
ZWQgPSBsYXllci0+c2Nyb2xsKFNjcm9sbExlZnQsIFNjcm9sbEJ5UGl4ZWwsIHFBYnMoZHgpKTsK
KworICAgIGlmIChkeSA+IDApCisgICAgICAgIHNjcm9sbGVkID0gbGF5ZXItPnNjcm9sbChTY3Jv
bGxEb3duLCBTY3JvbGxCeVBpeGVsLCBxQWJzKGR5KSk7CisgICAgZWxzZSBpZiAoZHkgPCAwKQor
ICAgICAgICBzY3JvbGxlZCA9IGxheWVyLT5zY3JvbGwoU2Nyb2xsVXAsIFNjcm9sbEJ5UGl4ZWws
IHFBYnMoZHkpKTsKKworICAgIHJldHVybiBzY3JvbGxlZDsKK30KKwogLyohCiAgICAgUmV0dXJu
cyB0aGUgdGFnIG5hbWUgb2YgdGhpcyBlbGVtZW50LgogKi8KSW5kZXg6IFdlYktpdC9xdC9BcGkv
cXdlYmVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvQXBpL3F3ZWJlbGVtZW50LmgJ
KHJldmlzaW9uIDQ1NDg1KQorKysgV2ViS2l0L3F0L0FwaS9xd2ViZWxlbWVudC5oCSh3b3JraW5n
IGNvcHkpCkBAIC03Nyw2ICs3Nyw5IEBAIHB1YmxpYzoKIAogICAgIFFSZWN0IGdlb21ldHJ5KCkg
Y29uc3Q7CiAKKyAgICBib29sIGlzU2Nyb2xsYWJsZSgpIGNvbnN0OworICAgIGJvb2wgc2Nyb2xs
QnlQaXhlbChpbnQsIGludCk7CisKICAgICBRU3RyaW5nIHRhZ05hbWUoKSBjb25zdDsKICAgICBR
U3RyaW5nIHByZWZpeCgpIGNvbnN0OwogICAgIFFTdHJpbmcgbG9jYWxOYW1lKCkgY29uc3Q7Cklu
ZGV4OiBXZWJLaXQvcXQvdGVzdHMvcXdlYmVsZW1lbnQvdHN0X3F3ZWJlbGVtZW50LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJLaXQvcXQvdGVzdHMvcXdlYmVsZW1lbnQvdHN0X3F3ZWJlbGVtZW50LmNw
cAkocmV2aXNpb24gNDU0ODUpCisrKyBXZWJLaXQvcXQvdGVzdHMvcXdlYmVsZW1lbnQvdHN0X3F3
ZWJlbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTAsNiArOTAsNyBAQCBwcml2YXRlIHNs
b3RzOgogICAgIHZvaWQgbnVsbFNlbGVjdCgpOwogICAgIHZvaWQgZmlyc3RDaGlsZE5leHRTaWJs
aW5nKCk7CiAgICAgdm9pZCBsYXN0Q2hpbGRQcmV2aW91c1NpYmxpbmcoKTsKKyAgICB2b2lkIG92
ZXJmbG93U2Nyb2xsaW5nKCk7CiAKIHByaXZhdGU6CiAgICAgUVdlYlZpZXcqIG1fdmlldzsKQEAg
LTg3OCw1ICs4NzksNDQgQEAgdm9pZCB0c3RfUVdlYkVsZW1lbnQ6Omxhc3RDaGlsZFByZXZpb3Vz
UwogICAgIFFWRVJJRlkocC5wcmV2aW91c1NpYmxpbmcoKS5pc051bGwoKSk7CiB9CiAKK3ZvaWQg
dHN0X1FXZWJFbGVtZW50OjpvdmVyZmxvd1Njcm9sbGluZygpCit7CisgICAgUVN0cmluZyBodG1s
ID0gIjxodG1sPiIKKyAgICAiPGhlYWQ+IgorICAgICI8c3R5bGUgdHlwZT0ndGV4dC9jc3MnPiIK
KyAgICAiZGl2IiAKKyAgICAieyIKKyAgICAid2lkdGg6NTBweDsiCisgICAgImhlaWdodDo1MHB4
OyIKKyAgICAib3ZlcmZsb3c6IHNjcm9sbCIKKyAgICAifSIKKyAgICAiPC9zdHlsZT4iCisgICAg
IjwvaGVhZD4iCisgICAgIjxib2R5PiIKKyAgICAiPGRpdj4iCisgICAgIllvdSBjYW4gdXNlIHRo
ZSBvdmVyZmxvdyBwcm9wZXJ0eSB3aGVuIHlvdSB3YW50IHRvIGhhdmUgYmV0dGVyIGNvbnRyb2wg
b2YgdGhlIGxheW91dC4gVHJ5IHRvIGNoYW5nZSB0aGUgb3ZlcmZsb3ciICJwcm9wZXJ0eSB0bzog
dmlzaWJsZSwgaGlkZGVuLCBhdXRvLCBvciBpbmhlcml0IGFuZCBzZWUgd2hhdCBoYXBwZW5zLiIK
KyAgICAiWW91IGNhbiB1c2UgdGhlIG92ZXJmbG93IHByb3BlcnR5IHdoZW4geW91IHdhbnQgdG8g
aGF2ZSBiZXR0ZXIgY29udHJvbCBvZiB0aGUgbGF5b3V0LiBUcnkgdG8gY2hhbmdlIHRoZSBvdmVy
ZmxvdyIgInByb3BlcnR5IHRvOiB2aXNpYmxlLCBoaWRkZW4sIGF1dG8sIG9yIGluaGVyaXQgYW5k
IHNlZSB3aGF0IGhhcHBlbnMuIgorICAgICJZb3UgY2FuIHVzZSB0aGUgb3ZlcmZsb3cgcHJvcGVy
dHkgd2hlbiB5b3Ugd2FudCB0byBoYXZlIGJldHRlciBjb250cm9sIG9mIHRoZSBsYXlvdXQuIFRy
eSB0byBjaGFuZ2UgdGhlIG92ZXJmbG93IiAicHJvcGVydHkgdG86IHZpc2libGUsIGhpZGRlbiwg
YXV0bywgb3IgaW5oZXJpdCBhbmQgc2VlIHdoYXQgaGFwcGVucy4iCisgICAgIllvdSBjYW4gdXNl
IHRoZSBvdmVyZmxvdyBwcm9wZXJ0eSB3aGVuIHlvdSB3YW50IHRvIGhhdmUgYmV0dGVyIGNvbnRy
b2wgb2YgdGhlIGxheW91dC4gVHJ5IHRvIGNoYW5nZSB0aGUgb3ZlcmZsb3ciICJwcm9wZXJ0eSB0
bzogdmlzaWJsZSwgaGlkZGVuLCBhdXRvLCBvciBpbmhlcml0IGFuZCBzZWUgd2hhdCBoYXBwZW5z
Li4iCisgICAgIllvdSBjYW4gdXNlIHRoZSBvdmVyZmxvdyBwcm9wZXJ0eSB3aGVuIHlvdSB3YW50
IHRvIGhhdmUgYmV0dGVyIGNvbnRyb2wgb2YgdGhlIGxheW91dC4gVHJ5IHRvIGNoYW5nZSB0aGUg
b3ZlcmZsb3ciICJwcm9wZXJ0eSB0bzogdmlzaWJsZSwgaGlkZGVuLCBhdXRvLCBvciBpbmhlcml0
IGFuZCBzZWUgd2hhdCBoYXBwZW5zLiIKKyAgICAiWW91IGNhbiB1c2UgdGhlIG92ZXJmbG93IHBy
b3BlcnR5IHdoZW4geW91IHdhbnQgdG8gaGF2ZSBiZXR0ZXIgY29udHJvbCBvZiB0aGUgbGF5b3V0
LiBUcnkgdG8gY2hhbmdlIHRoZSBvdmVyZmxvdyIgInByb3BlcnR5IHRvOiB2aXNpYmxlLCBoaWRk
ZW4sIGF1dG8sIG9yIGluaGVyaXQgYW5kIHNlZSB3aGF0IGhhcHBlbnMuIgorICAgICI8L2Rpdj4i
CisgICAgIjxwPiIKKyAgICAid2hhdCBhYm91dCBwIgorICAgICI8L3A+IgorICAgICI8L2JvZHk+
IgorICAgICI8L2h0bWw+IjsKKyAgICBtX21haW5GcmFtZS0+c2V0SHRtbChodG1sKTsKKyAgICBR
V2ViRWxlbWVudCBkaXYgPSBtX21haW5GcmFtZS0+ZG9jdW1lbnRFbGVtZW50KCkuZmluZEZpcnN0
KCJkaXYiKTsKKyAgICBRV2ViRWxlbWVudCBwID0gbV9tYWluRnJhbWUtPmRvY3VtZW50RWxlbWVu
dCgpLmZpbmRGaXJzdCgicCIpOworICAgIFFWRVJJRlkoZGl2LmlzU2Nyb2xsYWJsZSgpKTsKKyAg
ICBRVkVSSUZZKCFwLmlzU2Nyb2xsYWJsZSgpKTsKKyAgICBRVkVSSUZZKGRpdi5zY3JvbGxCeVBp
eGVsKDEwLDApKTsKKyAgICBRVkVSSUZZKGRpdi5zY3JvbGxCeVBpeGVsKDAsMTApKTsKKyAgICBR
VkVSSUZZKGRpdi5zY3JvbGxCeVBpeGVsKC0xMCwtMTApKTsKKyAgICBRVkVSSUZZKCFkaXYuc2Ny
b2xsQnlQaXhlbCgtMTAsLTEwKSk7CisgICAgUVZFUklGWSghcC5zY3JvbGxCeVBpeGVsKDEwLDEw
KSk7Cit9CisKIFFURVNUX01BSU4odHN0X1FXZWJFbGVtZW50KQogI2luY2x1ZGUgInRzdF9xd2Vi
ZWxlbWVudC5tb2MiCg==
</data>
<flag name="review"
          id="16688"
          type_id="1"
          status="-"
          setter="manyoso"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>44167</attachid>
            <date>2009-12-02 11:28:08 -0800</date>
            <delta_ts>2009-12-04 15:43:46 -0800</delta_ts>
            <desc>Proposed patch, for adding scrolling to QWebElement</desc>
            <filename>bug26934.patch</filename>
            <type>text/plain</type>
            <size>5507</size>
            <attacher name="Joseph Ligman">joseph.ligman</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNTE2MDApCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMDktMTItMDIgIEpvZSBMaWdtYW4gIDxqb3NlcGgubGln
bWFuQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBOZXcgbWV0aG9kIGZvciBzY3JvbGxpbmcgUVdlYkVsZW1lbnQKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI2OTM0CisKKyAgICAgICAgQWRk
ZWQgbmV3IHB1YmxpYyBtZXRob2RzIFFXZWJFbGVtZW50Ojppc1Njcm9sbGFibGUoKSBhbmQgUVdl
YkVsZW1lbnQ6OnNjcm9sbChpbnQsaW50KQorICAgICAgICBBZGRlZCBhdXRvIHRlc3QKKworICAg
ICAgICAqIEFwaS9xd2ViZWxlbWVudC5jcHA6CisgICAgICAgIChRV2ViRWxlbWVudDo6aXNTY3Jv
bGxhYmxlKToKKyAgICAgICAgKFFXZWJFbGVtZW50OjpzY3JvbGwpOgorICAgICAgICAqIEFwaS9x
d2ViZWxlbWVudC5oOgorICAgICAgICAqIHRlc3RzL3F3ZWJlbGVtZW50L3RzdF9xd2ViZWxlbWVu
dC5jcHA6CisgICAgICAgICh0c3RfUVdlYkVsZW1lbnQ6Om92ZXJmbG93U2Nyb2xsaW5nKToKKwog
MjAwOS0xMi0wMSAgTmlrb2xhcyBaaW1tZXJtYW5uICA8bnppbW1lcm1hbm5AcmltLmNvbT4KIAog
ICAgICAgICBOb3QgcmV2aWV3ZWQuIFRyeSB0byBmaXggUXQgYnVpbGQuCkluZGV4OiBXZWJLaXQv
cXQvQXBpL3F3ZWJlbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvQXBpL3F3ZWJl
bGVtZW50LmNwcAkocmV2aXNpb24gNTE1OTkpCisrKyBXZWJLaXQvcXQvQXBpL3F3ZWJlbGVtZW50
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTIyLDYgKzUyMiw2MSBAQCBRUmVjdCBRV2ViRWxlbWVu
dDo6Z2VvbWV0cnkoKSBjb25zdAogfQogCiAvKiEKKyAgICBSZXR1cm5zIHRydWUgaWYgdGhlIGVs
ZW1lbnQgaXMgc2Nyb2xsYWJsZS4KKyovCitib29sIFFXZWJFbGVtZW50Ojppc1Njcm9sbGFibGUo
KSBjb25zdAoreworICAgIGlmICghbV9lbGVtZW50KQorICAgICAgICByZXR1cm4gZmFsc2U7CisK
KyAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gbV9lbGVtZW50LT5yZW5kZXJlcigpOworICAg
IGlmICghcmVuZGVyZXIpIAorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBSZW5kZXJMYXll
ciogbGF5ZXIgPSByZW5kZXJlci0+ZW5jbG9zaW5nTGF5ZXIoKTsKKyAgICBpZiAoIWxheWVyKSAK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgU2Nyb2xsYmFyKiBoc2IgPSBsYXllci0+aG9y
aXpvbnRhbFNjcm9sbGJhcigpOworICAgIFNjcm9sbGJhciogdnNiID0gbGF5ZXItPnZlcnRpY2Fs
U2Nyb2xsYmFyKCk7CisgICAgcmV0dXJuICggdnNiIHx8IGhzYiApOworfQorCisvKiEKKyAgICBJ
ZiB0aGUgZWxlbWVudCBpcyBzY3JvbGxhYmxlLCBzY3JvbGxzIHRoZSBlbGVtZW50IFxhIGR4IHBp
eGVscyB0byB0aGUgCisgICAgcmlnaHQgYW5kIFxhIGR5IHBpeGVscyBkb3dud2FyZC4gQm90aCBc
YSBkeCBhbmQgXGEgZHkgbWF5IGJlIG5lZ2F0aXZlLgorCisgICAgUmV0dXJucyB0cnVlIGlmIHRo
ZSBlbGVtZW50IGlzIHNjcm9sbGVkCisqLworYm9vbCBRV2ViRWxlbWVudDo6c2Nyb2xsKGludCBk
eCwgaW50IGR5KQoreworICAgIGJvb2wgc2Nyb2xsZWQgPSBmYWxzZTsKKworICAgIGlmICghbV9l
bGVtZW50KQorICAgICAgICByZXR1cm4gc2Nyb2xsZWQ7CisKKyAgICBSZW5kZXJPYmplY3QqIHJl
bmRlcmVyID0gbV9lbGVtZW50LT5yZW5kZXJlcigpOworICAgIGlmICghcmVuZGVyZXIpIAorICAg
ICAgICByZXR1cm4gc2Nyb2xsZWQ7CisKKyAgICBSZW5kZXJMYXllciogbGF5ZXIgPSByZW5kZXJl
ci0+ZW5jbG9zaW5nTGF5ZXIoKTsKKyAgICBpZiAoIWxheWVyKSAKKyAgICAgICAgcmV0dXJuIHNj
cm9sbGVkOworCisgICAgaWYgKGR4ID4gMCkKKyAgICAgICAgc2Nyb2xsZWQgPSBsYXllci0+c2Ny
b2xsKFNjcm9sbFJpZ2h0LCBTY3JvbGxCeVBpeGVsLCBxQWJzKGR4KSk7CisgICAgZWxzZSBpZiAo
ZHggPCAwKQorICAgICAgICBzY3JvbGxlZCA9IGxheWVyLT5zY3JvbGwoU2Nyb2xsTGVmdCwgU2Ny
b2xsQnlQaXhlbCwgcUFicyhkeCkpOworCisgICAgaWYgKGR5ID4gMCkKKyAgICAgICAgc2Nyb2xs
ZWQgPSBsYXllci0+c2Nyb2xsKFNjcm9sbERvd24sIFNjcm9sbEJ5UGl4ZWwsIHFBYnMoZHkpKTsK
KyAgICBlbHNlIGlmIChkeSA8IDApCisgICAgICAgIHNjcm9sbGVkID0gbGF5ZXItPnNjcm9sbChT
Y3JvbGxVcCwgU2Nyb2xsQnlQaXhlbCwgcUFicyhkeSkpOworCisgICAgcmV0dXJuIHNjcm9sbGVk
OworfQorCisvKiEKICAgICBSZXR1cm5zIHRoZSB0YWcgbmFtZSBvZiB0aGlzIGVsZW1lbnQuCiAK
ICAgICBcc2EgZ2VvbWV0cnkoKQpJbmRleDogV2ViS2l0L3F0L0FwaS9xd2ViZWxlbWVudC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYktpdC9xdC9BcGkvcXdlYmVsZW1lbnQuaAkocmV2aXNpb24gNTE1OTkp
CisrKyBXZWJLaXQvcXQvQXBpL3F3ZWJlbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTg2LDYg
Kzg2LDkgQEAgcHVibGljOgogCiAgICAgUVJlY3QgZ2VvbWV0cnkoKSBjb25zdDsKIAorICAgIGJv
b2wgaXNTY3JvbGxhYmxlKCkgY29uc3Q7CisgICAgYm9vbCBzY3JvbGwoaW50LCBpbnQpOworCiAg
ICAgUVN0cmluZyB0YWdOYW1lKCkgY29uc3Q7CiAgICAgUVN0cmluZyBwcmVmaXgoKSBjb25zdDsK
ICAgICBRU3RyaW5nIGxvY2FsTmFtZSgpIGNvbnN0OwpJbmRleDogV2ViS2l0L3F0L3Rlc3RzL3F3
ZWJlbGVtZW50L3RzdF9xd2ViZWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L3Rl
c3RzL3F3ZWJlbGVtZW50L3RzdF9xd2ViZWxlbWVudC5jcHAJKHJldmlzaW9uIDUxNjAwKQorKysg
V2ViS2l0L3F0L3Rlc3RzL3F3ZWJlbGVtZW50L3RzdF9xd2ViZWxlbWVudC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTk0LDYgKzk0LDcgQEAgcHJpdmF0ZSBzbG90czoKICAgICB2b2lkIGxhc3RDaGls
ZFByZXZpb3VzU2libGluZygpOwogICAgIHZvaWQgaGFzU2V0Rm9jdXMoKTsKICAgICB2b2lkIHJl
bmRlcigpOworICAgIHZvaWQgb3ZlcmZsb3dTY3JvbGxpbmcoKTsKIAogcHJpdmF0ZToKICAgICBR
V2ViVmlldyogbV92aWV3OwpAQCAtMTAzNiw2ICsxMDM3LDQ0IEBAIHZvaWQgdHN0X1FXZWJFbGVt
ZW50OjpyZW5kZXIoKQogCiAgICAgUVZFUklGWShpbWFnZTMgPT0gaW1hZ2U0KTsKIH0KK3ZvaWQg
dHN0X1FXZWJFbGVtZW50OjpvdmVyZmxvd1Njcm9sbGluZygpCit7CisgICAgUVN0cmluZyBodG1s
ID0gIjxodG1sPiIKKyAgICAiPGhlYWQ+IgorICAgICI8c3R5bGUgdHlwZT0ndGV4dC9jc3MnPiIK
KyAgICAiZGl2IiAKKyAgICAieyIKKyAgICAid2lkdGg6NTBweDsiCisgICAgImhlaWdodDo1MHB4
OyIKKyAgICAib3ZlcmZsb3c6IHNjcm9sbCIKKyAgICAifSIKKyAgICAiPC9zdHlsZT4iCisgICAg
IjwvaGVhZD4iCisgICAgIjxib2R5PiIKKyAgICAiPGRpdj4iCisgICAgIllvdSBjYW4gdXNlIHRo
ZSBvdmVyZmxvdyBwcm9wZXJ0eSB3aGVuIHlvdSB3YW50IHRvIGhhdmUgYmV0dGVyIGNvbnRyb2wg
b2YgdGhlIGxheW91dC4gVHJ5IHRvIGNoYW5nZSB0aGUgb3ZlcmZsb3ciICJwcm9wZXJ0eSB0bzog
dmlzaWJsZSwgaGlkZGVuLCBhdXRvLCBvciBpbmhlcml0IGFuZCBzZWUgd2hhdCBoYXBwZW5zLiIK
KyAgICAiWW91IGNhbiB1c2UgdGhlIG92ZXJmbG93IHByb3BlcnR5IHdoZW4geW91IHdhbnQgdG8g
aGF2ZSBiZXR0ZXIgY29udHJvbCBvZiB0aGUgbGF5b3V0LiBUcnkgdG8gY2hhbmdlIHRoZSBvdmVy
ZmxvdyIgInByb3BlcnR5IHRvOiB2aXNpYmxlLCBoaWRkZW4sIGF1dG8sIG9yIGluaGVyaXQgYW5k
IHNlZSB3aGF0IGhhcHBlbnMuIgorICAgICJZb3UgY2FuIHVzZSB0aGUgb3ZlcmZsb3cgcHJvcGVy
dHkgd2hlbiB5b3Ugd2FudCB0byBoYXZlIGJldHRlciBjb250cm9sIG9mIHRoZSBsYXlvdXQuIFRy
eSB0byBjaGFuZ2UgdGhlIG92ZXJmbG93IiAicHJvcGVydHkgdG86IHZpc2libGUsIGhpZGRlbiwg
YXV0bywgb3IgaW5oZXJpdCBhbmQgc2VlIHdoYXQgaGFwcGVucy4iCisgICAgIllvdSBjYW4gdXNl
IHRoZSBvdmVyZmxvdyBwcm9wZXJ0eSB3aGVuIHlvdSB3YW50IHRvIGhhdmUgYmV0dGVyIGNvbnRy
b2wgb2YgdGhlIGxheW91dC4gVHJ5IHRvIGNoYW5nZSB0aGUgb3ZlcmZsb3ciICJwcm9wZXJ0eSB0
bzogdmlzaWJsZSwgaGlkZGVuLCBhdXRvLCBvciBpbmhlcml0IGFuZCBzZWUgd2hhdCBoYXBwZW5z
Li4iCisgICAgIllvdSBjYW4gdXNlIHRoZSBvdmVyZmxvdyBwcm9wZXJ0eSB3aGVuIHlvdSB3YW50
IHRvIGhhdmUgYmV0dGVyIGNvbnRyb2wgb2YgdGhlIGxheW91dC4gVHJ5IHRvIGNoYW5nZSB0aGUg
b3ZlcmZsb3ciICJwcm9wZXJ0eSB0bzogdmlzaWJsZSwgaGlkZGVuLCBhdXRvLCBvciBpbmhlcml0
IGFuZCBzZWUgd2hhdCBoYXBwZW5zLiIKKyAgICAiWW91IGNhbiB1c2UgdGhlIG92ZXJmbG93IHBy
b3BlcnR5IHdoZW4geW91IHdhbnQgdG8gaGF2ZSBiZXR0ZXIgY29udHJvbCBvZiB0aGUgbGF5b3V0
LiBUcnkgdG8gY2hhbmdlIHRoZSBvdmVyZmxvdyIgInByb3BlcnR5IHRvOiB2aXNpYmxlLCBoaWRk
ZW4sIGF1dG8sIG9yIGluaGVyaXQgYW5kIHNlZSB3aGF0IGhhcHBlbnMuIgorICAgICI8L2Rpdj4i
CisgICAgIjxwPiIKKyAgICAid2hhdCBhYm91dCBwIgorICAgICI8L3A+IgorICAgICI8L2JvZHk+
IgorICAgICI8L2h0bWw+IjsKKyAgICBtX21haW5GcmFtZS0+c2V0SHRtbChodG1sKTsKKyAgICBR
V2ViRWxlbWVudCBkaXYgPSBtX21haW5GcmFtZS0+ZG9jdW1lbnRFbGVtZW50KCkuZmluZEZpcnN0
KCJkaXYiKTsKKyAgICBRV2ViRWxlbWVudCBwID0gbV9tYWluRnJhbWUtPmRvY3VtZW50RWxlbWVu
dCgpLmZpbmRGaXJzdCgicCIpOworICAgIFFWRVJJRlkoZGl2LmlzU2Nyb2xsYWJsZSgpKTsKKyAg
ICBRVkVSSUZZKCFwLmlzU2Nyb2xsYWJsZSgpKTsKKyAgICBRVkVSSUZZKGRpdi5zY3JvbGwoMTAs
MCkpOworICAgIFFWRVJJRlkoZGl2LnNjcm9sbCgwLDEwKSk7CisgICAgUVZFUklGWShkaXYuc2Ny
b2xsKC0xMCwtMTApKTsKKyAgICBRVkVSSUZZKCFkaXYuc2Nyb2xsKC0xMCwtMTApKTsKKyAgICBR
VkVSSUZZKCFwLnNjcm9sbCgxMCwxMCkpOworfQogCiBRVEVTVF9NQUlOKHRzdF9RV2ViRWxlbWVu
dCkKICNpbmNsdWRlICJ0c3RfcXdlYmVsZW1lbnQubW9jIgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>44612</attachid>
            <date>2009-12-10 06:46:09 -0800</date>
            <delta_ts>2009-12-17 09:17:31 -0800</delta_ts>
            <desc>Proposed patch, for adding scrolling to QWebElement</desc>
            <filename>bug26934c.patch</filename>
            <type>text/plain</type>
            <size>4950</size>
            <attacher name="Joseph Ligman">joseph.ligman</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNTE5NDcpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMTItMTAgIEpvZSBMaWdtYW4gIDxqb3NlcGgubGln
bWFuQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBbUXRdIFBhdGNoIHRvIGFkZCBzY3JvbGxpbmcgdG8gUVdlYkVsZW1lbnQuIEFkZGlu
ZyBzY3JvbGxpbmcgdG8gdGhlIFFXZWJFbGVtZW50IEFQSQorICAgICAgICBpcyBuZWVkZWQgZm9y
IGFwcGxpY2F0aW9ucyB0aGF0IGluZGVwZW5kZW50bHkgc2Nyb2xsIGVsZW1lbnRzIHdpdGggc3R5
bGUgb3ZlcmZsb3c6IHNjcm9sbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTI2OTM0CisKKyAgICAgICAgKiBBcGkvcXdlYmVsZW1lbnQuY3BwOgorICAg
ICAgICAoUVdlYkVsZW1lbnQ6OnNjcm9sbCk6CisgICAgICAgICogQXBpL3F3ZWJlbGVtZW50Lmg6
CisgICAgICAgICogdGVzdHMvcXdlYmVsZW1lbnQvdHN0X3F3ZWJlbGVtZW50LmNwcDoKKyAgICAg
ICAgKHRzdF9RV2ViRWxlbWVudDo6b3ZlcmZsb3dTY3JvbGxpbmcpOgorCiAyMDA5LTEyLTA3ICBC
ZW5qYW1pbiBQb3VsYWluICA8YmVuamFtaW4ucG91bGFpbkBub2tpYS5jb20+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4uCkluZGV4OiBXZWJLaXQvcXQv
QXBpL3F3ZWJlbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvQXBpL3F3ZWJlbGVt
ZW50LmNwcAkocmV2aXNpb24gNTE5NDcpCisrKyBXZWJLaXQvcXQvQXBpL3F3ZWJlbGVtZW50LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNTIyLDYgKzUyMiw0MiBAQCBRUmVjdCBRV2ViRWxlbWVudDo6
Z2VvbWV0cnkoKSBjb25zdAogfQogCiAvKiEKKyAgICBJZiB0aGUgZWxlbWVudCBpcyBzY3JvbGxh
YmxlLCBzY3JvbGxzIHRoZSBlbGVtZW50IFxhIGR4IHBpeGVscyB0byB0aGUgCisgICAgcmlnaHQg
YW5kIFxhIGR5IHBpeGVscyBkb3dud2FyZC4gQm90aCBcYSBkeCBhbmQgXGEgZHkgbWF5IGJlIG5l
Z2F0aXZlLgorCisgICAgXHNpbmNlIDQuNworCisgICAgUmV0dXJucyB0cnVlIGlmIHRoZSBlbGVt
ZW50IGlzIHNjcm9sbGVkCisqLworYm9vbCBRV2ViRWxlbWVudDo6c2Nyb2xsKGludCBkeCwgaW50
IGR5KQoreworICAgIGJvb2wgc2Nyb2xsZWQgPSBmYWxzZTsKKworICAgIGlmICghbV9lbGVtZW50
KQorICAgICAgICByZXR1cm4gc2Nyb2xsZWQ7CisKKyAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVy
ID0gbV9lbGVtZW50LT5yZW5kZXJlcigpOworICAgIGlmICghcmVuZGVyZXIpCisgICAgICAgIHJl
dHVybiBzY3JvbGxlZDsKKworICAgIFJlbmRlckxheWVyKiByZW5kZXJMYXllciA9IHJlbmRlcmVy
LT5lbmNsb3NpbmdMYXllcigpOworICAgIGlmICghcmVuZGVyTGF5ZXIpCisgICAgICAgIHJldHVy
biBzY3JvbGxlZDsKKworICAgIGlmIChkeCA+IDApCisgICAgICAgIHNjcm9sbGVkID0gcmVuZGVy
TGF5ZXItPnNjcm9sbChTY3JvbGxSaWdodCwgU2Nyb2xsQnlQaXhlbCwgZHgpOworICAgIGVsc2Ug
aWYgKGR4IDwgMCkKKyAgICAgICAgc2Nyb2xsZWQgPSByZW5kZXJMYXllci0+c2Nyb2xsKFNjcm9s
bExlZnQsIFNjcm9sbEJ5UGl4ZWwsIHFBYnMoZHgpKTsKKworICAgIGlmIChkeSA+IDApCisgICAg
ICAgIHNjcm9sbGVkID0gcmVuZGVyTGF5ZXItPnNjcm9sbChTY3JvbGxEb3duLCBTY3JvbGxCeVBp
eGVsLCBkeSk7CisgICAgZWxzZSBpZiAoZHkgPCAwKQorICAgICAgICBzY3JvbGxlZCA9IHJlbmRl
ckxheWVyLT5zY3JvbGwoU2Nyb2xsVXAsIFNjcm9sbEJ5UGl4ZWwsIHFBYnMoZHkpKTsKKworICAg
IHJldHVybiBzY3JvbGxlZDsKK30KKworLyohCiAgICAgUmV0dXJucyB0aGUgdGFnIG5hbWUgb2Yg
dGhpcyBlbGVtZW50LgogCiAgICAgXHNhIGdlb21ldHJ5KCkKSW5kZXg6IFdlYktpdC9xdC9BcGkv
cXdlYmVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvQXBpL3F3ZWJlbGVtZW50LmgJ
KHJldmlzaW9uIDUxOTQ3KQorKysgV2ViS2l0L3F0L0FwaS9xd2ViZWxlbWVudC5oCSh3b3JraW5n
IGNvcHkpCkBAIC04NSw2ICs4NSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEZvY3VzKCk7CiAK
ICAgICBRUmVjdCBnZW9tZXRyeSgpIGNvbnN0OworICAgIGJvb2wgc2Nyb2xsKGludCwgaW50KTsK
IAogICAgIFFTdHJpbmcgdGFnTmFtZSgpIGNvbnN0OwogICAgIFFTdHJpbmcgcHJlZml4KCkgY29u
c3Q7CkluZGV4OiBXZWJLaXQvcXQvdGVzdHMvcXdlYmVsZW1lbnQvdHN0X3F3ZWJlbGVtZW50LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvdGVzdHMvcXdlYmVsZW1lbnQvdHN0X3F3ZWJlbGVt
ZW50LmNwcAkocmV2aXNpb24gNTE5NDcpCisrKyBXZWJLaXQvcXQvdGVzdHMvcXdlYmVsZW1lbnQv
dHN0X3F3ZWJlbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTQsNiArOTQsNyBAQCBwcml2
YXRlIHNsb3RzOgogICAgIHZvaWQgbGFzdENoaWxkUHJldmlvdXNTaWJsaW5nKCk7CiAgICAgdm9p
ZCBoYXNTZXRGb2N1cygpOwogICAgIHZvaWQgcmVuZGVyKCk7CisgICAgdm9pZCBvdmVyZmxvd1Nj
cm9sbGluZygpOwogCiBwcml2YXRlOgogICAgIFFXZWJWaWV3KiBtX3ZpZXc7CkBAIC0xMDM3LDUg
KzEwMzgsNDIgQEAgdm9pZCB0c3RfUVdlYkVsZW1lbnQ6OnJlbmRlcigpCiAgICAgUVZFUklGWShp
bWFnZTMgPT0gaW1hZ2U0KTsKIH0KIAordm9pZCB0c3RfUVdlYkVsZW1lbnQ6Om92ZXJmbG93U2Ny
b2xsaW5nKCkKK3sKKyAgICBRU3RyaW5nIGh0bWwgPSAiPGh0bWw+IgorICAgICI8aGVhZD4iCisg
ICAgIjxzdHlsZSB0eXBlPSd0ZXh0L2Nzcyc+IgorICAgICJkaXYiIAorICAgICJ7IgorICAgICJ3
aWR0aDo1MHB4OyIKKyAgICAiaGVpZ2h0OjUwcHg7IgorICAgICJvdmVyZmxvdzogc2Nyb2xsIgor
ICAgICJ9IgorICAgICI8L3N0eWxlPiIKKyAgICAiPC9oZWFkPiIKKyAgICAiPGJvZHk+IgorICAg
ICI8ZGl2PiIKKyAgICAiWW91IGNhbiB1c2UgdGhlIG92ZXJmbG93IHByb3BlcnR5IHdoZW4geW91
IHdhbnQgdG8gaGF2ZSBiZXR0ZXIgY29udHJvbCBvZiB0aGUgbGF5b3V0LiBUcnkgdG8gY2hhbmdl
IHRoZSBvdmVyZmxvdyIgInByb3BlcnR5IHRvOiB2aXNpYmxlLCBoaWRkZW4sIGF1dG8sIG9yIGlu
aGVyaXQgYW5kIHNlZSB3aGF0IGhhcHBlbnMuIgorICAgICJZb3UgY2FuIHVzZSB0aGUgb3ZlcmZs
b3cgcHJvcGVydHkgd2hlbiB5b3Ugd2FudCB0byBoYXZlIGJldHRlciBjb250cm9sIG9mIHRoZSBs
YXlvdXQuIFRyeSB0byBjaGFuZ2UgdGhlIG92ZXJmbG93IiAicHJvcGVydHkgdG86IHZpc2libGUs
IGhpZGRlbiwgYXV0bywgb3IgaW5oZXJpdCBhbmQgc2VlIHdoYXQgaGFwcGVucy4iCisgICAgIllv
dSBjYW4gdXNlIHRoZSBvdmVyZmxvdyBwcm9wZXJ0eSB3aGVuIHlvdSB3YW50IHRvIGhhdmUgYmV0
dGVyIGNvbnRyb2wgb2YgdGhlIGxheW91dC4gVHJ5IHRvIGNoYW5nZSB0aGUgb3ZlcmZsb3ciICJw
cm9wZXJ0eSB0bzogdmlzaWJsZSwgaGlkZGVuLCBhdXRvLCBvciBpbmhlcml0IGFuZCBzZWUgd2hh
dCBoYXBwZW5zLiIKKyAgICAiWW91IGNhbiB1c2UgdGhlIG92ZXJmbG93IHByb3BlcnR5IHdoZW4g
eW91IHdhbnQgdG8gaGF2ZSBiZXR0ZXIgY29udHJvbCBvZiB0aGUgbGF5b3V0LiBUcnkgdG8gY2hh
bmdlIHRoZSBvdmVyZmxvdyIgInByb3BlcnR5IHRvOiB2aXNpYmxlLCBoaWRkZW4sIGF1dG8sIG9y
IGluaGVyaXQgYW5kIHNlZSB3aGF0IGhhcHBlbnMuLiIKKyAgICAiWW91IGNhbiB1c2UgdGhlIG92
ZXJmbG93IHByb3BlcnR5IHdoZW4geW91IHdhbnQgdG8gaGF2ZSBiZXR0ZXIgY29udHJvbCBvZiB0
aGUgbGF5b3V0LiBUcnkgdG8gY2hhbmdlIHRoZSBvdmVyZmxvdyIgInByb3BlcnR5IHRvOiB2aXNp
YmxlLCBoaWRkZW4sIGF1dG8sIG9yIGluaGVyaXQgYW5kIHNlZSB3aGF0IGhhcHBlbnMuIgorICAg
ICJZb3UgY2FuIHVzZSB0aGUgb3ZlcmZsb3cgcHJvcGVydHkgd2hlbiB5b3Ugd2FudCB0byBoYXZl
IGJldHRlciBjb250cm9sIG9mIHRoZSBsYXlvdXQuIFRyeSB0byBjaGFuZ2UgdGhlIG92ZXJmbG93
IiAicHJvcGVydHkgdG86IHZpc2libGUsIGhpZGRlbiwgYXV0bywgb3IgaW5oZXJpdCBhbmQgc2Vl
IHdoYXQgaGFwcGVucy4iCisgICAgIjwvZGl2PiIKKyAgICAiPHA+IgorICAgICJ0ZXN0IDIiCisg
ICAgIjwvcD4iCisgICAgIjwvYm9keT4iCisgICAgIjwvaHRtbD4iOworICAgIG1fbWFpbkZyYW1l
LT5zZXRIdG1sKGh0bWwpOworICAgIFFXZWJFbGVtZW50IGRpdiA9IG1fbWFpbkZyYW1lLT5kb2N1
bWVudEVsZW1lbnQoKS5maW5kRmlyc3QoImRpdiIpOworICAgIFFXZWJFbGVtZW50IHAgPSBtX21h
aW5GcmFtZS0+ZG9jdW1lbnRFbGVtZW50KCkuZmluZEZpcnN0KCJwIik7CisgICAgUVZFUklGWShk
aXYuc2Nyb2xsKDEwLDApKTsKKyAgICBRVkVSSUZZKGRpdi5zY3JvbGwoMCwxMCkpOworICAgIFFW
RVJJRlkoZGl2LnNjcm9sbCgtMTAsLTEwKSk7CisgICAgUVZFUklGWSghZGl2LnNjcm9sbCgtMTAs
LTEwKSk7CisgICAgUVZFUklGWSghcC5zY3JvbGwoMTAsMTApKTsKK30KKwogUVRFU1RfTUFJTih0
c3RfUVdlYkVsZW1lbnQpCiAjaW5jbHVkZSAidHN0X3F3ZWJlbGVtZW50Lm1vYyIK
</data>

          </attachment>
      

    </bug>

</bugzilla>