<?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>84350</bug_id>
          
          <creation_ts>2012-04-19 09:57:02 -0700</creation_ts>
          <short_desc>[Qt][WK2] Implement axis locking on the WebView for pan gestures</short_desc>
          <delta_ts>2012-04-24 10:48:32 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>76773</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andras Becsi">abecsi</reporter>
          <assigned_to name="Andras Becsi">abecsi</assigned_to>
          <cc>hausmann</cc>
    
    <cc>jturcotte</cc>
    
    <cc>kenneth</cc>
    
    <cc>menard</cc>
    
    <cc>vestbo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zalan</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>605644</commentid>
    <comment_count>0</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-19 09:57:02 -0700</bug_when>
    <thetext>If a pan gesture has sufficient velocity along one axis the WebView should automatically lock the page movement to that axis. This locking should be maintained until the ongoing pan gesture ends.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605665</commentid>
    <comment_count>1</comment_count>
      <attachid>137916</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-19 10:17:22 -0700</bug_when>
    <thetext>Created attachment 137916
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605732</commentid>
    <comment_count>2</comment_count>
      <attachid>137916</attachid>
    <who name="alan">zalan</who>
    <bug_when>2012-04-19 11:27:25 -0700</bug_when>
    <thetext>Comment on attachment 137916
proposed patch

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

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:128
&gt; +    m_state = Initial;

I&apos;d reset m_sampleCount here and not in ::update()

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:134
&gt; +        if (!viewport-&gt;isDraggingHorizontally()) {

Can&apos;t we make this decision in the state machine at ::update() and not go into locked mode at all, if the viewport is not pannable in that direction? Though I don&apos;t even know how we can end up in horizontallyLocked state, if the viewport is not pannable in that direction. I must have overlooked something here.

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h:147
&gt; +

It feels like there&apos;s one too many state here. Like if the &apos;if (m_state == Initial) {&apos; part could be removed from ::update, (by defining a proper starting point for this functionality) then undefined would not be needed at all. ::update would be sampling until state goes to something other than Initial. Not a big deal, just thinking it could be a little simpler. (provided that making these change gets the logic actually simpler)

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h:186
&gt;      QDeclarativeComponent* promptDialog;

Great feature btw.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606123</commentid>
    <comment_count>3</comment_count>
      <attachid>137916</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-04-19 16:28:21 -0700</bug_when>
    <thetext>Comment on attachment 137916
proposed patch

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

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:60
&gt; +static const qreal kAxisLockVelocityThreshold = 100.;

remove the .

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:105
&gt; +    static bool touchVelocityAvailable = event-&gt;device()-&gt;capabilities().testFlag(QTouchDevice::Velocity);
&gt; +    QVector2D velocity;
&gt; +
&gt; +    if (touchVelocityAvailable)
&gt; +        velocity = touchPoint.velocity();
&gt; +    else {
&gt; +        const QLineF movementLine(touchPoint.screenPos(), m_initialScreenPosition);
&gt; +        const qint64 elapsed = m_time.elapsed();
&gt; +
&gt; +        if (!elapsed)
&gt; +            return;
&gt; +
&gt; +        // Calculate an approiximate velocity vector in the unit of pixel / second.
&gt; +        velocity = QVector2D(1000 * movementLine.dx() / elapsed, 1000 * movementLine.dy() / elapsed);

Separate this out in a method like QVector2D touchVelocity(event) or so...?

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:121
&gt; +void QQuickWebViewPrivate::AxisLocker::setInitialPoint(const QPointF&amp; position)

setInitialPosition?

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:1509
&gt; +    Q_D(QQuickWebView);
&gt; +    QMouseEvent mouseEvent(QEvent::MouseMove, d-&gt;axisLocker.adjust(position), Qt::LeftButton, Qt::NoButton, Qt::NoModifier);

can&apos;t adjust and update be merged so that the handle* methods already gets called with the right position? That would seem more logical.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606470</commentid>
    <comment_count>4</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-20 03:02:29 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 137916 [details])
&gt; &gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:134
&gt; &gt; +        if (!viewport-&gt;isDraggingHorizontally()) {
&gt; 
&gt; Can&apos;t we make this decision in the state machine at ::update() and not go into locked mode at all, if the viewport is not pannable in that direction? Though I don&apos;t even know how we can end up in horizontallyLocked state, if the viewport is not pannable in that direction. I must have overlooked something here.

We can do the check earlier in touchEvent(), which makes it simpler.

&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h:147
&gt; &gt; +
&gt; 
&gt; It feels like there&apos;s one too many state here. Like if the &apos;if (m_state == Initial) {&apos; part could be removed from ::update, (by defining a proper starting point for this functionality) then undefined would not be needed at all. ::update would be sampling until state goes to something other than Initial. Not a big deal, just thinking it could be a little simpler. (provided that making these change gets the logic actually simpler)

We could decide if the current event could be an initial event for a pan gesture in the touchEvent() method.
But since the start of a pan gesture can also happen in a transition from a pinch gesture it would need more complex logic to decide when to set the initial screen position than to have an additional state in the state machine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606474</commentid>
    <comment_count>5</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-20 03:13:14 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 137916 [details])
&gt; &gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:1509
&gt; &gt; +    Q_D(QQuickWebView);
&gt; &gt; +    QMouseEvent mouseEvent(QEvent::MouseMove, d-&gt;axisLocker.adjust(position), Qt::LeftButton, Qt::NoButton, Qt::NoModifier);
&gt; 
&gt; can&apos;t adjust and update be merged so that the handle* methods already gets called with the right position? That would seem more logical.

The point of having the separation is to be able to decide the locking prior to actually recognizing the pan gesture (which happens when the event comes back from the web process).

This in practice means that we collect samples in the first entry point of the touch event (in QQuickWebView::touchEvent), and adjust the position when the gesture recognizer sends the actual gesture position through the interaction engine to the flickable.
These two actions happen asynchronously, which means the incoming event might have arbitrary delays until it is actually recognized as a pan gesture.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606475</commentid>
    <comment_count>6</comment_count>
      <attachid>138065</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-20 03:14:09 -0700</bug_when>
    <thetext>Created attachment 138065
proposed patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606480</commentid>
    <comment_count>7</comment_count>
      <attachid>138065</attachid>
    <who name="alan">zalan</who>
    <bug_when>2012-04-20 03:40:29 -0700</bug_when>
    <thetext>Comment on attachment 138065
proposed patch v2

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

Looks great.

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:121
&gt; +            m_state = VerticallyLocked;

It&apos;s really just nitpicking and matter of habit (and should have mentioned it in the first round), but i&apos;d do m_state = directionIndicator &gt; 0 ? HorizontallyLocked : VerticallyLocked; just to make it a oneliner. Ignore it if you want.

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:1385
&gt; +                          &amp;&amp; height() &lt; contentHeight();

I hope these content* and width()/height() functions aren&apos;t too expensive to check them on each touch event.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606490</commentid>
    <comment_count>8</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-20 04:34:56 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 138065 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=138065&amp;action=review
&gt; 
&gt; Looks great.
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:121
&gt; &gt; +            m_state = VerticallyLocked;
&gt; 
&gt; It&apos;s really just nitpicking and matter of habit (and should have mentioned it in the first round), but i&apos;d do m_state = directionIndicator &gt; 0 ? HorizontallyLocked : VerticallyLocked; just to make it a oneliner. Ignore it if you want.

Sure it can be a one liner. It remained like this for historical reasons, since I had additional logic there.

&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:1385
&gt; &gt; +                          &amp;&amp; height() &lt; contentHeight();
&gt; 
&gt; I hope these content* and width()/height() functions aren&apos;t too expensive to check them on each touch event.

That is a good point.
Although I do not think they are that expensive, but this new logic is definitely more expensive than the previous approach to just check the relevant viewport-&gt;isDragging*() methods in the ::adjust function, as I did in my initial patch.

I think I&apos;m going to revert that part of the change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606501</commentid>
    <comment_count>9</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2012-04-20 04:52:08 -0700</bug_when>
    <thetext>&gt; That is a good point.
&gt; Although I do not think they are that expensive, but this new logic is definitely more expensive than the previous approach to just check the relevant viewport-&gt;isDragging*() methods in the ::adjust function, as I did in my initial patch.
&gt; 
&gt; I think I&apos;m going to revert that part of the change.
If the page is not pannable in one direction, does it make sense to even start sampling for axis locking? Wouldn&apos;t it be automatically locked in in one direction in that case?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606518</commentid>
    <comment_count>10</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-20 05:18:19 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; &gt; That is a good point.
&gt; &gt; Although I do not think they are that expensive, but this new logic is definitely more expensive than the previous approach to just check the relevant viewport-&gt;isDragging*() methods in the ::adjust function, as I did in my initial patch.
&gt; &gt; 
&gt; &gt; I think I&apos;m going to revert that part of the change.
&gt; If the page is not pannable in one direction, does it make sense to even start sampling for axis locking? Wouldn&apos;t it be automatically locked in in one direction in that case?

Yes, it would be locked by the Flickable if the policy is the default AutoFlickDirection.
Sampling would indeed not make sense in this default scenario.

What I realized now is the question what we do for HorizontalAndVerticalFlick.
I think it should disable axis locking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606520</commentid>
    <comment_count>11</comment_count>
      <attachid>138074</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-20 05:31:03 -0700</bug_when>
    <thetext>Created attachment 138074
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606525</commentid>
    <comment_count>12</comment_count>
      <attachid>138075</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-20 05:46:46 -0700</bug_when>
    <thetext>Created attachment 138075
updated patch

Add a missing hunk.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606641</commentid>
    <comment_count>13</comment_count>
      <attachid>138075</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-04-20 09:36:32 -0700</bug_when>
    <thetext>Comment on attachment 138075
updated patch

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

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:70
&gt; +QQuickWebViewPrivate::AxisLocker::AxisLocker()

FlickableAxisLocker?

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h:140
&gt; +        enum LockingState {

Wouldn&apos;t a flag be better instead? AllowedPanningDirection? 

You already know whether you are sampling or not due to the counter

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h:143
&gt; +            NotLocked,

Unlocked?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606731</commentid>
    <comment_count>14</comment_count>
      <attachid>138124</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-20 11:19:49 -0700</bug_when>
    <thetext>Created attachment 138124
proposed patch

Addressed comments and further tweaked the constraints to behave better on the device.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606744</commentid>
    <comment_count>15</comment_count>
      <attachid>138124</attachid>
    <who name="alan">zalan</who>
    <bug_when>2012-04-20 11:35:12 -0700</bug_when>
    <thetext>Comment on attachment 138124
proposed patch

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

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:117
&gt; +}

the first update call when the sampling starts should early return as there&apos;s no value in calculating velocity at this point. (as it was done previously) so either move ++m_sampleCount up and check against value 1 or do something like this if (!m_sampleCount++), though i dont really like this as it&apos;s highly error prone. I dont have a strong preference on this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606753</commentid>
    <comment_count>16</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-20 11:43:22 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; (From update of attachment 138124 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=138124&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:117
&gt; &gt; +}
&gt; 
&gt; the first update call when the sampling starts should early return as there&apos;s no value in calculating velocity at this point. (as it was done previously) so either move ++m_sampleCount up and check against value 1 or do something like this if (!m_sampleCount++), though i dont really like this as it&apos;s highly error prone. I dont have a strong preference on this.

D&apos;oh, missing hunk, I should learn to properly squash my patches...
Can fix that when landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606760</commentid>
    <comment_count>17</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2012-04-20 11:50:54 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; (In reply to comment #15)
&gt; &gt; (From update of attachment 138124 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=138124&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp:117
&gt; &gt; &gt; +}
&gt; &gt; 
&gt; &gt; the first update call when the sampling starts should early return as there&apos;s no value in calculating velocity at this point. (as it was done previously) so either move ++m_sampleCount up and check against value 1 or do something like this if (!m_sampleCount++), though i dont really like this as it&apos;s highly error prone. I dont have a strong preference on this.
&gt; 
&gt; D&apos;oh, missing hunk, I should learn to properly squash my patches...
&gt; Can fix that when landing.
:) ok. lgtm otherwise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606794</commentid>
    <comment_count>18</comment_count>
      <attachid>138141</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-20 12:15:26 -0700</bug_when>
    <thetext>Created attachment 138141
patch for review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607220</commentid>
    <comment_count>19</comment_count>
      <attachid>138141</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-04-21 09:48:05 -0700</bug_when>
    <thetext>Comment on attachment 138141
patch for review

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

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h:140
&gt; +        enum AllowedPanningDirection {

This could be enum AllowedPanningDirecton { Horizontally = 0x01, Vertically = 0x02 }

So you can do if (allowedDirection &amp; Horizontally) { }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607256</commentid>
    <comment_count>20</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-21 12:10:01 -0700</bug_when>
    <thetext>(In reply to comment #19)
&gt; (From update of attachment 138141 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=138141&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h:140
&gt; &gt; +        enum AllowedPanningDirection {
&gt; 
&gt; This could be enum AllowedPanningDirecton { Horizontally = 0x01, Vertically = 0x02 }
&gt; 
&gt; So you can do if (allowedDirection &amp; Horizontally) { }

Well, I do not see how this would improve the patch.
In my opinion it would only make sense if the axis locker would also have a state which would be a combination of the flags, which it does not since the unlocked state is _not_ a combination of horizontally locked and vertically locked (this would mean that the page can not be moved at all).

Additionally: horizontally and vertically are adverbs which would need a verb like locked or panning to be meaningful.

Thus I think this would just make the state machine misleading and over-engineered.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607271</commentid>
    <comment_count>21</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-21 14:28:27 -0700</bug_when>
    <thetext>What I meant to point out was that the axis locker locks the panning direction either in vertical or in horizontal direction. This is the premise of my argument.

These two states are mutually exclusive, which implies that there is a third state in which the direction is not locked in either direction. The additional undefined state is only needed for the desktop (which does not supply valid touch velocity) to initialize the velocity calculation.

So along these lines if we have flags which can be combined, the combination could logically either mean that panning is only allowed along the x and y axes but not diagonally, or that the movement is locked to both axes, thus panning is completely disabled, but _not_ that the page is freely movable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607354</commentid>
    <comment_count>22</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-04-22 09:04:03 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; What I meant to point out was that the axis locker locks the panning direction either in vertical or in horizontal direction. This is the premise of my argument.
&gt; 
&gt; These two states are mutually exclusive, which implies that there is a third state in which the direction is not locked in either direction. The additional undefined state is only needed for the desktop (which does not supply valid touch velocity) to initialize the velocity calculation.
&gt; 
&gt; So along these lines if we have flags which can be combined, the combination could logically either mean that panning is only allowed along the x and y axes but not diagonally, or that the movement is locked to both axes, thus panning is completely disabled, but _not_ that the page is freely movable.

huh? If both directions (they are flags, and can be combined) are set you can pan in both directions. So when you lock, you simple disallow panning in a specific direction.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607358</commentid>
    <comment_count>23</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2012-04-22 10:00:40 -0700</bug_when>
    <thetext>(In reply to comment #22)
&gt; (In reply to comment #21)
&gt; &gt; What I meant to point out was that the axis locker locks the panning direction either in vertical or in horizontal direction. This is the premise of my argument.
&gt; &gt; 
&gt; &gt; These two states are mutually exclusive, which implies that there is a third state in which the direction is not locked in either direction. The additional undefined state is only needed for the desktop (which does not supply valid touch velocity) to initialize the velocity calculation.
&gt; &gt; 
&gt; &gt; So along these lines if we have flags which can be combined, the combination could logically either mean that panning is only allowed along the x and y axes but not diagonally, or that the movement is locked to both axes, thus panning is completely disabled, but _not_ that the page is freely movable.
&gt; 
&gt; huh? If both directions (they are flags, and can be combined) are set you can pan in both directions. So when you lock, you simple disallow panning in a specific direction.

I guess, the confusion started when the enum was renamed, while values got unchanged. AllowedPanningDirection now assumes directions where panning is possible, while they are really values of directions where panning is _not_ possible. I like Kenneth&apos;s proposal of moving from the banning perspective to the allowing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607359</commentid>
    <comment_count>24</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-22 10:34:10 -0700</bug_when>
    <thetext>(In reply to comment #23)
&gt; I guess, the confusion started when the enum was renamed, while values got unchanged. AllowedPanningDirection now assumes directions where panning is possible, while they are really values of directions where panning is _not_ possible. I like Kenneth&apos;s proposal of moving from the banning perspective to the allowing.

Agreed, the AllowedPanningDirection name is really confusing now. I&apos;m going to fix this, although the banning perspective seems more logical to me since we are talking about an axis locker, and not a panning enabler.
But let&apos;s have a positive perspective :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607365</commentid>
    <comment_count>25</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2012-04-22 10:45:16 -0700</bug_when>
    <thetext>(In reply to comment #24)
&gt; (In reply to comment #23)
&gt; &gt; I guess, the confusion started when the enum was renamed, while values got unchanged. AllowedPanningDirection now assumes directions where panning is possible, while they are really values of directions where panning is _not_ possible. I like Kenneth&apos;s proposal of moving from the banning perspective to the allowing.
&gt; 
&gt; Agreed, the AllowedPanningDirection name is really confusing now. I&apos;m going to fix this, although the banning perspective seems more logical to me since we are talking about an axis locker, and not a panning enabler.
&gt; But let&apos;s have a positive perspective :)
:) yeah, agree. Do the Kenneth way and be permissive.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607588</commentid>
    <comment_count>26</comment_count>
      <attachid>138321</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-23 03:35:54 -0700</bug_when>
    <thetext>Created attachment 138321
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608723</commentid>
    <comment_count>27</comment_count>
      <attachid>138321</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-04-24 08:53:38 -0700</bug_when>
    <thetext>Comment on attachment 138321
updated patch

Nice!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608830</commentid>
    <comment_count>28</comment_count>
      <attachid>138321</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-24 10:48:14 -0700</bug_when>
    <thetext>Comment on attachment 138321
updated patch

Clearing flags on attachment: 138321

Committed r115082: &lt;http://trac.webkit.org/changeset/115082&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608831</commentid>
    <comment_count>29</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2012-04-24 10:48:32 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>137916</attachid>
            <date>2012-04-19 10:17:22 -0700</date>
            <delta_ts>2012-04-20 03:14:09 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>0001-Qt-WK2-Implement-axis-locking-on-the-WebView-for-pan.patch</filename>
            <type>text/plain</type>
            <size>9792</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSBhNDlhNzBjMTRmNzRiNWQ2ZjM2ODFjZmU1ZmViNmI0MDM2MjQ3ZTgwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CkRhdGU6IFRodSwgMTkgQXByIDIwMTIgMTk6MTM6NDggKzAyMDAKU3ViamVjdDogW1BBVENIXSBb
UXRdW1dLMl0gSW1wbGVtZW50IGF4aXMgbG9ja2luZyBvbiB0aGUgV2ViVmlldyBmb3IgcGFuCiBn
ZXN0dXJlcwoKLS0tCiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMzMgKysrKysrCiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Fx
dWlja3dlYnZpZXcuY3BwICB8ICAxMDcgKysrKysrKysrKysrKysrKysrKy0KIC4uLi9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaCAgIHwgICAzMCArKysrKysKIDMg
ZmlsZXMgY2hhbmdlZCwgMTY2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CmluZGV4IDgxYzVhNWYuLjUxN2Q5MzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAorMjAx
Mi0wNC0xOSAgQW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKworICAgICAg
ICBbUXRdW1dLMl0gSW1wbGVtZW50IGF4aXMgbG9ja2luZyBvbiB0aGUgV2ViVmlldyBmb3IgcGFu
IGdlc3R1cmVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NDM1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IElmIGEgcGFuIGdlc3R1cmUgaGFzIHN1ZmZpY2llbnQgdmVsb2NpdHkgYWxvbmcgb25lIGF4aXMg
dGhlIFdlYlZpZXcKKyAgICAgICAgc2hvdWxkIGF1dG9tYXRpY2FsbHkgbG9jayB0aGUgcGFnZSBt
b3ZlbWVudCB0byB0aGF0IGF4aXMuCisgICAgICAgIFRoaXMgbG9ja2luZyBzaG91bGQgYmUgbWFp
bnRhaW5lZCB1bnRpbCB0aGUgb25nb2luZyBwYW4gZ2VzdHVyZSBlbmRzLgorCisgICAgICAgIFRo
aXMgcGF0Y2ggaW1wbGVtZW50cyBhIHNpbXBsZSBheGlzIGxvY2tlciB3aGljaCBhZGp1c3RzIHRo
ZSBwb3NpdGlvbnMKKyAgICAgICAgc2VudCB0byB0aGUgRmxpY2thYmxlIHRvIHRoZSBpbml0aWFs
IHJlZmVyZW5jZSBwb3NpdGlvbiBhY2NvcmRpbmcgdG8gdGhlCisgICAgICAgIGRpcmVjdGlvbiBh
biB2ZWxvY2l0eSBpbmZvcm1hdGlvbiBpdCBnYXRoZXJlZCBmcm9tIGluY29taW5nIHRvdWNoIGV2
ZW50cy4KKworICAgICAgICBUaGUgQXhpc0xvY2tlciBtYWtlcyB1c2Ugb2YgdGhlIHZlbG9jaXR5
IGluZm9ybWF0aW9uIG9mIHRoZSB0b3VjaCBwb2ludAorICAgICAgICBpZiBhdmFpbGFibGUsIGVs
c2UgYW4gYXBwcm94aW1hdGUgdmVsb2NpdHkgb2YgdGhlIGluY29taW5nIGV2ZW50IGlzCisgICAg
ICAgIGNhbGN1bGF0ZWQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZp
ZXcuY3BwOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2NrZXI6OkF4aXNM
b2NrZXIpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2NrZXI6OnVwZGF0
ZSk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6QXhpc0xvY2tlcjo6c2V0SW5pdGlh
bFBvaW50KToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjpyZXNl
dCk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6QXhpc0xvY2tlcjo6YWRqdXN0KToK
KyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpRUXVpY2tXZWJWaWV3UHJpdmF0ZSk6Cisg
ICAgICAgIChRUXVpY2tXZWJWaWV3Ojp0b3VjaEV2ZW50KToKKyAgICAgICAgKFFRdWlja1dlYlZp
ZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlUHJlc3MpOgorICAgICAgICAoUVF1aWNrV2ViVmlldzo6
aGFuZGxlRmxpY2thYmxlTW91c2VNb3ZlKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXc6OmhhbmRs
ZUZsaWNrYWJsZU1vdXNlUmVsZWFzZSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVp
Y2t3ZWJ2aWV3X3BfcC5oOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGUpOgorCiAyMDEy
LTA0LTE5ICBaYWxhbiBCdWp0YXMgIDx6YnVqdGFzQGdtYWlsLmNvbT4KIAogICAgICAgICBbUXRd
W1dLMl0gWm9vbSBvdXQgb24gdGhlIHNlY29uZCBkb3VibGUgY2xpY2sgZG9lcyBub3QgYWx3YXlz
IHNjYWxlIHJpZ2h0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1
aWNrd2Vidmlldy5jcHAKaW5kZXggMmIwYzVmOS4uYTZmYjQwYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCkBAIC00NSw4ICs0NSw3
IEBACiAjaW5jbHVkZSAicXdlYnZpZXdwb3J0aW5mb19wLmgiCiAKICNpbmNsdWRlIDxKYXZhU2Ny
aXB0Q29yZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+Ci0jaW5jbHVkZSA8UXRRbWwvUVFtbEVuZ2lu
ZT4KLSNpbmNsdWRlIDxRdFF1aWNrL1FRdWlja0NhbnZhcz4KKyNpbmNsdWRlIDxRRGF0ZVRpbWU+
CiAjaW5jbHVkZSA8V2ViQ29yZS9JbnRQb2ludC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvSW50UmVj
dC5oPgogI2luY2x1ZGUgPFdLT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIuaD4KQEAgLTU3LDYgKzU2
LDggQEAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBzdGF0aWMgYm9vbCBzX2ZsaWNrYWJs
ZVZpZXdwb3J0RW5hYmxlZCA9IHRydWU7CitzdGF0aWMgY29uc3QgaW50IGtBeGlzTG9ja1NhbXBs
ZUNvdW50ID0gMzsKK3N0YXRpYyBjb25zdCBxcmVhbCBrQXhpc0xvY2tWZWxvY2l0eVRocmVzaG9s
ZCA9IDEwMC47CiAKIHN0YXRpYyBRUXVpY2tXZWJWaWV3UHJpdmF0ZSogY3JlYXRlUHJpdmF0ZU9i
amVjdChRUXVpY2tXZWJWaWV3KiBwdWJsaWNPYmplY3QpCiB7CkBAIC02NSw4ICs2Niw5NiBAQCBz
dGF0aWMgUVF1aWNrV2ViVmlld1ByaXZhdGUqIGNyZWF0ZVByaXZhdGVPYmplY3QoUVF1aWNrV2Vi
VmlldyogcHVibGljT2JqZWN0KQogICAgIHJldHVybiBuZXcgUVF1aWNrV2ViVmlld0xlZ2FjeVBy
aXZhdGUocHVibGljT2JqZWN0KTsKIH0KIAorUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2Nr
ZXI6OkF4aXNMb2NrZXIoUVF1aWNrV2ViVmlldyogdmlldykKKyAgICA6IG1fc3RhdGUoSW5pdGlh
bCkKKyAgICAsIG1fc2FtcGxlQ291bnQoMCkKKyAgICAsIHZpZXdwb3J0KHZpZXcpCit7Cit9CisK
K3ZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2NrZXI6OnVwZGF0ZShjb25zdCBRVG91
Y2hFdmVudCogZXZlbnQpCit7CisgICAgQVNTRVJUKGV2ZW50LT50b3VjaFBvaW50cygpLnNpemUo
KSA9PSAxKTsKKyAgICBjb25zdCBRVG91Y2hFdmVudDo6VG91Y2hQb2ludCYgdG91Y2hQb2ludCA9
IGV2ZW50LT50b3VjaFBvaW50cygpLmZpcnN0KCk7CisKKyAgICBpZiAobV9zdGF0ZSA9PSBJbml0
aWFsKSB7CisgICAgICAgIG1faW5pdGlhbFNjcmVlblBvc2l0aW9uID0gdG91Y2hQb2ludC5zY3Jl
ZW5Qb3MoKTsKKyAgICAgICAgbV90aW1lLnJlc3RhcnQoKTsKKyAgICAgICAgbV9zYW1wbGVDb3Vu
dCA9IDA7CisgICAgICAgIG1fc3RhdGUgPSBVbmRlZmluZWQ7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisKKyAgICBpZiAobV9zdGF0ZSAhPSBVbmRlZmluZWQpCisgICAgICAgIHJldHVybjsKKwor
ICAgIHN0YXRpYyBib29sIHRvdWNoVmVsb2NpdHlBdmFpbGFibGUgPSBldmVudC0+ZGV2aWNlKCkt
PmNhcGFiaWxpdGllcygpLnRlc3RGbGFnKFFUb3VjaERldmljZTo6VmVsb2NpdHkpOworICAgIFFW
ZWN0b3IyRCB2ZWxvY2l0eTsKKworICAgIGlmICh0b3VjaFZlbG9jaXR5QXZhaWxhYmxlKQorICAg
ICAgICB2ZWxvY2l0eSA9IHRvdWNoUG9pbnQudmVsb2NpdHkoKTsKKyAgICBlbHNlIHsKKyAgICAg
ICAgY29uc3QgUUxpbmVGIG1vdmVtZW50TGluZSh0b3VjaFBvaW50LnNjcmVlblBvcygpLCBtX2lu
aXRpYWxTY3JlZW5Qb3NpdGlvbik7CisgICAgICAgIGNvbnN0IHFpbnQ2NCBlbGFwc2VkID0gbV90
aW1lLmVsYXBzZWQoKTsKKworICAgICAgICBpZiAoIWVsYXBzZWQpCisgICAgICAgICAgICByZXR1
cm47CisKKyAgICAgICAgLy8gQ2FsY3VsYXRlIGFuIGFwcHJvaXhpbWF0ZSB2ZWxvY2l0eSB2ZWN0
b3IgaW4gdGhlIHVuaXQgb2YgcGl4ZWwgLyBzZWNvbmQuCisgICAgICAgIHZlbG9jaXR5ID0gUVZl
Y3RvcjJEKDEwMDAgKiBtb3ZlbWVudExpbmUuZHgoKSAvIGVsYXBzZWQsIDEwMDAgKiBtb3ZlbWVu
dExpbmUuZHkoKSAvIGVsYXBzZWQpOworICAgIH0KKworICAgIHFyZWFsIGRpcmVjdGlvbkluZGlj
YXRvciA9IHFBYnModmVsb2NpdHkueCgpKSAtIHFBYnModmVsb2NpdHkueSgpKTsKKworICAgIGlm
ICh2ZWxvY2l0eS5sZW5ndGgoKSA+IGtBeGlzTG9ja1ZlbG9jaXR5VGhyZXNob2xkKSB7CisgICAg
ICAgIGlmIChkaXJlY3Rpb25JbmRpY2F0b3IgPiAwKQorICAgICAgICAgICAgbV9zdGF0ZSA9IEhv
cml6b250YWxseUxvY2tlZDsKKyAgICAgICAgZWxzZSBpZiAoZGlyZWN0aW9uSW5kaWNhdG9yIDwg
MCkKKyAgICAgICAgICAgIG1fc3RhdGUgPSBWZXJ0aWNhbGx5TG9ja2VkOworICAgIH0gZWxzZSBp
ZiAobV9zYW1wbGVDb3VudCA+IGtBeGlzTG9ja1NhbXBsZUNvdW50KQorICAgICAgICBtX3N0YXRl
ID0gTm90TG9ja2VkOworCisgICAgKyttX3NhbXBsZUNvdW50OworfQorCit2b2lkIFFRdWlja1dl
YlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjpzZXRJbml0aWFsUG9pbnQoY29uc3QgUVBvaW50RiYg
cG9zaXRpb24pCit7CisgICAgbV9sb2NrUmVmZXJlbmNlUG9pbnQgPSBwb3NpdGlvbjsKK30KKwor
dm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6QXhpc0xvY2tlcjo6cmVzZXQoKQoreworICAgIG1f
c3RhdGUgPSBJbml0aWFsOworfQorCitRUG9pbnRGIFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlz
TG9ja2VyOjphZGp1c3QoY29uc3QgUVBvaW50RiYgcG9zaXRpb24pCit7CisgICAgaWYgKG1fc3Rh
dGUgPT0gSG9yaXpvbnRhbGx5TG9ja2VkKSB7CisgICAgICAgIGlmICghdmlld3BvcnQtPmlzRHJh
Z2dpbmdIb3Jpem9udGFsbHkoKSkgeworICAgICAgICAgICAgLy8gSWYgdGhlIHBhZ2UgZml0cyBp
bnRvIHZpZXcgaG9yaXpvbnRhbGx5LCBwYW5uaW5nIGhvcml6b250YWxseSBpcyBkaXNhYmxlZAor
ICAgICAgICAgICAgLy8gYnkgRmxpY2thYmxlLCB0aGVyZWZvcmUgd2UgaGF2ZSB0byByZXNldCB0
aGUgbG9jayBhbmQgbGV0IHRoZSB1c2VyIHBhbiB2ZXJ0aWNhbGx5LgorICAgICAgICAgICAgcmVz
ZXQoKTsKKyAgICAgICAgICAgIHJldHVybiBwb3NpdGlvbjsKKyAgICAgICAgfQorICAgICAgICBy
ZXR1cm4gUVBvaW50Rihwb3NpdGlvbi54KCksIG1fbG9ja1JlZmVyZW5jZVBvaW50LnkoKSk7Cisg
ICAgfQorCisgICAgaWYgKG1fc3RhdGUgPT0gVmVydGljYWxseUxvY2tlZCkgeworICAgICAgICBp
ZiAoIXZpZXdwb3J0LT5pc0RyYWdnaW5nVmVydGljYWxseSgpKSB7CisgICAgICAgICAgICAvLyBJ
biB0aGUgdW5saWtlbHkgY2FzZSB0aGF0IHRoZSBwYWdlIGZpdHMgaW50byB2aWV3IHZlcnRpY2Fs
bHksIHBhbm5pbmcgdmVydGljYWxseSBpcyBkaXNhYmxlZAorICAgICAgICAgICAgLy8gYnkgdGhl
IEZsaWNrYWJsZSwgdGhlcmVmb3JlIHdlIGhhdmUgdG8gcmVzZXQgdGhlIGxvY2sgYW5kIGxldCB0
aGUgdXNlciBwYW4gaG9yaXpvbnRhbGx5LgorICAgICAgICAgICAgcmVzZXQoKTsKKyAgICAgICAg
ICAgIHJldHVybiBwb3NpdGlvbjsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gUVBvaW50Riht
X2xvY2tSZWZlcmVuY2VQb2ludC54KCksIHBvc2l0aW9uLnkoKSk7CisgICAgfQorCisgICAgcmV0
dXJuIHBvc2l0aW9uOworfQorCiBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6UVF1aWNrV2ViVmlld1By
aXZhdGUoUVF1aWNrV2ViVmlldyogdmlld3BvcnQpCiAgICAgOiBxX3B0cih2aWV3cG9ydCkKKyAg
ICAsIGF4aXNMb2NrZXIodmlld3BvcnQpCiAgICAgLCBhbGVydERpYWxvZygwKQogICAgICwgY29u
ZmlybURpYWxvZygwKQogICAgICwgcHJvbXB0RGlhbG9nKDApCkBAIC0xMjk2LDYgKzEzODUsMTEg
QEAgdm9pZCBRUXVpY2tXZWJWaWV3Ojp0b3VjaEV2ZW50KFFUb3VjaEV2ZW50KiBldmVudCkKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIGlmIChldmVudC0+dG91Y2hQb2ludHMoKS5zaXpl
KCkgPT0gMSkKKyAgICAgICAgZC0+YXhpc0xvY2tlci51cGRhdGUoZXZlbnQpOworICAgIGVsc2UK
KyAgICAgICAgZC0+YXhpc0xvY2tlci5yZXNldCgpOworCiAgICAgZm9yY2VBY3RpdmVGb2N1cygp
OwogICAgIGQtPnBhZ2VWaWV3LT5ldmVudEhhbmRsZXIoKS0+aGFuZGxlVG91Y2hFdmVudChldmVu
dCk7CiB9CkBAIC0xNDAyLDYgKzE0OTYsOCBAQCB2b2lkIFFRdWlja1dlYlZpZXc6OnNldENvbnRl
bnRQb3MoY29uc3QgUVBvaW50RiYgcG9zKQogCiB2b2lkIFFRdWlja1dlYlZpZXc6OmhhbmRsZUZs
aWNrYWJsZU1vdXNlUHJlc3MoY29uc3QgUVBvaW50RiYgcG9zaXRpb24sIHFpbnQ2NCBldmVudFRp
bWVzdGFtcE1pbGxpcykKIHsKKyAgICBRX0QoUVF1aWNrV2ViVmlldyk7CisgICAgZC0+YXhpc0xv
Y2tlci5zZXRJbml0aWFsUG9pbnQocG9zaXRpb24pOwogICAgIFFNb3VzZUV2ZW50IG1vdXNlRXZl
bnQoUUV2ZW50OjpNb3VzZUJ1dHRvblByZXNzLCBwb3NpdGlvbiwgUXQ6OkxlZnRCdXR0b24sIFF0
OjpOb0J1dHRvbiwgUXQ6Ok5vTW9kaWZpZXIpOwogICAgIG1vdXNlRXZlbnQuc2V0VGltZXN0YW1w
KGV2ZW50VGltZXN0YW1wTWlsbGlzKTsKICAgICBRUXVpY2tGbGlja2FibGU6Om1vdXNlUHJlc3NF
dmVudCgmbW91c2VFdmVudCk7CkBAIC0xNDA5LDE0ICsxNTA1LDE3IEBAIHZvaWQgUVF1aWNrV2Vi
Vmlldzo6aGFuZGxlRmxpY2thYmxlTW91c2VQcmVzcyhjb25zdCBRUG9pbnRGJiBwb3NpdGlvbiwg
cWludDY0IGV2CiAKIHZvaWQgUVF1aWNrV2ViVmlldzo6aGFuZGxlRmxpY2thYmxlTW91c2VNb3Zl
KGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uLCBxaW50NjQgZXZlbnRUaW1lc3RhbXBNaWxsaXMpCiB7
Ci0gICAgUU1vdXNlRXZlbnQgbW91c2VFdmVudChRRXZlbnQ6Ok1vdXNlTW92ZSwgcG9zaXRpb24s
IFF0OjpMZWZ0QnV0dG9uLCBRdDo6Tm9CdXR0b24sIFF0OjpOb01vZGlmaWVyKTsKKyAgICBRX0Qo
UVF1aWNrV2ViVmlldyk7CisgICAgUU1vdXNlRXZlbnQgbW91c2VFdmVudChRRXZlbnQ6Ok1vdXNl
TW92ZSwgZC0+YXhpc0xvY2tlci5hZGp1c3QocG9zaXRpb24pLCBRdDo6TGVmdEJ1dHRvbiwgUXQ6
Ok5vQnV0dG9uLCBRdDo6Tm9Nb2RpZmllcik7CiAgICAgbW91c2VFdmVudC5zZXRUaW1lc3RhbXAo
ZXZlbnRUaW1lc3RhbXBNaWxsaXMpOwogICAgIFFRdWlja0ZsaWNrYWJsZTo6bW91c2VNb3ZlRXZl
bnQoJm1vdXNlRXZlbnQpOwogfQogCiB2b2lkIFFRdWlja1dlYlZpZXc6OmhhbmRsZUZsaWNrYWJs
ZU1vdXNlUmVsZWFzZShjb25zdCBRUG9pbnRGJiBwb3NpdGlvbiwgcWludDY0IGV2ZW50VGltZXN0
YW1wTWlsbGlzKQogewotICAgIFFNb3VzZUV2ZW50IG1vdXNlRXZlbnQoUUV2ZW50OjpNb3VzZUJ1
dHRvblJlbGVhc2UsIHBvc2l0aW9uLCBRdDo6TGVmdEJ1dHRvbiwgUXQ6Ok5vQnV0dG9uLCBRdDo6
Tm9Nb2RpZmllcik7CisgICAgUV9EKFFRdWlja1dlYlZpZXcpOworICAgIFFNb3VzZUV2ZW50IG1v
dXNlRXZlbnQoUUV2ZW50OjpNb3VzZUJ1dHRvblJlbGVhc2UsIGQtPmF4aXNMb2NrZXIuYWRqdXN0
KHBvc2l0aW9uKSwgUXQ6OkxlZnRCdXR0b24sIFF0OjpOb0J1dHRvbiwgUXQ6Ok5vTW9kaWZpZXIp
OworICAgIGQtPmF4aXNMb2NrZXIucmVzZXQoKTsKICAgICBtb3VzZUV2ZW50LnNldFRpbWVzdGFt
cChldmVudFRpbWVzdGFtcE1pbGxpcyk7CiAgICAgUVF1aWNrRmxpY2thYmxlOjptb3VzZVJlbGVh
c2VFdmVudCgmbW91c2VFdmVudCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgKaW5kZXggYWQ3YjJkMC4uM2U0MDIyZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3Bf
cC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19w
X3AuaApAQCAtMzQsNiArMzQsNyBAQAogI2luY2x1ZGUgInFxdWlja3dlYnZpZXdfcC5oIgogI2lu
Y2x1ZGUgInFxdWlja3dlYnBhZ2VfcC5oIgogCisjaW5jbHVkZSA8UXRDb3JlL1FFbGFwc2VkVGlt
ZXI+CiAjaW5jbHVkZSA8UXRDb3JlL1FPYmplY3Q+CiAjaW5jbHVkZSA8UXRDb3JlL1FTY29wZWRQ
b2ludGVyPgogI2luY2x1ZGUgPFdlYkNvcmUvVmlld3BvcnRBcmd1bWVudHMuaD4KQEAgLTEzNSw2
ICsxMzYsMzMgQEAgcHVibGljOgogICAgIHZvaWQgaGFuZGxlRG93bmxvYWRSZXF1ZXN0KERvd25s
b2FkUHJveHkqKTsKIAogcHJvdGVjdGVkOgorICAgIGNsYXNzIEF4aXNMb2NrZXIgeworICAgICAg
ICBlbnVtIExvY2tpbmdTdGF0ZSB7CisgICAgICAgICAgICBJbml0aWFsLAorICAgICAgICAgICAg
VW5kZWZpbmVkLAorICAgICAgICAgICAgTm90TG9ja2VkLAorICAgICAgICAgICAgSG9yaXpvbnRh
bGx5TG9ja2VkLAorICAgICAgICAgICAgVmVydGljYWxseUxvY2tlZAorICAgICAgICB9OworCisg
ICAgICAgIExvY2tpbmdTdGF0ZSBtX3N0YXRlOworCisgICAgICAgIFFFbGFwc2VkVGltZXIgbV90
aW1lOworICAgICAgICBRUG9pbnRGIG1faW5pdGlhbFNjcmVlblBvc2l0aW9uOworICAgICAgICBp
bnQgbV9zYW1wbGVDb3VudDsKKworICAgICAgICBRUG9pbnRGIG1fbG9ja1JlZmVyZW5jZVBvaW50
OworICAgICAgICBRUXVpY2tXZWJWaWV3KiB2aWV3cG9ydDsKKworICAgIHB1YmxpYzoKKyAgICAg
ICAgQXhpc0xvY2tlcihRUXVpY2tXZWJWaWV3KiB2aWV3KTsKKworICAgICAgICB2b2lkIHVwZGF0
ZShjb25zdCBRVG91Y2hFdmVudCogZXZlbnQpOworICAgICAgICB2b2lkIHNldEluaXRpYWxQb2lu
dChjb25zdCBRUG9pbnRGJik7CisgICAgICAgIHZvaWQgcmVzZXQoKTsKKyAgICAgICAgUVBvaW50
RiBhZGp1c3QoY29uc3QgUVBvaW50RiYpOworICAgIH07CisKICAgICBRUXVpY2tXZWJWaWV3UHJp
dmF0ZShRUXVpY2tXZWJWaWV3KiB2aWV3cG9ydCk7CiAgICAgUmVmUHRyPFF0V2ViQ29udGV4dD4g
Y29udGV4dDsKICAgICBSZWZQdHI8V2ViS2l0OjpXZWJQYWdlUHJveHk+IHdlYlBhZ2VQcm94eTsK
QEAgLTE1MSw2ICsxNzksOCBAQCBwcm90ZWN0ZWQ6CiAgICAgUVNjb3BlZFBvaW50ZXI8UVF1aWNr
V2ViUGFnZT4gcGFnZVZpZXc7CiAgICAgUVF1aWNrV2ViVmlldyogcV9wdHI7CiAKKyAgICBBeGlz
TG9ja2VyIGF4aXNMb2NrZXI7CisKICAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQqIGFsZXJ0RGlh
bG9nOwogICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29uZmlybURpYWxvZzsKICAgICBRRGVj
bGFyYXRpdmVDb21wb25lbnQqIHByb21wdERpYWxvZzsKLS0gCjEuNy4xMAoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138065</attachid>
            <date>2012-04-20 03:14:09 -0700</date>
            <delta_ts>2012-04-20 05:31:03 -0700</delta_ts>
            <desc>proposed patch v2</desc>
            <filename>0001-Qt-WK2-Implement-axis-locking-on-the-WebView-for-pan.patch</filename>
            <type>text/plain</type>
            <size>9894</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSAyNDIxNjhmNGQ2OWExMzk0MDhjMGNhMjhkN2I2Njg2ZGJhMmNhYWY3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CkRhdGU6IFRodSwgMTkgQXByIDIwMTIgMTk6MTM6NDggKzAyMDAKU3ViamVjdDogW1BBVENIXSBb
UXRdW1dLMl0gSW1wbGVtZW50IGF4aXMgbG9ja2luZyBvbiB0aGUgV2ViVmlldyBmb3IgcGFuCiBn
ZXN0dXJlcwoKLS0tCiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMzQgKysrKysrKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3LmNwcCAgfCAgMTA2ICsrKysrKysrKysrKysrKysrKystCiAuLi4vV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggICB8ICAgMzAgKysrKysrCiAz
IGZpbGVzIGNoYW5nZWQsIDE2NiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZwppbmRleCBiOTcxYTczLi41Mzk3NTYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIw
MTItMDQtMTkgIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAg
ICAgW1F0XVtXSzJdIEltcGxlbWVudCBheGlzIGxvY2tpbmcgb24gdGhlIFdlYlZpZXcgZm9yIHBh
biBnZXN0dXJlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9ODQzNTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBJZiBhIHBhbiBnZXN0dXJlIGhhcyBzdWZmaWNpZW50IHZlbG9jaXR5IGFsb25nIG9uZSBheGlz
IHRoZSBXZWJWaWV3CisgICAgICAgIHNob3VsZCBhdXRvbWF0aWNhbGx5IGxvY2sgdGhlIHBhZ2Ug
bW92ZW1lbnQgdG8gdGhhdCBheGlzLgorICAgICAgICBUaGlzIGxvY2tpbmcgc2hvdWxkIGJlIG1h
aW50YWluZWQgdW50aWwgdGhlIG9uZ29pbmcgcGFuIGdlc3R1cmUgZW5kcy4KKworICAgICAgICBU
aGlzIHBhdGNoIGltcGxlbWVudHMgYSBzaW1wbGUgYXhpcyBsb2NrZXIgd2hpY2ggYWRqdXN0cyB0
aGUgcG9zaXRpb25zCisgICAgICAgIHNlbnQgdG8gdGhlIEZsaWNrYWJsZSB0byB0aGUgaW5pdGlh
bCByZWZlcmVuY2UgcG9zaXRpb24gYWNjb3JkaW5nIHRvIHRoZQorICAgICAgICBkaXJlY3Rpb24g
YW4gdmVsb2NpdHkgaW5mb3JtYXRpb24gaXQgZ2F0aGVyZWQgZnJvbSBpbmNvbWluZyB0b3VjaCBl
dmVudHMuCisKKyAgICAgICAgVGhlIEF4aXNMb2NrZXIgbWFrZXMgdXNlIG9mIHRoZSB2ZWxvY2l0
eSBpbmZvcm1hdGlvbiBvZiB0aGUgdG91Y2ggcG9pbnQKKyAgICAgICAgaWYgYXZhaWxhYmxlLCBl
bHNlIGFuIGFwcHJveGltYXRlIHZlbG9jaXR5IG9mIHRoZSBpbmNvbWluZyBldmVudCBpcworICAg
ICAgICBjYWxjdWxhdGVkLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2
aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjpBeGlz
TG9ja2VyKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjp0b3Vj
aFZlbG9jaXR5KToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjp1
cGRhdGUpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2NrZXI6OnNldElu
aXRpYWxQb3NpdGlvbik6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6QXhpc0xvY2tl
cjo6cmVzZXQpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2NrZXI6OmFk
anVzdCk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6UVF1aWNrV2ViVmlld1ByaXZh
dGUpOgorICAgICAgICAoUVF1aWNrV2ViVmlldzo6dG91Y2hFdmVudCk6CisgICAgICAgIChRUXVp
Y2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVByZXNzKToKKyAgICAgICAgKFFRdWlja1dl
YlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlTW92ZSk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3
OjpoYW5kbGVGbGlja2FibGVNb3VzZVJlbGVhc2UpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrd2Vidmlld19wX3AuaDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlKToK
KwogMjAxMi0wNC0xOSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+
CiAKICAgICAgICAgW0dUS10gSWdub3JlIHJlc291cmNlcyB3aGlsZSByZXBsYWNpbmcgY29udGVu
dCBpbiBXZWJLaXQyIEdUSysgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCAyYjBjNWY5Li5kZWNmMTZkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKQEAgLTQ1
LDggKzQ1LDcgQEAKICNpbmNsdWRlICJxd2Vidmlld3BvcnRpbmZvX3AuaCIKIAogI2luY2x1ZGUg
PEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KLSNpbmNsdWRlIDxRdFFtbC9R
UW1sRW5naW5lPgotI2luY2x1ZGUgPFF0UXVpY2svUVF1aWNrQ2FudmFzPgorI2luY2x1ZGUgPFFE
YXRlVGltZT4KICNpbmNsdWRlIDxXZWJDb3JlL0ludFBvaW50Lmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9JbnRSZWN0Lmg+CiAjaW5jbHVkZSA8V0tPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5oPgpAQCAt
NTcsNiArNTYsOSBAQAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIHN0YXRpYyBib29sIHNf
ZmxpY2thYmxlVmlld3BvcnRFbmFibGVkID0gdHJ1ZTsKK3N0YXRpYyBjb25zdCBpbnQga0F4aXNM
b2NrU2FtcGxlQ291bnQgPSAzOworc3RhdGljIGNvbnN0IHFyZWFsIGtBeGlzTG9ja1ZlbG9jaXR5
VGhyZXNob2xkID0gMTAwOworc3RhdGljIGNvbnN0IHFyZWFsIGtBeGlzTG9ja1ZlbG9jaXR5RGly
ZWN0aW9uVGhyZXNob2xkID0gMzA7CiAKIHN0YXRpYyBRUXVpY2tXZWJWaWV3UHJpdmF0ZSogY3Jl
YXRlUHJpdmF0ZU9iamVjdChRUXVpY2tXZWJWaWV3KiBwdWJsaWNPYmplY3QpCiB7CkBAIC02NSw2
ICs2Nyw4NiBAQCBzdGF0aWMgUVF1aWNrV2ViVmlld1ByaXZhdGUqIGNyZWF0ZVByaXZhdGVPYmpl
Y3QoUVF1aWNrV2ViVmlldyogcHVibGljT2JqZWN0KQogICAgIHJldHVybiBuZXcgUVF1aWNrV2Vi
Vmlld0xlZ2FjeVByaXZhdGUocHVibGljT2JqZWN0KTsKIH0KIAorUVF1aWNrV2ViVmlld1ByaXZh
dGU6OkF4aXNMb2NrZXI6OkF4aXNMb2NrZXIoKQorICAgIDogbV9zdGF0ZShJbml0aWFsKQorICAg
ICwgbV9zYW1wbGVDb3VudCgwKQoreworfQorCitRVmVjdG9yMkQgUVF1aWNrV2ViVmlld1ByaXZh
dGU6OkF4aXNMb2NrZXI6OnRvdWNoVmVsb2NpdHkoY29uc3QgUVRvdWNoRXZlbnQqIGV2ZW50KQor
eworICAgIHN0YXRpYyBib29sIHRvdWNoVmVsb2NpdHlBdmFpbGFibGUgPSBldmVudC0+ZGV2aWNl
KCktPmNhcGFiaWxpdGllcygpLnRlc3RGbGFnKFFUb3VjaERldmljZTo6VmVsb2NpdHkpOworICAg
IGNvbnN0IFFUb3VjaEV2ZW50OjpUb3VjaFBvaW50JiB0b3VjaFBvaW50ID0gZXZlbnQtPnRvdWNo
UG9pbnRzKCkuZmlyc3QoKTsKKworICAgIGlmICh0b3VjaFZlbG9jaXR5QXZhaWxhYmxlKQorICAg
ICAgICByZXR1cm4gdG91Y2hQb2ludC52ZWxvY2l0eSgpOworCisgICAgY29uc3QgUUxpbmVGIG1v
dmVtZW50TGluZSh0b3VjaFBvaW50LnNjcmVlblBvcygpLCBtX2luaXRpYWxTY3JlZW5Qb3NpdGlv
bik7CisgICAgY29uc3QgcWludDY0IGVsYXBzZWQgPSBtX3RpbWUuZWxhcHNlZCgpOworCisgICAg
aWYgKCFlbGFwc2VkKQorICAgICAgICByZXR1cm4gUVZlY3RvcjJEKDAsIDApOworCisgICAgLy8g
Q2FsY3VsYXRlIGFuIGFwcHJveGltYXRlIHZlbG9jaXR5IHZlY3RvciBpbiB0aGUgdW5pdCBvZiBw
aXhlbCAvIHNlY29uZC4KKyAgICByZXR1cm4gUVZlY3RvcjJEKDEwMDAgKiBtb3ZlbWVudExpbmUu
ZHgoKSAvIGVsYXBzZWQsIDEwMDAgKiBtb3ZlbWVudExpbmUuZHkoKSAvIGVsYXBzZWQpOworfQor
Cit2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjp1cGRhdGUoY29uc3QgUVRv
dWNoRXZlbnQqIGV2ZW50KQoreworICAgIEFTU0VSVChldmVudC0+dG91Y2hQb2ludHMoKS5zaXpl
KCkgPT0gMSk7CisgICAgY29uc3QgUVRvdWNoRXZlbnQ6OlRvdWNoUG9pbnQmIHRvdWNoUG9pbnQg
PSBldmVudC0+dG91Y2hQb2ludHMoKS5maXJzdCgpOworCisgICAgaWYgKG1fc3RhdGUgPT0gSW5p
dGlhbCkgeworICAgICAgICBtX2luaXRpYWxTY3JlZW5Qb3NpdGlvbiA9IHRvdWNoUG9pbnQuc2Ny
ZWVuUG9zKCk7CisgICAgICAgIG1fdGltZS5yZXN0YXJ0KCk7CisgICAgICAgIG1fc3RhdGUgPSBT
YW1wbGluZzsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChtX3N0YXRlICE9IFNh
bXBsaW5nKQorICAgICAgICByZXR1cm47CisKKyAgICBRVmVjdG9yMkQgdmVsb2NpdHkgPSB0b3Vj
aFZlbG9jaXR5KGV2ZW50KTsKKworICAgIHFyZWFsIGRpcmVjdGlvbkluZGljYXRvciA9IHFBYnMo
dmVsb2NpdHkueCgpKSAtIHFBYnModmVsb2NpdHkueSgpKTsKKworICAgIC8vIERpc2NhcmQgdGhl
IGN1cnJlbnQgc2FtcGxlIGlmIHRoZSBkaXJlY3Rpb24gaXMgbm90IGNvbmNsdXNpdmUgeWV0Lgor
ICAgIGlmIChxQWJzKGRpcmVjdGlvbkluZGljYXRvcikgPCBrQXhpc0xvY2tWZWxvY2l0eURpcmVj
dGlvblRocmVzaG9sZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKHZlbG9jaXR5Lmxlbmd0
aCgpID4ga0F4aXNMb2NrVmVsb2NpdHlUaHJlc2hvbGQpIHsKKyAgICAgICAgaWYgKGRpcmVjdGlv
bkluZGljYXRvciA+IDApCisgICAgICAgICAgICBtX3N0YXRlID0gSG9yaXpvbnRhbGx5TG9ja2Vk
OworICAgICAgICBlbHNlIGlmIChkaXJlY3Rpb25JbmRpY2F0b3IgPCAwKQorICAgICAgICAgICAg
bV9zdGF0ZSA9IFZlcnRpY2FsbHlMb2NrZWQ7CisgICAgfSBlbHNlIGlmIChtX3NhbXBsZUNvdW50
ID4ga0F4aXNMb2NrU2FtcGxlQ291bnQpCisgICAgICAgIG1fc3RhdGUgPSBOb3RMb2NrZWQ7CisK
KyAgICArK21fc2FtcGxlQ291bnQ7Cit9CisKK3ZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4
aXNMb2NrZXI6OnNldEluaXRpYWxQb3NpdGlvbihjb25zdCBRUG9pbnRGJiBwb3NpdGlvbikKK3sK
KyAgICBtX2xvY2tSZWZlcmVuY2VQb3NpdGlvbiA9IHBvc2l0aW9uOworfQorCit2b2lkIFFRdWlj
a1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjpyZXNldCgpCit7CisgICAgbV9zdGF0ZSA9IElu
aXRpYWw7CisgICAgbV9zYW1wbGVDb3VudCA9IDA7Cit9CisKK1FQb2ludEYgUVF1aWNrV2ViVmll
d1ByaXZhdGU6OkF4aXNMb2NrZXI6OmFkanVzdChjb25zdCBRUG9pbnRGJiBwb3NpdGlvbikKK3sK
KyAgICBpZiAobV9zdGF0ZSA9PSBIb3Jpem9udGFsbHlMb2NrZWQpCisgICAgICAgIHJldHVybiBR
UG9pbnRGKHBvc2l0aW9uLngoKSwgbV9sb2NrUmVmZXJlbmNlUG9zaXRpb24ueSgpKTsKKworICAg
IGlmIChtX3N0YXRlID09IFZlcnRpY2FsbHlMb2NrZWQpCisgICAgICAgIHJldHVybiBRUG9pbnRG
KG1fbG9ja1JlZmVyZW5jZVBvc2l0aW9uLngoKSwgcG9zaXRpb24ueSgpKTsKKworICAgIHJldHVy
biBwb3NpdGlvbjsKK30KKwogUVF1aWNrV2ViVmlld1ByaXZhdGU6OlFRdWlja1dlYlZpZXdQcml2
YXRlKFFRdWlja1dlYlZpZXcqIHZpZXdwb3J0KQogICAgIDogcV9wdHIodmlld3BvcnQpCiAgICAg
LCBhbGVydERpYWxvZygwKQpAQCAtMTI5Niw2ICsxMzc4LDE3IEBAIHZvaWQgUVF1aWNrV2ViVmll
dzo6dG91Y2hFdmVudChRVG91Y2hFdmVudCogZXZlbnQpCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKKyAgICAvLyBBeGlzIGxvY2tpbmcgaXMgb25seSBlbmFibGVkIGlmIHRoZSB1c2VyIGRpZCBu
b3Qgc2V0IGFueSBmbGlja2FibGUgZGlyZWN0aW9uIHBvbGljeSBpbiBRTUwKKyAgICAvLyBhbmQg
dGhlIHBhZ2UgZG9lcyBub3QgZml0IGludG8gdGhlIHZpZXdwb3J0LCBuZWl0aGVyIGhvcml6b250
YWxseSBub3IgdmVydGljYWxseS4KKyAgICBib29sIGxvY2tpbmdFbmFibGVkID0gZmxpY2thYmxl
RGlyZWN0aW9uKCkgPT0gQXV0b0ZsaWNrRGlyZWN0aW9uCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICYmIHdpZHRoKCkgPCBjb250ZW50V2lkdGgoKQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAmJiBoZWlnaHQoKSA8IGNvbnRlbnRIZWlnaHQoKTsKKworICAgIGlmIChsb2NraW5nRW5hYmxl
ZCAmJiBldmVudC0+dG91Y2hQb2ludHMoKS5zaXplKCkgPT0gMSkKKyAgICAgICAgZC0+YXhpc0xv
Y2tlci51cGRhdGUoZXZlbnQpOworICAgIGVsc2UKKyAgICAgICAgZC0+YXhpc0xvY2tlci5yZXNl
dCgpOworCiAgICAgZm9yY2VBY3RpdmVGb2N1cygpOwogICAgIGQtPnBhZ2VWaWV3LT5ldmVudEhh
bmRsZXIoKS0+aGFuZGxlVG91Y2hFdmVudChldmVudCk7CiB9CkBAIC0xNDAyLDYgKzE0OTUsOCBA
QCB2b2lkIFFRdWlja1dlYlZpZXc6OnNldENvbnRlbnRQb3MoY29uc3QgUVBvaW50RiYgcG9zKQog
CiB2b2lkIFFRdWlja1dlYlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlUHJlc3MoY29uc3QgUVBv
aW50RiYgcG9zaXRpb24sIHFpbnQ2NCBldmVudFRpbWVzdGFtcE1pbGxpcykKIHsKKyAgICBRX0Qo
UVF1aWNrV2ViVmlldyk7CisgICAgZC0+YXhpc0xvY2tlci5zZXRJbml0aWFsUG9zaXRpb24ocG9z
aXRpb24pOwogICAgIFFNb3VzZUV2ZW50IG1vdXNlRXZlbnQoUUV2ZW50OjpNb3VzZUJ1dHRvblBy
ZXNzLCBwb3NpdGlvbiwgUXQ6OkxlZnRCdXR0b24sIFF0OjpOb0J1dHRvbiwgUXQ6Ok5vTW9kaWZp
ZXIpOwogICAgIG1vdXNlRXZlbnQuc2V0VGltZXN0YW1wKGV2ZW50VGltZXN0YW1wTWlsbGlzKTsK
ICAgICBRUXVpY2tGbGlja2FibGU6Om1vdXNlUHJlc3NFdmVudCgmbW91c2VFdmVudCk7CkBAIC0x
NDA5LDE0ICsxNTA0LDE3IEBAIHZvaWQgUVF1aWNrV2ViVmlldzo6aGFuZGxlRmxpY2thYmxlTW91
c2VQcmVzcyhjb25zdCBRUG9pbnRGJiBwb3NpdGlvbiwgcWludDY0IGV2CiAKIHZvaWQgUVF1aWNr
V2ViVmlldzo6aGFuZGxlRmxpY2thYmxlTW91c2VNb3ZlKGNvbnN0IFFQb2ludEYmIHBvc2l0aW9u
LCBxaW50NjQgZXZlbnRUaW1lc3RhbXBNaWxsaXMpCiB7Ci0gICAgUU1vdXNlRXZlbnQgbW91c2VF
dmVudChRRXZlbnQ6Ok1vdXNlTW92ZSwgcG9zaXRpb24sIFF0OjpMZWZ0QnV0dG9uLCBRdDo6Tm9C
dXR0b24sIFF0OjpOb01vZGlmaWVyKTsKKyAgICBRX0QoUVF1aWNrV2ViVmlldyk7CisgICAgUU1v
dXNlRXZlbnQgbW91c2VFdmVudChRRXZlbnQ6Ok1vdXNlTW92ZSwgZC0+YXhpc0xvY2tlci5hZGp1
c3QocG9zaXRpb24pLCBRdDo6TGVmdEJ1dHRvbiwgUXQ6Ok5vQnV0dG9uLCBRdDo6Tm9Nb2RpZmll
cik7CiAgICAgbW91c2VFdmVudC5zZXRUaW1lc3RhbXAoZXZlbnRUaW1lc3RhbXBNaWxsaXMpOwog
ICAgIFFRdWlja0ZsaWNrYWJsZTo6bW91c2VNb3ZlRXZlbnQoJm1vdXNlRXZlbnQpOwogfQogCiB2
b2lkIFFRdWlja1dlYlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlUmVsZWFzZShjb25zdCBRUG9p
bnRGJiBwb3NpdGlvbiwgcWludDY0IGV2ZW50VGltZXN0YW1wTWlsbGlzKQogewotICAgIFFNb3Vz
ZUV2ZW50IG1vdXNlRXZlbnQoUUV2ZW50OjpNb3VzZUJ1dHRvblJlbGVhc2UsIHBvc2l0aW9uLCBR
dDo6TGVmdEJ1dHRvbiwgUXQ6Ok5vQnV0dG9uLCBRdDo6Tm9Nb2RpZmllcik7CisgICAgUV9EKFFR
dWlja1dlYlZpZXcpOworICAgIFFNb3VzZUV2ZW50IG1vdXNlRXZlbnQoUUV2ZW50OjpNb3VzZUJ1
dHRvblJlbGVhc2UsIGQtPmF4aXNMb2NrZXIuYWRqdXN0KHBvc2l0aW9uKSwgUXQ6OkxlZnRCdXR0
b24sIFF0OjpOb0J1dHRvbiwgUXQ6Ok5vTW9kaWZpZXIpOworICAgIGQtPmF4aXNMb2NrZXIucmVz
ZXQoKTsKICAgICBtb3VzZUV2ZW50LnNldFRpbWVzdGFtcChldmVudFRpbWVzdGFtcE1pbGxpcyk7
CiAgICAgUVF1aWNrRmxpY2thYmxlOjptb3VzZVJlbGVhc2VFdmVudCgmbW91c2VFdmVudCk7CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZp
ZXdfcF9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdf
cF9wLmgKaW5kZXggYWQ3YjJkMC4uMjY0NDc2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaApAQCAtMzQsNiArMzQsNyBAQAog
I2luY2x1ZGUgInFxdWlja3dlYnZpZXdfcC5oIgogI2luY2x1ZGUgInFxdWlja3dlYnBhZ2VfcC5o
IgogCisjaW5jbHVkZSA8UXRDb3JlL1FFbGFwc2VkVGltZXI+CiAjaW5jbHVkZSA8UXRDb3JlL1FP
YmplY3Q+CiAjaW5jbHVkZSA8UXRDb3JlL1FTY29wZWRQb2ludGVyPgogI2luY2x1ZGUgPFdlYkNv
cmUvVmlld3BvcnRBcmd1bWVudHMuaD4KQEAgLTEzNSw2ICsxMzYsMzMgQEAgcHVibGljOgogICAg
IHZvaWQgaGFuZGxlRG93bmxvYWRSZXF1ZXN0KERvd25sb2FkUHJveHkqKTsKIAogcHJvdGVjdGVk
OgorICAgIGNsYXNzIEF4aXNMb2NrZXIgeworICAgICAgICBlbnVtIExvY2tpbmdTdGF0ZSB7Cisg
ICAgICAgICAgICBJbml0aWFsLAorICAgICAgICAgICAgU2FtcGxpbmcsCisgICAgICAgICAgICBO
b3RMb2NrZWQsCisgICAgICAgICAgICBIb3Jpem9udGFsbHlMb2NrZWQsCisgICAgICAgICAgICBW
ZXJ0aWNhbGx5TG9ja2VkCisgICAgICAgIH07CisKKyAgICAgICAgTG9ja2luZ1N0YXRlIG1fc3Rh
dGU7CisKKyAgICAgICAgUUVsYXBzZWRUaW1lciBtX3RpbWU7CisgICAgICAgIFFQb2ludEYgbV9p
bml0aWFsU2NyZWVuUG9zaXRpb247CisgICAgICAgIFFQb2ludEYgbV9sb2NrUmVmZXJlbmNlUG9z
aXRpb247CisgICAgICAgIGludCBtX3NhbXBsZUNvdW50OworCisgICAgICAgIFFWZWN0b3IyRCB0
b3VjaFZlbG9jaXR5KGNvbnN0IFFUb3VjaEV2ZW50KiBldmVudCk7CisKKyAgICBwdWJsaWM6Cisg
ICAgICAgIEF4aXNMb2NrZXIoKTsKKworICAgICAgICB2b2lkIHVwZGF0ZShjb25zdCBRVG91Y2hF
dmVudCogZXZlbnQpOworICAgICAgICB2b2lkIHNldEluaXRpYWxQb3NpdGlvbihjb25zdCBRUG9p
bnRGJik7CisgICAgICAgIHZvaWQgcmVzZXQoKTsKKyAgICAgICAgUVBvaW50RiBhZGp1c3QoY29u
c3QgUVBvaW50RiYpOworICAgIH07CisKICAgICBRUXVpY2tXZWJWaWV3UHJpdmF0ZShRUXVpY2tX
ZWJWaWV3KiB2aWV3cG9ydCk7CiAgICAgUmVmUHRyPFF0V2ViQ29udGV4dD4gY29udGV4dDsKICAg
ICBSZWZQdHI8V2ViS2l0OjpXZWJQYWdlUHJveHk+IHdlYlBhZ2VQcm94eTsKQEAgLTE1MSw2ICsx
NzksOCBAQCBwcm90ZWN0ZWQ6CiAgICAgUVNjb3BlZFBvaW50ZXI8UVF1aWNrV2ViUGFnZT4gcGFn
ZVZpZXc7CiAgICAgUVF1aWNrV2ViVmlldyogcV9wdHI7CiAKKyAgICBBeGlzTG9ja2VyIGF4aXNM
b2NrZXI7CisKICAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQqIGFsZXJ0RGlhbG9nOwogICAgIFFE
ZWNsYXJhdGl2ZUNvbXBvbmVudCogY29uZmlybURpYWxvZzsKICAgICBRRGVjbGFyYXRpdmVDb21w
b25lbnQqIHByb21wdERpYWxvZzsKLS0gCjEuNy4xMAoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138074</attachid>
            <date>2012-04-20 05:31:03 -0700</date>
            <delta_ts>2012-04-20 05:46:46 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>0001-Qt-WK2-Implement-axis-locking-on-the-WebView-for-pan.patch</filename>
            <type>text/plain</type>
            <size>9623</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSA4ZGEyYjBlMjczZGM3YTJiZTU2MTk1NTJkMjk5OWI2MTM5ZTFiZmI4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CkRhdGU6IFRodSwgMTkgQXByIDIwMTIgMTk6MTM6NDggKzAyMDAKU3ViamVjdDogW1BBVENIXSBb
UXRdW1dLMl0gSW1wbGVtZW50IGF4aXMgbG9ja2luZyBvbiB0aGUgV2ViVmlldyBmb3IgcGFuCiBn
ZXN0dXJlcwoKLS0tCiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMzQgKysrKysrKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3LmNwcCAgfCAgMTAxICsrKysrKysrKysrKysrKysrKystCiAuLi4vV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggICB8ICAgMzAgKysrKysrCiAz
IGZpbGVzIGNoYW5nZWQsIDE2MSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZwppbmRleCBiOTcxYTczLi41Mzk3NTYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIw
MTItMDQtMTkgIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAg
ICAgW1F0XVtXSzJdIEltcGxlbWVudCBheGlzIGxvY2tpbmcgb24gdGhlIFdlYlZpZXcgZm9yIHBh
biBnZXN0dXJlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9ODQzNTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBJZiBhIHBhbiBnZXN0dXJlIGhhcyBzdWZmaWNpZW50IHZlbG9jaXR5IGFsb25nIG9uZSBheGlz
IHRoZSBXZWJWaWV3CisgICAgICAgIHNob3VsZCBhdXRvbWF0aWNhbGx5IGxvY2sgdGhlIHBhZ2Ug
bW92ZW1lbnQgdG8gdGhhdCBheGlzLgorICAgICAgICBUaGlzIGxvY2tpbmcgc2hvdWxkIGJlIG1h
aW50YWluZWQgdW50aWwgdGhlIG9uZ29pbmcgcGFuIGdlc3R1cmUgZW5kcy4KKworICAgICAgICBU
aGlzIHBhdGNoIGltcGxlbWVudHMgYSBzaW1wbGUgYXhpcyBsb2NrZXIgd2hpY2ggYWRqdXN0cyB0
aGUgcG9zaXRpb25zCisgICAgICAgIHNlbnQgdG8gdGhlIEZsaWNrYWJsZSB0byB0aGUgaW5pdGlh
bCByZWZlcmVuY2UgcG9zaXRpb24gYWNjb3JkaW5nIHRvIHRoZQorICAgICAgICBkaXJlY3Rpb24g
YW4gdmVsb2NpdHkgaW5mb3JtYXRpb24gaXQgZ2F0aGVyZWQgZnJvbSBpbmNvbWluZyB0b3VjaCBl
dmVudHMuCisKKyAgICAgICAgVGhlIEF4aXNMb2NrZXIgbWFrZXMgdXNlIG9mIHRoZSB2ZWxvY2l0
eSBpbmZvcm1hdGlvbiBvZiB0aGUgdG91Y2ggcG9pbnQKKyAgICAgICAgaWYgYXZhaWxhYmxlLCBl
bHNlIGFuIGFwcHJveGltYXRlIHZlbG9jaXR5IG9mIHRoZSBpbmNvbWluZyBldmVudCBpcworICAg
ICAgICBjYWxjdWxhdGVkLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2
aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjpBeGlz
TG9ja2VyKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjp0b3Vj
aFZlbG9jaXR5KToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjp1
cGRhdGUpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2NrZXI6OnNldElu
aXRpYWxQb3NpdGlvbik6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6QXhpc0xvY2tl
cjo6cmVzZXQpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2NrZXI6OmFk
anVzdCk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6UVF1aWNrV2ViVmlld1ByaXZh
dGUpOgorICAgICAgICAoUVF1aWNrV2ViVmlldzo6dG91Y2hFdmVudCk6CisgICAgICAgIChRUXVp
Y2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVByZXNzKToKKyAgICAgICAgKFFRdWlja1dl
YlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlTW92ZSk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3
OjpoYW5kbGVGbGlja2FibGVNb3VzZVJlbGVhc2UpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrd2Vidmlld19wX3AuaDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlKToK
KwogMjAxMi0wNC0xOSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+
CiAKICAgICAgICAgW0dUS10gSWdub3JlIHJlc291cmNlcyB3aGlsZSByZXBsYWNpbmcgY29udGVu
dCBpbiBXZWJLaXQyIEdUSysgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCAyYjBjNWY5Li44M2YwM2ZjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKQEAgLTQ1
LDggKzQ1LDcgQEAKICNpbmNsdWRlICJxd2Vidmlld3BvcnRpbmZvX3AuaCIKIAogI2luY2x1ZGUg
PEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KLSNpbmNsdWRlIDxRdFFtbC9R
UW1sRW5naW5lPgotI2luY2x1ZGUgPFF0UXVpY2svUVF1aWNrQ2FudmFzPgorI2luY2x1ZGUgPFFE
YXRlVGltZT4KICNpbmNsdWRlIDxXZWJDb3JlL0ludFBvaW50Lmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9JbnRSZWN0Lmg+CiAjaW5jbHVkZSA8V0tPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5oPgpAQCAt
NTcsNiArNTYsOSBAQAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIHN0YXRpYyBib29sIHNf
ZmxpY2thYmxlVmlld3BvcnRFbmFibGVkID0gdHJ1ZTsKK3N0YXRpYyBjb25zdCBpbnQga0F4aXNM
b2NrU2FtcGxlQ291bnQgPSAzOworc3RhdGljIGNvbnN0IHFyZWFsIGtBeGlzTG9ja1ZlbG9jaXR5
VGhyZXNob2xkID0gMTAwOworc3RhdGljIGNvbnN0IHFyZWFsIGtBeGlzTG9ja1ZlbG9jaXR5RGly
ZWN0aW9uVGhyZXNob2xkID0gMzA7CiAKIHN0YXRpYyBRUXVpY2tXZWJWaWV3UHJpdmF0ZSogY3Jl
YXRlUHJpdmF0ZU9iamVjdChRUXVpY2tXZWJWaWV3KiBwdWJsaWNPYmplY3QpCiB7CkBAIC02NSw2
ICs2Nyw4MyBAQCBzdGF0aWMgUVF1aWNrV2ViVmlld1ByaXZhdGUqIGNyZWF0ZVByaXZhdGVPYmpl
Y3QoUVF1aWNrV2ViVmlldyogcHVibGljT2JqZWN0KQogICAgIHJldHVybiBuZXcgUVF1aWNrV2Vi
Vmlld0xlZ2FjeVByaXZhdGUocHVibGljT2JqZWN0KTsKIH0KIAorUVF1aWNrV2ViVmlld1ByaXZh
dGU6OkF4aXNMb2NrZXI6OkF4aXNMb2NrZXIoKQorICAgIDogbV9zdGF0ZShJbml0aWFsKQorICAg
ICwgbV9zYW1wbGVDb3VudCgwKQoreworfQorCitRVmVjdG9yMkQgUVF1aWNrV2ViVmlld1ByaXZh
dGU6OkF4aXNMb2NrZXI6OnRvdWNoVmVsb2NpdHkoY29uc3QgUVRvdWNoRXZlbnQqIGV2ZW50KQor
eworICAgIHN0YXRpYyBib29sIHRvdWNoVmVsb2NpdHlBdmFpbGFibGUgPSBldmVudC0+ZGV2aWNl
KCktPmNhcGFiaWxpdGllcygpLnRlc3RGbGFnKFFUb3VjaERldmljZTo6VmVsb2NpdHkpOworICAg
IGNvbnN0IFFUb3VjaEV2ZW50OjpUb3VjaFBvaW50JiB0b3VjaFBvaW50ID0gZXZlbnQtPnRvdWNo
UG9pbnRzKCkuZmlyc3QoKTsKKworICAgIGlmICh0b3VjaFZlbG9jaXR5QXZhaWxhYmxlKQorICAg
ICAgICByZXR1cm4gdG91Y2hQb2ludC52ZWxvY2l0eSgpOworCisgICAgY29uc3QgUUxpbmVGIG1v
dmVtZW50TGluZSh0b3VjaFBvaW50LnNjcmVlblBvcygpLCBtX2luaXRpYWxTY3JlZW5Qb3NpdGlv
bik7CisgICAgY29uc3QgcWludDY0IGVsYXBzZWQgPSBtX3RpbWUuZWxhcHNlZCgpOworCisgICAg
aWYgKCFlbGFwc2VkKQorICAgICAgICByZXR1cm4gUVZlY3RvcjJEKDAsIDApOworCisgICAgLy8g
Q2FsY3VsYXRlIGFuIGFwcHJveGltYXRlIHZlbG9jaXR5IHZlY3RvciBpbiB0aGUgdW5pdCBvZiBw
aXhlbCAvIHNlY29uZC4KKyAgICByZXR1cm4gUVZlY3RvcjJEKDEwMDAgKiBtb3ZlbWVudExpbmUu
ZHgoKSAvIGVsYXBzZWQsIDEwMDAgKiBtb3ZlbWVudExpbmUuZHkoKSAvIGVsYXBzZWQpOworfQor
Cit2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjp1cGRhdGUoY29uc3QgUVRv
dWNoRXZlbnQqIGV2ZW50KQoreworICAgIEFTU0VSVChldmVudC0+dG91Y2hQb2ludHMoKS5zaXpl
KCkgPT0gMSk7CisgICAgY29uc3QgUVRvdWNoRXZlbnQ6OlRvdWNoUG9pbnQmIHRvdWNoUG9pbnQg
PSBldmVudC0+dG91Y2hQb2ludHMoKS5maXJzdCgpOworCisgICAgaWYgKG1fc3RhdGUgPT0gSW5p
dGlhbCkgeworICAgICAgICBtX2luaXRpYWxTY3JlZW5Qb3NpdGlvbiA9IHRvdWNoUG9pbnQuc2Ny
ZWVuUG9zKCk7CisgICAgICAgIG1fdGltZS5yZXN0YXJ0KCk7CisgICAgICAgIG1fc3RhdGUgPSBT
YW1wbGluZzsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChtX3N0YXRlICE9IFNh
bXBsaW5nKQorICAgICAgICByZXR1cm47CisKKyAgICBRVmVjdG9yMkQgdmVsb2NpdHkgPSB0b3Vj
aFZlbG9jaXR5KGV2ZW50KTsKKworICAgIHFyZWFsIGRpcmVjdGlvbkluZGljYXRvciA9IHFBYnMo
dmVsb2NpdHkueCgpKSAtIHFBYnModmVsb2NpdHkueSgpKTsKKworICAgIC8vIERpc2NhcmQgdGhl
IGN1cnJlbnQgc2FtcGxlIGlmIHRoZSBkaXJlY3Rpb24gaXMgbm90IGNvbmNsdXNpdmUgeWV0Lgor
ICAgIGlmIChxQWJzKGRpcmVjdGlvbkluZGljYXRvcikgPCBrQXhpc0xvY2tWZWxvY2l0eURpcmVj
dGlvblRocmVzaG9sZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKHZlbG9jaXR5Lmxlbmd0
aCgpID4ga0F4aXNMb2NrVmVsb2NpdHlUaHJlc2hvbGQpCisgICAgICAgIG1fc3RhdGUgPSAoZGly
ZWN0aW9uSW5kaWNhdG9yID4gMCkgPyBIb3Jpem9udGFsbHlMb2NrZWQgOiBWZXJ0aWNhbGx5TG9j
a2VkOworICAgIGVsc2UgaWYgKG1fc2FtcGxlQ291bnQgPiBrQXhpc0xvY2tTYW1wbGVDb3VudCkK
KyAgICAgICAgbV9zdGF0ZSA9IE5vdExvY2tlZDsKKworICAgICsrbV9zYW1wbGVDb3VudDsKK30K
Kwordm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6QXhpc0xvY2tlcjo6c2V0SW5pdGlhbFBvc2l0
aW9uKGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uKQoreworICAgIG1fbG9ja1JlZmVyZW5jZVBvc2l0
aW9uID0gcG9zaXRpb247Cit9CisKK3ZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2Nr
ZXI6OnJlc2V0KCkKK3sKKyAgICBtX3N0YXRlID0gSW5pdGlhbDsKKyAgICBtX3NhbXBsZUNvdW50
ID0gMDsKK30KKworUVBvaW50RiBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6QXhpc0xvY2tlcjo6YWRq
dXN0KGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uKQoreworICAgIGlmIChtX3N0YXRlID09IEhvcml6
b250YWxseUxvY2tlZCkKKyAgICAgICAgcmV0dXJuIFFQb2ludEYocG9zaXRpb24ueCgpLCBtX2xv
Y2tSZWZlcmVuY2VQb3NpdGlvbi55KCkpOworCisgICAgaWYgKG1fc3RhdGUgPT0gVmVydGljYWxs
eUxvY2tlZCkKKyAgICAgICAgcmV0dXJuIFFQb2ludEYobV9sb2NrUmVmZXJlbmNlUG9zaXRpb24u
eCgpLCBwb3NpdGlvbi55KCkpOworCisgICAgcmV0dXJuIHBvc2l0aW9uOworfQorCiBRUXVpY2tX
ZWJWaWV3UHJpdmF0ZTo6UVF1aWNrV2ViVmlld1ByaXZhdGUoUVF1aWNrV2ViVmlldyogdmlld3Bv
cnQpCiAgICAgOiBxX3B0cih2aWV3cG9ydCkKICAgICAsIGFsZXJ0RGlhbG9nKDApCkBAIC0xMjk2
LDYgKzEzNzUsMTUgQEAgdm9pZCBRUXVpY2tXZWJWaWV3Ojp0b3VjaEV2ZW50KFFUb3VjaEV2ZW50
KiBldmVudCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIGJvb2wgbG9ja2luZ0VuYWJs
ZWQgPSBmbGlja2FibGVEaXJlY3Rpb24oKSA9PSBBdXRvRmxpY2tEaXJlY3Rpb24KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgJiYgd2lkdGgoKSA8IGNvbnRlbnRXaWR0aCgpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICYmIGhlaWdodCgpIDwgY29udGVudEhlaWdodCgpOworCisgICAgaWYg
KGxvY2tpbmdFbmFibGVkICYmIGV2ZW50LT50b3VjaFBvaW50cygpLnNpemUoKSA9PSAxKQorICAg
ICAgICBkLT5heGlzTG9ja2VyLnVwZGF0ZShldmVudCk7CisgICAgZWxzZQorICAgICAgICBkLT5h
eGlzTG9ja2VyLnJlc2V0KCk7CisKICAgICBmb3JjZUFjdGl2ZUZvY3VzKCk7CiAgICAgZC0+cGFn
ZVZpZXctPmV2ZW50SGFuZGxlcigpLT5oYW5kbGVUb3VjaEV2ZW50KGV2ZW50KTsKIH0KQEAgLTE0
MDIsNiArMTQ5MCw4IEBAIHZvaWQgUVF1aWNrV2ViVmlldzo6c2V0Q29udGVudFBvcyhjb25zdCBR
UG9pbnRGJiBwb3MpCiAKIHZvaWQgUVF1aWNrV2ViVmlldzo6aGFuZGxlRmxpY2thYmxlTW91c2VQ
cmVzcyhjb25zdCBRUG9pbnRGJiBwb3NpdGlvbiwgcWludDY0IGV2ZW50VGltZXN0YW1wTWlsbGlz
KQogeworICAgIFFfRChRUXVpY2tXZWJWaWV3KTsKKyAgICBkLT5heGlzTG9ja2VyLnNldEluaXRp
YWxQb3NpdGlvbihwb3NpdGlvbik7CiAgICAgUU1vdXNlRXZlbnQgbW91c2VFdmVudChRRXZlbnQ6
Ok1vdXNlQnV0dG9uUHJlc3MsIHBvc2l0aW9uLCBRdDo6TGVmdEJ1dHRvbiwgUXQ6Ok5vQnV0dG9u
LCBRdDo6Tm9Nb2RpZmllcik7CiAgICAgbW91c2VFdmVudC5zZXRUaW1lc3RhbXAoZXZlbnRUaW1l
c3RhbXBNaWxsaXMpOwogICAgIFFRdWlja0ZsaWNrYWJsZTo6bW91c2VQcmVzc0V2ZW50KCZtb3Vz
ZUV2ZW50KTsKQEAgLTE0MDksMTQgKzE0OTksMTcgQEAgdm9pZCBRUXVpY2tXZWJWaWV3OjpoYW5k
bGVGbGlja2FibGVNb3VzZVByZXNzKGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uLCBxaW50NjQgZXYK
IAogdm9pZCBRUXVpY2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZU1vdmUoY29uc3QgUVBv
aW50RiYgcG9zaXRpb24sIHFpbnQ2NCBldmVudFRpbWVzdGFtcE1pbGxpcykKIHsKLSAgICBRTW91
c2VFdmVudCBtb3VzZUV2ZW50KFFFdmVudDo6TW91c2VNb3ZlLCBwb3NpdGlvbiwgUXQ6OkxlZnRC
dXR0b24sIFF0OjpOb0J1dHRvbiwgUXQ6Ok5vTW9kaWZpZXIpOworICAgIFFfRChRUXVpY2tXZWJW
aWV3KTsKKyAgICBRTW91c2VFdmVudCBtb3VzZUV2ZW50KFFFdmVudDo6TW91c2VNb3ZlLCBkLT5h
eGlzTG9ja2VyLmFkanVzdChwb3NpdGlvbiksIFF0OjpMZWZ0QnV0dG9uLCBRdDo6Tm9CdXR0b24s
IFF0OjpOb01vZGlmaWVyKTsKICAgICBtb3VzZUV2ZW50LnNldFRpbWVzdGFtcChldmVudFRpbWVz
dGFtcE1pbGxpcyk7CiAgICAgUVF1aWNrRmxpY2thYmxlOjptb3VzZU1vdmVFdmVudCgmbW91c2VF
dmVudCk7CiB9CiAKIHZvaWQgUVF1aWNrV2ViVmlldzo6aGFuZGxlRmxpY2thYmxlTW91c2VSZWxl
YXNlKGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uLCBxaW50NjQgZXZlbnRUaW1lc3RhbXBNaWxsaXMp
CiB7Ci0gICAgUU1vdXNlRXZlbnQgbW91c2VFdmVudChRRXZlbnQ6Ok1vdXNlQnV0dG9uUmVsZWFz
ZSwgcG9zaXRpb24sIFF0OjpMZWZ0QnV0dG9uLCBRdDo6Tm9CdXR0b24sIFF0OjpOb01vZGlmaWVy
KTsKKyAgICBRX0QoUVF1aWNrV2ViVmlldyk7CisgICAgUU1vdXNlRXZlbnQgbW91c2VFdmVudChR
RXZlbnQ6Ok1vdXNlQnV0dG9uUmVsZWFzZSwgZC0+YXhpc0xvY2tlci5hZGp1c3QocG9zaXRpb24p
LCBRdDo6TGVmdEJ1dHRvbiwgUXQ6Ok5vQnV0dG9uLCBRdDo6Tm9Nb2RpZmllcik7CisgICAgZC0+
YXhpc0xvY2tlci5yZXNldCgpOwogICAgIG1vdXNlRXZlbnQuc2V0VGltZXN0YW1wKGV2ZW50VGlt
ZXN0YW1wTWlsbGlzKTsKICAgICBRUXVpY2tGbGlja2FibGU6Om1vdXNlUmVsZWFzZUV2ZW50KCZt
b3VzZUV2ZW50KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrd2Vidmlld19wX3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cXF1aWNrd2Vidmlld19wX3AuaAppbmRleCBhZDdiMmQwLi4yNjQ0NzYzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgKKysrIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5oCkBAIC0z
NCw2ICszNCw3IEBACiAjaW5jbHVkZSAicXF1aWNrd2Vidmlld19wLmgiCiAjaW5jbHVkZSAicXF1
aWNrd2VicGFnZV9wLmgiCiAKKyNpbmNsdWRlIDxRdENvcmUvUUVsYXBzZWRUaW1lcj4KICNpbmNs
dWRlIDxRdENvcmUvUU9iamVjdD4KICNpbmNsdWRlIDxRdENvcmUvUVNjb3BlZFBvaW50ZXI+CiAj
aW5jbHVkZSA8V2ViQ29yZS9WaWV3cG9ydEFyZ3VtZW50cy5oPgpAQCAtMTM1LDYgKzEzNiwzMyBA
QCBwdWJsaWM6CiAgICAgdm9pZCBoYW5kbGVEb3dubG9hZFJlcXVlc3QoRG93bmxvYWRQcm94eSop
OwogCiBwcm90ZWN0ZWQ6CisgICAgY2xhc3MgQXhpc0xvY2tlciB7CisgICAgICAgIGVudW0gTG9j
a2luZ1N0YXRlIHsKKyAgICAgICAgICAgIEluaXRpYWwsCisgICAgICAgICAgICBTYW1wbGluZywK
KyAgICAgICAgICAgIE5vdExvY2tlZCwKKyAgICAgICAgICAgIEhvcml6b250YWxseUxvY2tlZCwK
KyAgICAgICAgICAgIFZlcnRpY2FsbHlMb2NrZWQKKyAgICAgICAgfTsKKworICAgICAgICBMb2Nr
aW5nU3RhdGUgbV9zdGF0ZTsKKworICAgICAgICBRRWxhcHNlZFRpbWVyIG1fdGltZTsKKyAgICAg
ICAgUVBvaW50RiBtX2luaXRpYWxTY3JlZW5Qb3NpdGlvbjsKKyAgICAgICAgUVBvaW50RiBtX2xv
Y2tSZWZlcmVuY2VQb3NpdGlvbjsKKyAgICAgICAgaW50IG1fc2FtcGxlQ291bnQ7CisKKyAgICAg
ICAgUVZlY3RvcjJEIHRvdWNoVmVsb2NpdHkoY29uc3QgUVRvdWNoRXZlbnQqIGV2ZW50KTsKKwor
ICAgIHB1YmxpYzoKKyAgICAgICAgQXhpc0xvY2tlcigpOworCisgICAgICAgIHZvaWQgdXBkYXRl
KGNvbnN0IFFUb3VjaEV2ZW50KiBldmVudCk7CisgICAgICAgIHZvaWQgc2V0SW5pdGlhbFBvc2l0
aW9uKGNvbnN0IFFQb2ludEYmKTsKKyAgICAgICAgdm9pZCByZXNldCgpOworICAgICAgICBRUG9p
bnRGIGFkanVzdChjb25zdCBRUG9pbnRGJik7CisgICAgfTsKKwogICAgIFFRdWlja1dlYlZpZXdQ
cml2YXRlKFFRdWlja1dlYlZpZXcqIHZpZXdwb3J0KTsKICAgICBSZWZQdHI8UXRXZWJDb250ZXh0
PiBjb250ZXh0OwogICAgIFJlZlB0cjxXZWJLaXQ6OldlYlBhZ2VQcm94eT4gd2ViUGFnZVByb3h5
OwpAQCAtMTUxLDYgKzE3OSw4IEBAIHByb3RlY3RlZDoKICAgICBRU2NvcGVkUG9pbnRlcjxRUXVp
Y2tXZWJQYWdlPiBwYWdlVmlldzsKICAgICBRUXVpY2tXZWJWaWV3KiBxX3B0cjsKIAorICAgIEF4
aXNMb2NrZXIgYXhpc0xvY2tlcjsKKwogICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogYWxlcnRE
aWFsb2c7CiAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb25maXJtRGlhbG9nOwogICAgIFFE
ZWNsYXJhdGl2ZUNvbXBvbmVudCogcHJvbXB0RGlhbG9nOwotLSAKMS43LjEwCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138075</attachid>
            <date>2012-04-20 05:46:46 -0700</date>
            <delta_ts>2012-04-20 11:19:49 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>0001-Qt-WK2-Implement-axis-locking-on-the-WebView-for-pan.patch</filename>
            <type>text/plain</type>
            <size>9658</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSBkZWQ0MDM2NzkxMzQxNzdkOTZmODM3ZDJkYWI5Y2UyYjYyODJjY2YyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CkRhdGU6IFRodSwgMTkgQXByIDIwMTIgMTk6MTM6NDggKzAyMDAKU3ViamVjdDogW1BBVENIXSBb
UXRdW1dLMl0gSW1wbGVtZW50IGF4aXMgbG9ja2luZyBvbiB0aGUgV2ViVmlldyBmb3IgcGFuCiBn
ZXN0dXJlcwoKLS0tCiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMzQgKysrKysrKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3LmNwcCAgfCAgMTAyICsrKysrKysrKysrKysrKysrKystCiAuLi4vV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggICB8ICAgMzAgKysrKysrCiAz
IGZpbGVzIGNoYW5nZWQsIDE2MiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZwppbmRleCBiOTcxYTczLi41Mzk3NTYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIw
MTItMDQtMTkgIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAg
ICAgW1F0XVtXSzJdIEltcGxlbWVudCBheGlzIGxvY2tpbmcgb24gdGhlIFdlYlZpZXcgZm9yIHBh
biBnZXN0dXJlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9ODQzNTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBJZiBhIHBhbiBnZXN0dXJlIGhhcyBzdWZmaWNpZW50IHZlbG9jaXR5IGFsb25nIG9uZSBheGlz
IHRoZSBXZWJWaWV3CisgICAgICAgIHNob3VsZCBhdXRvbWF0aWNhbGx5IGxvY2sgdGhlIHBhZ2Ug
bW92ZW1lbnQgdG8gdGhhdCBheGlzLgorICAgICAgICBUaGlzIGxvY2tpbmcgc2hvdWxkIGJlIG1h
aW50YWluZWQgdW50aWwgdGhlIG9uZ29pbmcgcGFuIGdlc3R1cmUgZW5kcy4KKworICAgICAgICBU
aGlzIHBhdGNoIGltcGxlbWVudHMgYSBzaW1wbGUgYXhpcyBsb2NrZXIgd2hpY2ggYWRqdXN0cyB0
aGUgcG9zaXRpb25zCisgICAgICAgIHNlbnQgdG8gdGhlIEZsaWNrYWJsZSB0byB0aGUgaW5pdGlh
bCByZWZlcmVuY2UgcG9zaXRpb24gYWNjb3JkaW5nIHRvIHRoZQorICAgICAgICBkaXJlY3Rpb24g
YW4gdmVsb2NpdHkgaW5mb3JtYXRpb24gaXQgZ2F0aGVyZWQgZnJvbSBpbmNvbWluZyB0b3VjaCBl
dmVudHMuCisKKyAgICAgICAgVGhlIEF4aXNMb2NrZXIgbWFrZXMgdXNlIG9mIHRoZSB2ZWxvY2l0
eSBpbmZvcm1hdGlvbiBvZiB0aGUgdG91Y2ggcG9pbnQKKyAgICAgICAgaWYgYXZhaWxhYmxlLCBl
bHNlIGFuIGFwcHJveGltYXRlIHZlbG9jaXR5IG9mIHRoZSBpbmNvbWluZyBldmVudCBpcworICAg
ICAgICBjYWxjdWxhdGVkLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2
aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjpBeGlz
TG9ja2VyKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjp0b3Vj
aFZlbG9jaXR5KToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjp1
cGRhdGUpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2NrZXI6OnNldElu
aXRpYWxQb3NpdGlvbik6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6QXhpc0xvY2tl
cjo6cmVzZXQpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2NrZXI6OmFk
anVzdCk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6UVF1aWNrV2ViVmlld1ByaXZh
dGUpOgorICAgICAgICAoUVF1aWNrV2ViVmlldzo6dG91Y2hFdmVudCk6CisgICAgICAgIChRUXVp
Y2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVByZXNzKToKKyAgICAgICAgKFFRdWlja1dl
YlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlTW92ZSk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3
OjpoYW5kbGVGbGlja2FibGVNb3VzZVJlbGVhc2UpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrd2Vidmlld19wX3AuaDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlKToK
KwogMjAxMi0wNC0xOSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+
CiAKICAgICAgICAgW0dUS10gSWdub3JlIHJlc291cmNlcyB3aGlsZSByZXBsYWNpbmcgY29udGVu
dCBpbiBXZWJLaXQyIEdUSysgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCAyYjBjNWY5Li40YzcwMzI5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKQEAgLTQ1
LDggKzQ1LDcgQEAKICNpbmNsdWRlICJxd2Vidmlld3BvcnRpbmZvX3AuaCIKIAogI2luY2x1ZGUg
PEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KLSNpbmNsdWRlIDxRdFFtbC9R
UW1sRW5naW5lPgotI2luY2x1ZGUgPFF0UXVpY2svUVF1aWNrQ2FudmFzPgorI2luY2x1ZGUgPFFE
YXRlVGltZT4KICNpbmNsdWRlIDxXZWJDb3JlL0ludFBvaW50Lmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9JbnRSZWN0Lmg+CiAjaW5jbHVkZSA8V0tPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5oPgpAQCAt
NTcsNiArNTYsOSBAQAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIHN0YXRpYyBib29sIHNf
ZmxpY2thYmxlVmlld3BvcnRFbmFibGVkID0gdHJ1ZTsKK3N0YXRpYyBjb25zdCBpbnQga0F4aXNM
b2NrU2FtcGxlQ291bnQgPSAzOworc3RhdGljIGNvbnN0IHFyZWFsIGtBeGlzTG9ja1ZlbG9jaXR5
VGhyZXNob2xkID0gMTAwOworc3RhdGljIGNvbnN0IHFyZWFsIGtBeGlzTG9ja1ZlbG9jaXR5RGly
ZWN0aW9uVGhyZXNob2xkID0gMzA7CiAKIHN0YXRpYyBRUXVpY2tXZWJWaWV3UHJpdmF0ZSogY3Jl
YXRlUHJpdmF0ZU9iamVjdChRUXVpY2tXZWJWaWV3KiBwdWJsaWNPYmplY3QpCiB7CkBAIC02NSw2
ICs2Nyw4MyBAQCBzdGF0aWMgUVF1aWNrV2ViVmlld1ByaXZhdGUqIGNyZWF0ZVByaXZhdGVPYmpl
Y3QoUVF1aWNrV2ViVmlldyogcHVibGljT2JqZWN0KQogICAgIHJldHVybiBuZXcgUVF1aWNrV2Vi
Vmlld0xlZ2FjeVByaXZhdGUocHVibGljT2JqZWN0KTsKIH0KIAorUVF1aWNrV2ViVmlld1ByaXZh
dGU6OkF4aXNMb2NrZXI6OkF4aXNMb2NrZXIoKQorICAgIDogbV9zdGF0ZShJbml0aWFsKQorICAg
ICwgbV9zYW1wbGVDb3VudCgwKQoreworfQorCitRVmVjdG9yMkQgUVF1aWNrV2ViVmlld1ByaXZh
dGU6OkF4aXNMb2NrZXI6OnRvdWNoVmVsb2NpdHkoY29uc3QgUVRvdWNoRXZlbnQqIGV2ZW50KQor
eworICAgIHN0YXRpYyBib29sIHRvdWNoVmVsb2NpdHlBdmFpbGFibGUgPSBldmVudC0+ZGV2aWNl
KCktPmNhcGFiaWxpdGllcygpLnRlc3RGbGFnKFFUb3VjaERldmljZTo6VmVsb2NpdHkpOworICAg
IGNvbnN0IFFUb3VjaEV2ZW50OjpUb3VjaFBvaW50JiB0b3VjaFBvaW50ID0gZXZlbnQtPnRvdWNo
UG9pbnRzKCkuZmlyc3QoKTsKKworICAgIGlmICh0b3VjaFZlbG9jaXR5QXZhaWxhYmxlKQorICAg
ICAgICByZXR1cm4gdG91Y2hQb2ludC52ZWxvY2l0eSgpOworCisgICAgY29uc3QgUUxpbmVGIG1v
dmVtZW50TGluZSh0b3VjaFBvaW50LnNjcmVlblBvcygpLCBtX2luaXRpYWxTY3JlZW5Qb3NpdGlv
bik7CisgICAgY29uc3QgcWludDY0IGVsYXBzZWQgPSBtX3RpbWUuZWxhcHNlZCgpOworCisgICAg
aWYgKCFlbGFwc2VkKQorICAgICAgICByZXR1cm4gUVZlY3RvcjJEKDAsIDApOworCisgICAgLy8g
Q2FsY3VsYXRlIGFuIGFwcHJveGltYXRlIHZlbG9jaXR5IHZlY3RvciBpbiB0aGUgdW5pdCBvZiBw
aXhlbCAvIHNlY29uZC4KKyAgICByZXR1cm4gUVZlY3RvcjJEKDEwMDAgKiBtb3ZlbWVudExpbmUu
ZHgoKSAvIGVsYXBzZWQsIDEwMDAgKiBtb3ZlbWVudExpbmUuZHkoKSAvIGVsYXBzZWQpOworfQor
Cit2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpBeGlzTG9ja2VyOjp1cGRhdGUoY29uc3QgUVRv
dWNoRXZlbnQqIGV2ZW50KQoreworICAgIEFTU0VSVChldmVudC0+dG91Y2hQb2ludHMoKS5zaXpl
KCkgPT0gMSk7CisgICAgY29uc3QgUVRvdWNoRXZlbnQ6OlRvdWNoUG9pbnQmIHRvdWNoUG9pbnQg
PSBldmVudC0+dG91Y2hQb2ludHMoKS5maXJzdCgpOworCisgICAgaWYgKG1fc3RhdGUgPT0gSW5p
dGlhbCkgeworICAgICAgICBtX2luaXRpYWxTY3JlZW5Qb3NpdGlvbiA9IHRvdWNoUG9pbnQuc2Ny
ZWVuUG9zKCk7CisgICAgICAgIG1fdGltZS5yZXN0YXJ0KCk7CisgICAgICAgIG1fc3RhdGUgPSBT
YW1wbGluZzsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChtX3N0YXRlICE9IFNh
bXBsaW5nKQorICAgICAgICByZXR1cm47CisKKyAgICBRVmVjdG9yMkQgdmVsb2NpdHkgPSB0b3Vj
aFZlbG9jaXR5KGV2ZW50KTsKKworICAgIHFyZWFsIGRpcmVjdGlvbkluZGljYXRvciA9IHFBYnMo
dmVsb2NpdHkueCgpKSAtIHFBYnModmVsb2NpdHkueSgpKTsKKworICAgIC8vIERpc2NhcmQgdGhl
IGN1cnJlbnQgc2FtcGxlIGlmIHRoZSBkaXJlY3Rpb24gaXMgbm90IGNvbmNsdXNpdmUgeWV0Lgor
ICAgIGlmIChxQWJzKGRpcmVjdGlvbkluZGljYXRvcikgPCBrQXhpc0xvY2tWZWxvY2l0eURpcmVj
dGlvblRocmVzaG9sZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKHZlbG9jaXR5Lmxlbmd0
aCgpID4ga0F4aXNMb2NrVmVsb2NpdHlUaHJlc2hvbGQpCisgICAgICAgIG1fc3RhdGUgPSAoZGly
ZWN0aW9uSW5kaWNhdG9yID4gMCkgPyBIb3Jpem9udGFsbHlMb2NrZWQgOiBWZXJ0aWNhbGx5TG9j
a2VkOworICAgIGVsc2UgaWYgKG1fc2FtcGxlQ291bnQgPiBrQXhpc0xvY2tTYW1wbGVDb3VudCkK
KyAgICAgICAgbV9zdGF0ZSA9IE5vdExvY2tlZDsKKworICAgICsrbV9zYW1wbGVDb3VudDsKK30K
Kwordm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6QXhpc0xvY2tlcjo6c2V0SW5pdGlhbFBvc2l0
aW9uKGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uKQoreworICAgIG1fbG9ja1JlZmVyZW5jZVBvc2l0
aW9uID0gcG9zaXRpb247Cit9CisKK3ZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OkF4aXNMb2Nr
ZXI6OnJlc2V0KCkKK3sKKyAgICBtX3N0YXRlID0gSW5pdGlhbDsKKyAgICBtX3NhbXBsZUNvdW50
ID0gMDsKK30KKworUVBvaW50RiBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6QXhpc0xvY2tlcjo6YWRq
dXN0KGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uKQoreworICAgIGlmIChtX3N0YXRlID09IEhvcml6
b250YWxseUxvY2tlZCkKKyAgICAgICAgcmV0dXJuIFFQb2ludEYocG9zaXRpb24ueCgpLCBtX2xv
Y2tSZWZlcmVuY2VQb3NpdGlvbi55KCkpOworCisgICAgaWYgKG1fc3RhdGUgPT0gVmVydGljYWxs
eUxvY2tlZCkKKyAgICAgICAgcmV0dXJuIFFQb2ludEYobV9sb2NrUmVmZXJlbmNlUG9zaXRpb24u
eCgpLCBwb3NpdGlvbi55KCkpOworCisgICAgcmV0dXJuIHBvc2l0aW9uOworfQorCiBRUXVpY2tX
ZWJWaWV3UHJpdmF0ZTo6UVF1aWNrV2ViVmlld1ByaXZhdGUoUVF1aWNrV2ViVmlldyogdmlld3Bv
cnQpCiAgICAgOiBxX3B0cih2aWV3cG9ydCkKICAgICAsIGFsZXJ0RGlhbG9nKDApCkBAIC0xMjk2
LDYgKzEzNzUsMTYgQEAgdm9pZCBRUXVpY2tXZWJWaWV3Ojp0b3VjaEV2ZW50KFFUb3VjaEV2ZW50
KiBldmVudCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIGJvb2wgbG9ja2luZ0Rpc2Fi
bGVkID0gZmxpY2thYmxlRGlyZWN0aW9uKCkgIT0gQXV0b0ZsaWNrRGlyZWN0aW9uCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8fCBldmVudC0+dG91Y2hQb2ludHMoKS5zaXplKCkgIT0gMQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgd2lkdGgoKSA+PSBjb250ZW50V2lkdGgoKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgaGVpZ2h0KCkgPj0gY29udGVudEhlaWdodCgp
OworCisgICAgaWYgKCFsb2NraW5nRGlzYWJsZWQpCisgICAgICAgIGQtPmF4aXNMb2NrZXIudXBk
YXRlKGV2ZW50KTsKKyAgICBlbHNlCisgICAgICAgIGQtPmF4aXNMb2NrZXIucmVzZXQoKTsKKwog
ICAgIGZvcmNlQWN0aXZlRm9jdXMoKTsKICAgICBkLT5wYWdlVmlldy0+ZXZlbnRIYW5kbGVyKCkt
PmhhbmRsZVRvdWNoRXZlbnQoZXZlbnQpOwogfQpAQCAtMTQwMiw2ICsxNDkxLDggQEAgdm9pZCBR
UXVpY2tXZWJWaWV3OjpzZXRDb250ZW50UG9zKGNvbnN0IFFQb2ludEYmIHBvcykKIAogdm9pZCBR
UXVpY2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVByZXNzKGNvbnN0IFFQb2ludEYmIHBv
c2l0aW9uLCBxaW50NjQgZXZlbnRUaW1lc3RhbXBNaWxsaXMpCiB7CisgICAgUV9EKFFRdWlja1dl
YlZpZXcpOworICAgIGQtPmF4aXNMb2NrZXIuc2V0SW5pdGlhbFBvc2l0aW9uKHBvc2l0aW9uKTsK
ICAgICBRTW91c2VFdmVudCBtb3VzZUV2ZW50KFFFdmVudDo6TW91c2VCdXR0b25QcmVzcywgcG9z
aXRpb24sIFF0OjpMZWZ0QnV0dG9uLCBRdDo6Tm9CdXR0b24sIFF0OjpOb01vZGlmaWVyKTsKICAg
ICBtb3VzZUV2ZW50LnNldFRpbWVzdGFtcChldmVudFRpbWVzdGFtcE1pbGxpcyk7CiAgICAgUVF1
aWNrRmxpY2thYmxlOjptb3VzZVByZXNzRXZlbnQoJm1vdXNlRXZlbnQpOwpAQCAtMTQwOSwxNCAr
MTUwMCwxNyBAQCB2b2lkIFFRdWlja1dlYlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlUHJlc3Mo
Y29uc3QgUVBvaW50RiYgcG9zaXRpb24sIHFpbnQ2NCBldgogCiB2b2lkIFFRdWlja1dlYlZpZXc6
OmhhbmRsZUZsaWNrYWJsZU1vdXNlTW92ZShjb25zdCBRUG9pbnRGJiBwb3NpdGlvbiwgcWludDY0
IGV2ZW50VGltZXN0YW1wTWlsbGlzKQogewotICAgIFFNb3VzZUV2ZW50IG1vdXNlRXZlbnQoUUV2
ZW50OjpNb3VzZU1vdmUsIHBvc2l0aW9uLCBRdDo6TGVmdEJ1dHRvbiwgUXQ6Ok5vQnV0dG9uLCBR
dDo6Tm9Nb2RpZmllcik7CisgICAgUV9EKFFRdWlja1dlYlZpZXcpOworICAgIFFNb3VzZUV2ZW50
IG1vdXNlRXZlbnQoUUV2ZW50OjpNb3VzZU1vdmUsIGQtPmF4aXNMb2NrZXIuYWRqdXN0KHBvc2l0
aW9uKSwgUXQ6OkxlZnRCdXR0b24sIFF0OjpOb0J1dHRvbiwgUXQ6Ok5vTW9kaWZpZXIpOwogICAg
IG1vdXNlRXZlbnQuc2V0VGltZXN0YW1wKGV2ZW50VGltZXN0YW1wTWlsbGlzKTsKICAgICBRUXVp
Y2tGbGlja2FibGU6Om1vdXNlTW92ZUV2ZW50KCZtb3VzZUV2ZW50KTsKIH0KIAogdm9pZCBRUXVp
Y2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVJlbGVhc2UoY29uc3QgUVBvaW50RiYgcG9z
aXRpb24sIHFpbnQ2NCBldmVudFRpbWVzdGFtcE1pbGxpcykKIHsKLSAgICBRTW91c2VFdmVudCBt
b3VzZUV2ZW50KFFFdmVudDo6TW91c2VCdXR0b25SZWxlYXNlLCBwb3NpdGlvbiwgUXQ6OkxlZnRC
dXR0b24sIFF0OjpOb0J1dHRvbiwgUXQ6Ok5vTW9kaWZpZXIpOworICAgIFFfRChRUXVpY2tXZWJW
aWV3KTsKKyAgICBRTW91c2VFdmVudCBtb3VzZUV2ZW50KFFFdmVudDo6TW91c2VCdXR0b25SZWxl
YXNlLCBkLT5heGlzTG9ja2VyLmFkanVzdChwb3NpdGlvbiksIFF0OjpMZWZ0QnV0dG9uLCBRdDo6
Tm9CdXR0b24sIFF0OjpOb01vZGlmaWVyKTsKKyAgICBkLT5heGlzTG9ja2VyLnJlc2V0KCk7CiAg
ICAgbW91c2VFdmVudC5zZXRUaW1lc3RhbXAoZXZlbnRUaW1lc3RhbXBNaWxsaXMpOwogICAgIFFR
dWlja0ZsaWNrYWJsZTo6bW91c2VSZWxlYXNlRXZlbnQoJm1vdXNlRXZlbnQpOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5o
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5oCmlu
ZGV4IGFkN2IyZDAuLjI2NDQ3NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRl
ICJxcXVpY2t3ZWJ2aWV3X3AuaCIKICNpbmNsdWRlICJxcXVpY2t3ZWJwYWdlX3AuaCIKIAorI2lu
Y2x1ZGUgPFF0Q29yZS9RRWxhcHNlZFRpbWVyPgogI2luY2x1ZGUgPFF0Q29yZS9RT2JqZWN0Pgog
I2luY2x1ZGUgPFF0Q29yZS9RU2NvcGVkUG9pbnRlcj4KICNpbmNsdWRlIDxXZWJDb3JlL1ZpZXdw
b3J0QXJndW1lbnRzLmg+CkBAIC0xMzUsNiArMTM2LDMzIEBAIHB1YmxpYzoKICAgICB2b2lkIGhh
bmRsZURvd25sb2FkUmVxdWVzdChEb3dubG9hZFByb3h5Kik7CiAKIHByb3RlY3RlZDoKKyAgICBj
bGFzcyBBeGlzTG9ja2VyIHsKKyAgICAgICAgZW51bSBMb2NraW5nU3RhdGUgeworICAgICAgICAg
ICAgSW5pdGlhbCwKKyAgICAgICAgICAgIFNhbXBsaW5nLAorICAgICAgICAgICAgTm90TG9ja2Vk
LAorICAgICAgICAgICAgSG9yaXpvbnRhbGx5TG9ja2VkLAorICAgICAgICAgICAgVmVydGljYWxs
eUxvY2tlZAorICAgICAgICB9OworCisgICAgICAgIExvY2tpbmdTdGF0ZSBtX3N0YXRlOworCisg
ICAgICAgIFFFbGFwc2VkVGltZXIgbV90aW1lOworICAgICAgICBRUG9pbnRGIG1faW5pdGlhbFNj
cmVlblBvc2l0aW9uOworICAgICAgICBRUG9pbnRGIG1fbG9ja1JlZmVyZW5jZVBvc2l0aW9uOwor
ICAgICAgICBpbnQgbV9zYW1wbGVDb3VudDsKKworICAgICAgICBRVmVjdG9yMkQgdG91Y2hWZWxv
Y2l0eShjb25zdCBRVG91Y2hFdmVudCogZXZlbnQpOworCisgICAgcHVibGljOgorICAgICAgICBB
eGlzTG9ja2VyKCk7CisKKyAgICAgICAgdm9pZCB1cGRhdGUoY29uc3QgUVRvdWNoRXZlbnQqIGV2
ZW50KTsKKyAgICAgICAgdm9pZCBzZXRJbml0aWFsUG9zaXRpb24oY29uc3QgUVBvaW50RiYpOwor
ICAgICAgICB2b2lkIHJlc2V0KCk7CisgICAgICAgIFFQb2ludEYgYWRqdXN0KGNvbnN0IFFQb2lu
dEYmKTsKKyAgICB9OworCiAgICAgUVF1aWNrV2ViVmlld1ByaXZhdGUoUVF1aWNrV2ViVmlldyog
dmlld3BvcnQpOwogICAgIFJlZlB0cjxRdFdlYkNvbnRleHQ+IGNvbnRleHQ7CiAgICAgUmVmUHRy
PFdlYktpdDo6V2ViUGFnZVByb3h5PiB3ZWJQYWdlUHJveHk7CkBAIC0xNTEsNiArMTc5LDggQEAg
cHJvdGVjdGVkOgogICAgIFFTY29wZWRQb2ludGVyPFFRdWlja1dlYlBhZ2U+IHBhZ2VWaWV3Owog
ICAgIFFRdWlja1dlYlZpZXcqIHFfcHRyOwogCisgICAgQXhpc0xvY2tlciBheGlzTG9ja2VyOwor
CiAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBhbGVydERpYWxvZzsKICAgICBRRGVjbGFyYXRp
dmVDb21wb25lbnQqIGNvbmZpcm1EaWFsb2c7CiAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBw
cm9tcHREaWFsb2c7Ci0tIAoxLjcuMTAKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138124</attachid>
            <date>2012-04-20 11:19:49 -0700</date>
            <delta_ts>2012-04-20 12:15:26 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>0001-Qt-WK2-Implement-axis-locking-on-the-WebView-for-pan.patch</filename>
            <type>text/plain</type>
            <size>9673</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSBmNjg0ZTg1YWZjMzU3ZjNjZWU2NDBmMjE4YzFmYTdlZjM5NDBmYWNiIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CkRhdGU6IFRodSwgMTkgQXByIDIwMTIgMTk6MTM6NDggKzAyMDAKU3ViamVjdDogW1BBVENIXSBb
UXRdW1dLMl0gSW1wbGVtZW50IGF4aXMgbG9ja2luZyBvbiB0aGUgV2ViVmlldyBmb3IgcGFuCiBn
ZXN0dXJlcwoKLS0tCiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMzQgKysrKysrKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3LmNwcCAgfCAgIDk2ICsrKysrKysrKysrKysrKysrKystCiAuLi4vV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggICB8ICAgMjkgKysrKysrCiAz
IGZpbGVzIGNoYW5nZWQsIDE1NSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZwppbmRleCBiOTcxYTczLi4yM2NiZTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIw
MTItMDQtMTkgIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAg
ICAgW1F0XVtXSzJdIEltcGxlbWVudCBheGlzIGxvY2tpbmcgb24gdGhlIFdlYlZpZXcgZm9yIHBh
biBnZXN0dXJlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9ODQzNTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBJZiBhIHBhbiBnZXN0dXJlIGhhcyBzdWZmaWNpZW50IHZlbG9jaXR5IGFsb25nIG9uZSBheGlz
IHRoZSBXZWJWaWV3CisgICAgICAgIHNob3VsZCBhdXRvbWF0aWNhbGx5IGxvY2sgdGhlIHBhZ2Ug
bW92ZW1lbnQgdG8gdGhhdCBheGlzLgorICAgICAgICBUaGlzIGxvY2tpbmcgc2hvdWxkIGJlIG1h
aW50YWluZWQgdW50aWwgdGhlIG9uZ29pbmcgcGFuIGdlc3R1cmUgZW5kcy4KKworICAgICAgICBU
aGlzIHBhdGNoIGltcGxlbWVudHMgYSBzaW1wbGUgYXhpcyBsb2NrZXIgd2hpY2ggYWRqdXN0cyB0
aGUgcG9zaXRpb25zCisgICAgICAgIHNlbnQgdG8gdGhlIEZsaWNrYWJsZSB0byB0aGUgaW5pdGlh
bCByZWZlcmVuY2UgcG9zaXRpb24gYWNjb3JkaW5nIHRvIHRoZQorICAgICAgICBkaXJlY3Rpb24g
YW4gdmVsb2NpdHkgaW5mb3JtYXRpb24gaXQgZ2F0aGVyZWQgZnJvbSBpbmNvbWluZyB0b3VjaCBl
dmVudHMuCisKKyAgICAgICAgVGhlIEZsaWNrYWJsZUF4aXNMb2NrZXIgbWFrZXMgdXNlIG9mIHRo
ZSB2ZWxvY2l0eSBpbmZvcm1hdGlvbiBvZiB0aGUgdG91Y2ggcG9pbnQKKyAgICAgICAgaWYgYXZh
aWxhYmxlLCBlbHNlIGFuIGFwcHJveGltYXRlIHZlbG9jaXR5IG9mIHRoZSBpbmNvbWluZyBldmVu
dCBpcworICAgICAgICBjYWxjdWxhdGVkLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpGbGlja2Fi
bGVBeGlzTG9ja2VyOjpGbGlja2FibGVBeGlzTG9ja2VyKToKKyAgICAgICAgKFFRdWlja1dlYlZp
ZXdQcml2YXRlOjpGbGlja2FibGVBeGlzTG9ja2VyOjp0b3VjaFZlbG9jaXR5KToKKyAgICAgICAg
KFFRdWlja1dlYlZpZXdQcml2YXRlOjpGbGlja2FibGVBeGlzTG9ja2VyOjp1cGRhdGUpOgorICAg
ICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OnNldEluaXRp
YWxQb3NpdGlvbik6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6RmxpY2thYmxlQXhp
c0xvY2tlcjo6cmVzZXQpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJs
ZUF4aXNMb2NrZXI6OmFkanVzdCk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6UVF1
aWNrV2ViVmlld1ByaXZhdGUpOgorICAgICAgICAoUVF1aWNrV2ViVmlldzo6dG91Y2hFdmVudCk6
CisgICAgICAgIChRUXVpY2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVByZXNzKToKKyAg
ICAgICAgKFFRdWlja1dlYlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlTW92ZSk6CisgICAgICAg
IChRUXVpY2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVJlbGVhc2UpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaDoKKyAgICAgICAgKFFRdWlja1dl
YlZpZXdQcml2YXRlKToKKwogMjAxMi0wNC0xOSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2Fy
Y2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gSWdub3JlIHJlc291cmNlcyB3aGlsZSBy
ZXBsYWNpbmcgY29udGVudCBpbiBXZWJLaXQyIEdUSysgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCAyYjBjNWY5Li44YTQy
NTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dl
YnZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vi
dmlldy5jcHAKQEAgLTQ1LDggKzQ1LDcgQEAKICNpbmNsdWRlICJxd2Vidmlld3BvcnRpbmZvX3Au
aCIKIAogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KLSNp
bmNsdWRlIDxRdFFtbC9RUW1sRW5naW5lPgotI2luY2x1ZGUgPFF0UXVpY2svUVF1aWNrQ2FudmFz
PgorI2luY2x1ZGUgPFFEYXRlVGltZT4KICNpbmNsdWRlIDxXZWJDb3JlL0ludFBvaW50Lmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9JbnRSZWN0Lmg+CiAjaW5jbHVkZSA8V0tPcGVuUGFuZWxSZXN1bHRM
aXN0ZW5lci5oPgpAQCAtNTcsNiArNTYsOSBAQAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAK
IHN0YXRpYyBib29sIHNfZmxpY2thYmxlVmlld3BvcnRFbmFibGVkID0gdHJ1ZTsKK3N0YXRpYyBj
b25zdCBpbnQga0F4aXNMb2NrU2FtcGxlQ291bnQgPSA1Oworc3RhdGljIGNvbnN0IHFyZWFsIGtB
eGlzTG9ja1ZlbG9jaXR5VGhyZXNob2xkID0gMzAwOworc3RhdGljIGNvbnN0IHFyZWFsIGtBeGlz
TG9ja1ZlbG9jaXR5RGlyZWN0aW9uVGhyZXNob2xkID0gNTA7CiAKIHN0YXRpYyBRUXVpY2tXZWJW
aWV3UHJpdmF0ZSogY3JlYXRlUHJpdmF0ZU9iamVjdChRUXVpY2tXZWJWaWV3KiBwdWJsaWNPYmpl
Y3QpCiB7CkBAIC02NSw2ICs2Nyw3NyBAQCBzdGF0aWMgUVF1aWNrV2ViVmlld1ByaXZhdGUqIGNy
ZWF0ZVByaXZhdGVPYmplY3QoUVF1aWNrV2ViVmlldyogcHVibGljT2JqZWN0KQogICAgIHJldHVy
biBuZXcgUVF1aWNrV2ViVmlld0xlZ2FjeVByaXZhdGUocHVibGljT2JqZWN0KTsKIH0KIAorUVF1
aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OkZsaWNrYWJsZUF4aXNMb2Nr
ZXIoKQorICAgIDogbV9zdGF0ZShVbmRlZmluZWQpCisgICAgLCBtX3NhbXBsZUNvdW50KDApCit7
Cit9CisKK1FWZWN0b3IyRCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6RmxpY2thYmxlQXhpc0xvY2tl
cjo6dG91Y2hWZWxvY2l0eShjb25zdCBRVG91Y2hFdmVudCogZXZlbnQpCit7CisgICAgc3RhdGlj
IGJvb2wgdG91Y2hWZWxvY2l0eUF2YWlsYWJsZSA9IGV2ZW50LT5kZXZpY2UoKS0+Y2FwYWJpbGl0
aWVzKCkudGVzdEZsYWcoUVRvdWNoRGV2aWNlOjpWZWxvY2l0eSk7CisgICAgY29uc3QgUVRvdWNo
RXZlbnQ6OlRvdWNoUG9pbnQmIHRvdWNoUG9pbnQgPSBldmVudC0+dG91Y2hQb2ludHMoKS5maXJz
dCgpOworCisgICAgaWYgKHRvdWNoVmVsb2NpdHlBdmFpbGFibGUpCisgICAgICAgIHJldHVybiB0
b3VjaFBvaW50LnZlbG9jaXR5KCk7CisKKyAgICBjb25zdCBRTGluZUYgbW92ZW1lbnRMaW5lKHRv
dWNoUG9pbnQuc2NyZWVuUG9zKCksIG1faW5pdGlhbFNjcmVlblBvc2l0aW9uKTsKKyAgICBjb25z
dCBxaW50NjQgZWxhcHNlZCA9IG1fdGltZS5lbGFwc2VkKCk7CisKKyAgICBpZiAoIWVsYXBzZWQp
CisgICAgICAgIHJldHVybiBRVmVjdG9yMkQoMCwgMCk7CisKKyAgICAvLyBDYWxjdWxhdGUgYW4g
YXBwcm94aW1hdGUgdmVsb2NpdHkgdmVjdG9yIGluIHRoZSB1bml0IG9mIHBpeGVsIC8gc2Vjb25k
LgorICAgIHJldHVybiBRVmVjdG9yMkQoMTAwMCAqIG1vdmVtZW50TGluZS5keCgpIC8gZWxhcHNl
ZCwgMTAwMCAqIG1vdmVtZW50TGluZS5keSgpIC8gZWxhcHNlZCk7Cit9CisKK3ZvaWQgUVF1aWNr
V2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OnVwZGF0ZShjb25zdCBRVG91Y2hF
dmVudCogZXZlbnQpCit7CisgICAgQVNTRVJUKGV2ZW50LT50b3VjaFBvaW50cygpLnNpemUoKSA9
PSAxKTsKKyAgICBjb25zdCBRVG91Y2hFdmVudDo6VG91Y2hQb2ludCYgdG91Y2hQb2ludCA9IGV2
ZW50LT50b3VjaFBvaW50cygpLmZpcnN0KCk7CisKKyAgICBpZiAoIW1fc2FtcGxlQ291bnQpIHsK
KyAgICAgICAgbV9pbml0aWFsU2NyZWVuUG9zaXRpb24gPSB0b3VjaFBvaW50LnNjcmVlblBvcygp
OworICAgICAgICBtX3RpbWUucmVzdGFydCgpOworICAgIH0KKworICAgIGlmIChtX3N0YXRlICE9
IFVuZGVmaW5lZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgUVZlY3RvcjJEIHZlbG9jaXR5ID0g
dG91Y2hWZWxvY2l0eShldmVudCk7CisKKyAgICBxcmVhbCBkaXJlY3Rpb25JbmRpY2F0b3IgPSBx
QWJzKHZlbG9jaXR5LngoKSkgLSBxQWJzKHZlbG9jaXR5LnkoKSk7CisKKyAgICBpZiAodmVsb2Np
dHkubGVuZ3RoKCkgPiBrQXhpc0xvY2tWZWxvY2l0eVRocmVzaG9sZCAmJiBxQWJzKGRpcmVjdGlv
bkluZGljYXRvcikgPiBrQXhpc0xvY2tWZWxvY2l0eURpcmVjdGlvblRocmVzaG9sZCkKKyAgICAg
ICAgbV9zdGF0ZSA9IChkaXJlY3Rpb25JbmRpY2F0b3IgPiAwKSA/IEhvcml6b250YWxseUxvY2tl
ZCA6IFZlcnRpY2FsbHlMb2NrZWQ7CisgICAgZWxzZSBpZiAobV9zYW1wbGVDb3VudCA+IGtBeGlz
TG9ja1NhbXBsZUNvdW50KQorICAgICAgICBtX3N0YXRlID0gVW5sb2NrZWQ7CisKKyAgICArK21f
c2FtcGxlQ291bnQ7Cit9CisKK3ZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4
aXNMb2NrZXI6OnNldEluaXRpYWxQb3NpdGlvbihjb25zdCBRUG9pbnRGJiBwb3NpdGlvbikKK3sK
KyAgICBtX2xvY2tSZWZlcmVuY2VQb3NpdGlvbiA9IHBvc2l0aW9uOworfQorCit2b2lkIFFRdWlj
a1dlYlZpZXdQcml2YXRlOjpGbGlja2FibGVBeGlzTG9ja2VyOjpyZXNldCgpCit7CisgICAgbV9z
dGF0ZSA9IFVuZGVmaW5lZDsKKyAgICBtX3NhbXBsZUNvdW50ID0gMDsKK30KKworUVBvaW50RiBR
UXVpY2tXZWJWaWV3UHJpdmF0ZTo6RmxpY2thYmxlQXhpc0xvY2tlcjo6YWRqdXN0KGNvbnN0IFFQ
b2ludEYmIHBvc2l0aW9uKQoreworICAgIGlmIChtX3N0YXRlID09IEhvcml6b250YWxseUxvY2tl
ZCkKKyAgICAgICAgcmV0dXJuIFFQb2ludEYocG9zaXRpb24ueCgpLCBtX2xvY2tSZWZlcmVuY2VQ
b3NpdGlvbi55KCkpOworCisgICAgaWYgKG1fc3RhdGUgPT0gVmVydGljYWxseUxvY2tlZCkKKyAg
ICAgICAgcmV0dXJuIFFQb2ludEYobV9sb2NrUmVmZXJlbmNlUG9zaXRpb24ueCgpLCBwb3NpdGlv
bi55KCkpOworCisgICAgcmV0dXJuIHBvc2l0aW9uOworfQorCiBRUXVpY2tXZWJWaWV3UHJpdmF0
ZTo6UVF1aWNrV2ViVmlld1ByaXZhdGUoUVF1aWNrV2ViVmlldyogdmlld3BvcnQpCiAgICAgOiBx
X3B0cih2aWV3cG9ydCkKICAgICAsIGFsZXJ0RGlhbG9nKDApCkBAIC0xMjk2LDYgKzEzNjksMTYg
QEAgdm9pZCBRUXVpY2tXZWJWaWV3Ojp0b3VjaEV2ZW50KFFUb3VjaEV2ZW50KiBldmVudCkKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIGJvb2wgbG9ja2luZ0Rpc2FibGVkID0gZmxpY2th
YmxlRGlyZWN0aW9uKCkgIT0gQXV0b0ZsaWNrRGlyZWN0aW9uCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8fCBldmVudC0+dG91Y2hQb2ludHMoKS5zaXplKCkgIT0gMQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfHwgd2lkdGgoKSA+PSBjb250ZW50V2lkdGgoKQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfHwgaGVpZ2h0KCkgPj0gY29udGVudEhlaWdodCgpOworCisgICAgaWYg
KCFsb2NraW5nRGlzYWJsZWQpCisgICAgICAgIGQtPmF4aXNMb2NrZXIudXBkYXRlKGV2ZW50KTsK
KyAgICBlbHNlCisgICAgICAgIGQtPmF4aXNMb2NrZXIucmVzZXQoKTsKKwogICAgIGZvcmNlQWN0
aXZlRm9jdXMoKTsKICAgICBkLT5wYWdlVmlldy0+ZXZlbnRIYW5kbGVyKCktPmhhbmRsZVRvdWNo
RXZlbnQoZXZlbnQpOwogfQpAQCAtMTQwMiw2ICsxNDg1LDggQEAgdm9pZCBRUXVpY2tXZWJWaWV3
OjpzZXRDb250ZW50UG9zKGNvbnN0IFFQb2ludEYmIHBvcykKIAogdm9pZCBRUXVpY2tXZWJWaWV3
OjpoYW5kbGVGbGlja2FibGVNb3VzZVByZXNzKGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uLCBxaW50
NjQgZXZlbnRUaW1lc3RhbXBNaWxsaXMpCiB7CisgICAgUV9EKFFRdWlja1dlYlZpZXcpOworICAg
IGQtPmF4aXNMb2NrZXIuc2V0SW5pdGlhbFBvc2l0aW9uKHBvc2l0aW9uKTsKICAgICBRTW91c2VF
dmVudCBtb3VzZUV2ZW50KFFFdmVudDo6TW91c2VCdXR0b25QcmVzcywgcG9zaXRpb24sIFF0OjpM
ZWZ0QnV0dG9uLCBRdDo6Tm9CdXR0b24sIFF0OjpOb01vZGlmaWVyKTsKICAgICBtb3VzZUV2ZW50
LnNldFRpbWVzdGFtcChldmVudFRpbWVzdGFtcE1pbGxpcyk7CiAgICAgUVF1aWNrRmxpY2thYmxl
Ojptb3VzZVByZXNzRXZlbnQoJm1vdXNlRXZlbnQpOwpAQCAtMTQwOSwxNCArMTQ5NCwxNyBAQCB2
b2lkIFFRdWlja1dlYlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlUHJlc3MoY29uc3QgUVBvaW50
RiYgcG9zaXRpb24sIHFpbnQ2NCBldgogCiB2b2lkIFFRdWlja1dlYlZpZXc6OmhhbmRsZUZsaWNr
YWJsZU1vdXNlTW92ZShjb25zdCBRUG9pbnRGJiBwb3NpdGlvbiwgcWludDY0IGV2ZW50VGltZXN0
YW1wTWlsbGlzKQogewotICAgIFFNb3VzZUV2ZW50IG1vdXNlRXZlbnQoUUV2ZW50OjpNb3VzZU1v
dmUsIHBvc2l0aW9uLCBRdDo6TGVmdEJ1dHRvbiwgUXQ6Ok5vQnV0dG9uLCBRdDo6Tm9Nb2RpZmll
cik7CisgICAgUV9EKFFRdWlja1dlYlZpZXcpOworICAgIFFNb3VzZUV2ZW50IG1vdXNlRXZlbnQo
UUV2ZW50OjpNb3VzZU1vdmUsIGQtPmF4aXNMb2NrZXIuYWRqdXN0KHBvc2l0aW9uKSwgUXQ6Okxl
ZnRCdXR0b24sIFF0OjpOb0J1dHRvbiwgUXQ6Ok5vTW9kaWZpZXIpOwogICAgIG1vdXNlRXZlbnQu
c2V0VGltZXN0YW1wKGV2ZW50VGltZXN0YW1wTWlsbGlzKTsKICAgICBRUXVpY2tGbGlja2FibGU6
Om1vdXNlTW92ZUV2ZW50KCZtb3VzZUV2ZW50KTsKIH0KIAogdm9pZCBRUXVpY2tXZWJWaWV3Ojpo
YW5kbGVGbGlja2FibGVNb3VzZVJlbGVhc2UoY29uc3QgUVBvaW50RiYgcG9zaXRpb24sIHFpbnQ2
NCBldmVudFRpbWVzdGFtcE1pbGxpcykKIHsKLSAgICBRTW91c2VFdmVudCBtb3VzZUV2ZW50KFFF
dmVudDo6TW91c2VCdXR0b25SZWxlYXNlLCBwb3NpdGlvbiwgUXQ6OkxlZnRCdXR0b24sIFF0OjpO
b0J1dHRvbiwgUXQ6Ok5vTW9kaWZpZXIpOworICAgIFFfRChRUXVpY2tXZWJWaWV3KTsKKyAgICBR
TW91c2VFdmVudCBtb3VzZUV2ZW50KFFFdmVudDo6TW91c2VCdXR0b25SZWxlYXNlLCBkLT5heGlz
TG9ja2VyLmFkanVzdChwb3NpdGlvbiksIFF0OjpMZWZ0QnV0dG9uLCBRdDo6Tm9CdXR0b24sIFF0
OjpOb01vZGlmaWVyKTsKKyAgICBkLT5heGlzTG9ja2VyLnJlc2V0KCk7CiAgICAgbW91c2VFdmVu
dC5zZXRUaW1lc3RhbXAoZXZlbnRUaW1lc3RhbXBNaWxsaXMpOwogICAgIFFRdWlja0ZsaWNrYWJs
ZTo6bW91c2VSZWxlYXNlRXZlbnQoJm1vdXNlRXZlbnQpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5oIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5oCmluZGV4IGFkN2IyZDAu
LmI5NzFiZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1
aWNrd2Vidmlld19wX3AuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Fx
dWlja3dlYnZpZXdfcF9wLmgKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJxcXVpY2t3ZWJ2
aWV3X3AuaCIKICNpbmNsdWRlICJxcXVpY2t3ZWJwYWdlX3AuaCIKIAorI2luY2x1ZGUgPFF0Q29y
ZS9RRWxhcHNlZFRpbWVyPgogI2luY2x1ZGUgPFF0Q29yZS9RT2JqZWN0PgogI2luY2x1ZGUgPFF0
Q29yZS9RU2NvcGVkUG9pbnRlcj4KICNpbmNsdWRlIDxXZWJDb3JlL1ZpZXdwb3J0QXJndW1lbnRz
Lmg+CkBAIC0xMzUsNiArMTM2LDMyIEBAIHB1YmxpYzoKICAgICB2b2lkIGhhbmRsZURvd25sb2Fk
UmVxdWVzdChEb3dubG9hZFByb3h5Kik7CiAKIHByb3RlY3RlZDoKKyAgICBjbGFzcyBGbGlja2Fi
bGVBeGlzTG9ja2VyIHsKKyAgICAgICAgZW51bSBBbGxvd2VkUGFubmluZ0RpcmVjdGlvbiB7Cisg
ICAgICAgICAgICBVbmRlZmluZWQsCisgICAgICAgICAgICBVbmxvY2tlZCwKKyAgICAgICAgICAg
IEhvcml6b250YWxseUxvY2tlZCwKKyAgICAgICAgICAgIFZlcnRpY2FsbHlMb2NrZWQKKyAgICAg
ICAgfTsKKworICAgICAgICBBbGxvd2VkUGFubmluZ0RpcmVjdGlvbiBtX3N0YXRlOworCisgICAg
ICAgIFFFbGFwc2VkVGltZXIgbV90aW1lOworICAgICAgICBRUG9pbnRGIG1faW5pdGlhbFNjcmVl
blBvc2l0aW9uOworICAgICAgICBRUG9pbnRGIG1fbG9ja1JlZmVyZW5jZVBvc2l0aW9uOworICAg
ICAgICBpbnQgbV9zYW1wbGVDb3VudDsKKworICAgICAgICBRVmVjdG9yMkQgdG91Y2hWZWxvY2l0
eShjb25zdCBRVG91Y2hFdmVudCogZXZlbnQpOworCisgICAgcHVibGljOgorICAgICAgICBGbGlj
a2FibGVBeGlzTG9ja2VyKCk7CisKKyAgICAgICAgdm9pZCB1cGRhdGUoY29uc3QgUVRvdWNoRXZl
bnQqIGV2ZW50KTsKKyAgICAgICAgdm9pZCBzZXRJbml0aWFsUG9zaXRpb24oY29uc3QgUVBvaW50
RiYpOworICAgICAgICB2b2lkIHJlc2V0KCk7CisgICAgICAgIFFQb2ludEYgYWRqdXN0KGNvbnN0
IFFQb2ludEYmKTsKKyAgICB9OworCiAgICAgUVF1aWNrV2ViVmlld1ByaXZhdGUoUVF1aWNrV2Vi
Vmlldyogdmlld3BvcnQpOwogICAgIFJlZlB0cjxRdFdlYkNvbnRleHQ+IGNvbnRleHQ7CiAgICAg
UmVmUHRyPFdlYktpdDo6V2ViUGFnZVByb3h5PiB3ZWJQYWdlUHJveHk7CkBAIC0xNTEsNiArMTc4
LDggQEAgcHJvdGVjdGVkOgogICAgIFFTY29wZWRQb2ludGVyPFFRdWlja1dlYlBhZ2U+IHBhZ2VW
aWV3OwogICAgIFFRdWlja1dlYlZpZXcqIHFfcHRyOwogCisgICAgRmxpY2thYmxlQXhpc0xvY2tl
ciBheGlzTG9ja2VyOworCiAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBhbGVydERpYWxvZzsK
ICAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbmZpcm1EaWFsb2c7CiAgICAgUURlY2xhcmF0
aXZlQ29tcG9uZW50KiBwcm9tcHREaWFsb2c7Ci0tIAoxLjcuMTAKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138141</attachid>
            <date>2012-04-20 12:15:26 -0700</date>
            <delta_ts>2012-04-23 03:35:54 -0700</delta_ts>
            <desc>patch for review</desc>
            <filename>0001-Qt-WK2-Implement-axis-locking-on-the-WebView-for-pan.patch</filename>
            <type>text/plain</type>
            <size>9694</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSA3YmI4ZDc1ZjE1MzQ0OTk5YTgyODNiNDMxNzcwYjFjYThiZWNkMTg4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CkRhdGU6IFRodSwgMTkgQXByIDIwMTIgMTk6MTM6NDggKzAyMDAKU3ViamVjdDogW1BBVENIXSBb
UXRdW1dLMl0gSW1wbGVtZW50IGF4aXMgbG9ja2luZyBvbiB0aGUgV2ViVmlldyBmb3IgcGFuCiBn
ZXN0dXJlcwoKLS0tCiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMzQgKysrKysrKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3LmNwcCAgfCAgIDk3ICsrKysrKysrKysrKysrKysrKystCiAuLi4vV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggICB8ICAgMjkgKysrKysrCiAz
IGZpbGVzIGNoYW5nZWQsIDE1NiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZwppbmRleCBiOTcxYTczLi4yM2NiZTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIw
MTItMDQtMTkgIEFuZHJhcyBCZWNzaSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAg
ICAgW1F0XVtXSzJdIEltcGxlbWVudCBheGlzIGxvY2tpbmcgb24gdGhlIFdlYlZpZXcgZm9yIHBh
biBnZXN0dXJlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9ODQzNTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBJZiBhIHBhbiBnZXN0dXJlIGhhcyBzdWZmaWNpZW50IHZlbG9jaXR5IGFsb25nIG9uZSBheGlz
IHRoZSBXZWJWaWV3CisgICAgICAgIHNob3VsZCBhdXRvbWF0aWNhbGx5IGxvY2sgdGhlIHBhZ2Ug
bW92ZW1lbnQgdG8gdGhhdCBheGlzLgorICAgICAgICBUaGlzIGxvY2tpbmcgc2hvdWxkIGJlIG1h
aW50YWluZWQgdW50aWwgdGhlIG9uZ29pbmcgcGFuIGdlc3R1cmUgZW5kcy4KKworICAgICAgICBU
aGlzIHBhdGNoIGltcGxlbWVudHMgYSBzaW1wbGUgYXhpcyBsb2NrZXIgd2hpY2ggYWRqdXN0cyB0
aGUgcG9zaXRpb25zCisgICAgICAgIHNlbnQgdG8gdGhlIEZsaWNrYWJsZSB0byB0aGUgaW5pdGlh
bCByZWZlcmVuY2UgcG9zaXRpb24gYWNjb3JkaW5nIHRvIHRoZQorICAgICAgICBkaXJlY3Rpb24g
YW4gdmVsb2NpdHkgaW5mb3JtYXRpb24gaXQgZ2F0aGVyZWQgZnJvbSBpbmNvbWluZyB0b3VjaCBl
dmVudHMuCisKKyAgICAgICAgVGhlIEZsaWNrYWJsZUF4aXNMb2NrZXIgbWFrZXMgdXNlIG9mIHRo
ZSB2ZWxvY2l0eSBpbmZvcm1hdGlvbiBvZiB0aGUgdG91Y2ggcG9pbnQKKyAgICAgICAgaWYgYXZh
aWxhYmxlLCBlbHNlIGFuIGFwcHJveGltYXRlIHZlbG9jaXR5IG9mIHRoZSBpbmNvbWluZyBldmVu
dCBpcworICAgICAgICBjYWxjdWxhdGVkLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpGbGlja2Fi
bGVBeGlzTG9ja2VyOjpGbGlja2FibGVBeGlzTG9ja2VyKToKKyAgICAgICAgKFFRdWlja1dlYlZp
ZXdQcml2YXRlOjpGbGlja2FibGVBeGlzTG9ja2VyOjp0b3VjaFZlbG9jaXR5KToKKyAgICAgICAg
KFFRdWlja1dlYlZpZXdQcml2YXRlOjpGbGlja2FibGVBeGlzTG9ja2VyOjp1cGRhdGUpOgorICAg
ICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OnNldEluaXRp
YWxQb3NpdGlvbik6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6RmxpY2thYmxlQXhp
c0xvY2tlcjo6cmVzZXQpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJs
ZUF4aXNMb2NrZXI6OmFkanVzdCk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6UVF1
aWNrV2ViVmlld1ByaXZhdGUpOgorICAgICAgICAoUVF1aWNrV2ViVmlldzo6dG91Y2hFdmVudCk6
CisgICAgICAgIChRUXVpY2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVByZXNzKToKKyAg
ICAgICAgKFFRdWlja1dlYlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlTW92ZSk6CisgICAgICAg
IChRUXVpY2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVJlbGVhc2UpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaDoKKyAgICAgICAgKFFRdWlja1dl
YlZpZXdQcml2YXRlKToKKwogMjAxMi0wNC0xOSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2Fy
Y2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gSWdub3JlIHJlc291cmNlcyB3aGlsZSBy
ZXBsYWNpbmcgY29udGVudCBpbiBXZWJLaXQyIEdUSysgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCAyYjBjNWY5Li5mMjNm
ZGEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dl
YnZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vi
dmlldy5jcHAKQEAgLTQ1LDggKzQ1LDcgQEAKICNpbmNsdWRlICJxd2Vidmlld3BvcnRpbmZvX3Au
aCIKIAogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KLSNp
bmNsdWRlIDxRdFFtbC9RUW1sRW5naW5lPgotI2luY2x1ZGUgPFF0UXVpY2svUVF1aWNrQ2FudmFz
PgorI2luY2x1ZGUgPFFEYXRlVGltZT4KICNpbmNsdWRlIDxXZWJDb3JlL0ludFBvaW50Lmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9JbnRSZWN0Lmg+CiAjaW5jbHVkZSA8V0tPcGVuUGFuZWxSZXN1bHRM
aXN0ZW5lci5oPgpAQCAtNTcsNiArNTYsOSBAQAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAK
IHN0YXRpYyBib29sIHNfZmxpY2thYmxlVmlld3BvcnRFbmFibGVkID0gdHJ1ZTsKK3N0YXRpYyBj
b25zdCBpbnQga0F4aXNMb2NrU2FtcGxlQ291bnQgPSA1Oworc3RhdGljIGNvbnN0IHFyZWFsIGtB
eGlzTG9ja1ZlbG9jaXR5VGhyZXNob2xkID0gMzAwOworc3RhdGljIGNvbnN0IHFyZWFsIGtBeGlz
TG9ja1ZlbG9jaXR5RGlyZWN0aW9uVGhyZXNob2xkID0gNTA7CiAKIHN0YXRpYyBRUXVpY2tXZWJW
aWV3UHJpdmF0ZSogY3JlYXRlUHJpdmF0ZU9iamVjdChRUXVpY2tXZWJWaWV3KiBwdWJsaWNPYmpl
Y3QpCiB7CkBAIC02NSw2ICs2Nyw3OCBAQCBzdGF0aWMgUVF1aWNrV2ViVmlld1ByaXZhdGUqIGNy
ZWF0ZVByaXZhdGVPYmplY3QoUVF1aWNrV2ViVmlldyogcHVibGljT2JqZWN0KQogICAgIHJldHVy
biBuZXcgUVF1aWNrV2ViVmlld0xlZ2FjeVByaXZhdGUocHVibGljT2JqZWN0KTsKIH0KIAorUVF1
aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OkZsaWNrYWJsZUF4aXNMb2Nr
ZXIoKQorICAgIDogbV9zdGF0ZShVbmRlZmluZWQpCisgICAgLCBtX3NhbXBsZUNvdW50KDApCit7
Cit9CisKK1FWZWN0b3IyRCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6RmxpY2thYmxlQXhpc0xvY2tl
cjo6dG91Y2hWZWxvY2l0eShjb25zdCBRVG91Y2hFdmVudCogZXZlbnQpCit7CisgICAgc3RhdGlj
IGJvb2wgdG91Y2hWZWxvY2l0eUF2YWlsYWJsZSA9IGV2ZW50LT5kZXZpY2UoKS0+Y2FwYWJpbGl0
aWVzKCkudGVzdEZsYWcoUVRvdWNoRGV2aWNlOjpWZWxvY2l0eSk7CisgICAgY29uc3QgUVRvdWNo
RXZlbnQ6OlRvdWNoUG9pbnQmIHRvdWNoUG9pbnQgPSBldmVudC0+dG91Y2hQb2ludHMoKS5maXJz
dCgpOworCisgICAgaWYgKHRvdWNoVmVsb2NpdHlBdmFpbGFibGUpCisgICAgICAgIHJldHVybiB0
b3VjaFBvaW50LnZlbG9jaXR5KCk7CisKKyAgICBjb25zdCBRTGluZUYgbW92ZW1lbnRMaW5lKHRv
dWNoUG9pbnQuc2NyZWVuUG9zKCksIG1faW5pdGlhbFNjcmVlblBvc2l0aW9uKTsKKyAgICBjb25z
dCBxaW50NjQgZWxhcHNlZCA9IG1fdGltZS5lbGFwc2VkKCk7CisKKyAgICBpZiAoIWVsYXBzZWQp
CisgICAgICAgIHJldHVybiBRVmVjdG9yMkQoMCwgMCk7CisKKyAgICAvLyBDYWxjdWxhdGUgYW4g
YXBwcm94aW1hdGUgdmVsb2NpdHkgdmVjdG9yIGluIHRoZSB1bml0IG9mIHBpeGVsIC8gc2Vjb25k
LgorICAgIHJldHVybiBRVmVjdG9yMkQoMTAwMCAqIG1vdmVtZW50TGluZS5keCgpIC8gZWxhcHNl
ZCwgMTAwMCAqIG1vdmVtZW50TGluZS5keSgpIC8gZWxhcHNlZCk7Cit9CisKK3ZvaWQgUVF1aWNr
V2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OnVwZGF0ZShjb25zdCBRVG91Y2hF
dmVudCogZXZlbnQpCit7CisgICAgQVNTRVJUKGV2ZW50LT50b3VjaFBvaW50cygpLnNpemUoKSA9
PSAxKTsKKyAgICBjb25zdCBRVG91Y2hFdmVudDo6VG91Y2hQb2ludCYgdG91Y2hQb2ludCA9IGV2
ZW50LT50b3VjaFBvaW50cygpLmZpcnN0KCk7CisKKyAgICArK21fc2FtcGxlQ291bnQ7CisKKyAg
ICBpZiAobV9zYW1wbGVDb3VudCA9PSAxKSB7CisgICAgICAgIG1faW5pdGlhbFNjcmVlblBvc2l0
aW9uID0gdG91Y2hQb2ludC5zY3JlZW5Qb3MoKTsKKyAgICAgICAgbV90aW1lLnJlc3RhcnQoKTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChtX3N0YXRlICE9IFVuZGVmaW5lZCkK
KyAgICAgICAgcmV0dXJuOworCisgICAgUVZlY3RvcjJEIHZlbG9jaXR5ID0gdG91Y2hWZWxvY2l0
eShldmVudCk7CisKKyAgICBxcmVhbCBkaXJlY3Rpb25JbmRpY2F0b3IgPSBxQWJzKHZlbG9jaXR5
LngoKSkgLSBxQWJzKHZlbG9jaXR5LnkoKSk7CisKKyAgICBpZiAodmVsb2NpdHkubGVuZ3RoKCkg
PiBrQXhpc0xvY2tWZWxvY2l0eVRocmVzaG9sZCAmJiBxQWJzKGRpcmVjdGlvbkluZGljYXRvcikg
PiBrQXhpc0xvY2tWZWxvY2l0eURpcmVjdGlvblRocmVzaG9sZCkKKyAgICAgICAgbV9zdGF0ZSA9
IChkaXJlY3Rpb25JbmRpY2F0b3IgPiAwKSA/IEhvcml6b250YWxseUxvY2tlZCA6IFZlcnRpY2Fs
bHlMb2NrZWQ7CisgICAgZWxzZSBpZiAobV9zYW1wbGVDb3VudCA+IGtBeGlzTG9ja1NhbXBsZUNv
dW50KQorICAgICAgICBtX3N0YXRlID0gVW5sb2NrZWQ7Cit9CisKK3ZvaWQgUVF1aWNrV2ViVmll
d1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OnNldEluaXRpYWxQb3NpdGlvbihjb25zdCBR
UG9pbnRGJiBwb3NpdGlvbikKK3sKKyAgICBtX2xvY2tSZWZlcmVuY2VQb3NpdGlvbiA9IHBvc2l0
aW9uOworfQorCit2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRlOjpGbGlja2FibGVBeGlzTG9ja2Vy
OjpyZXNldCgpCit7CisgICAgbV9zdGF0ZSA9IFVuZGVmaW5lZDsKKyAgICBtX3NhbXBsZUNvdW50
ID0gMDsKK30KKworUVBvaW50RiBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6RmxpY2thYmxlQXhpc0xv
Y2tlcjo6YWRqdXN0KGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uKQoreworICAgIGlmIChtX3N0YXRl
ID09IEhvcml6b250YWxseUxvY2tlZCkKKyAgICAgICAgcmV0dXJuIFFQb2ludEYocG9zaXRpb24u
eCgpLCBtX2xvY2tSZWZlcmVuY2VQb3NpdGlvbi55KCkpOworCisgICAgaWYgKG1fc3RhdGUgPT0g
VmVydGljYWxseUxvY2tlZCkKKyAgICAgICAgcmV0dXJuIFFQb2ludEYobV9sb2NrUmVmZXJlbmNl
UG9zaXRpb24ueCgpLCBwb3NpdGlvbi55KCkpOworCisgICAgcmV0dXJuIHBvc2l0aW9uOworfQor
CiBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6UVF1aWNrV2ViVmlld1ByaXZhdGUoUVF1aWNrV2ViVmll
dyogdmlld3BvcnQpCiAgICAgOiBxX3B0cih2aWV3cG9ydCkKICAgICAsIGFsZXJ0RGlhbG9nKDAp
CkBAIC0xMjk2LDYgKzEzNzAsMTYgQEAgdm9pZCBRUXVpY2tXZWJWaWV3Ojp0b3VjaEV2ZW50KFFU
b3VjaEV2ZW50KiBldmVudCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIGJvb2wgbG9j
a2luZ0Rpc2FibGVkID0gZmxpY2thYmxlRGlyZWN0aW9uKCkgIT0gQXV0b0ZsaWNrRGlyZWN0aW9u
CisgICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBldmVudC0+dG91Y2hQb2ludHMoKS5zaXpl
KCkgIT0gMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgd2lkdGgoKSA+PSBjb250ZW50
V2lkdGgoKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgaGVpZ2h0KCkgPj0gY29udGVu
dEhlaWdodCgpOworCisgICAgaWYgKCFsb2NraW5nRGlzYWJsZWQpCisgICAgICAgIGQtPmF4aXNM
b2NrZXIudXBkYXRlKGV2ZW50KTsKKyAgICBlbHNlCisgICAgICAgIGQtPmF4aXNMb2NrZXIucmVz
ZXQoKTsKKwogICAgIGZvcmNlQWN0aXZlRm9jdXMoKTsKICAgICBkLT5wYWdlVmlldy0+ZXZlbnRI
YW5kbGVyKCktPmhhbmRsZVRvdWNoRXZlbnQoZXZlbnQpOwogfQpAQCAtMTQwMiw2ICsxNDg2LDgg
QEAgdm9pZCBRUXVpY2tXZWJWaWV3OjpzZXRDb250ZW50UG9zKGNvbnN0IFFQb2ludEYmIHBvcykK
IAogdm9pZCBRUXVpY2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVByZXNzKGNvbnN0IFFQ
b2ludEYmIHBvc2l0aW9uLCBxaW50NjQgZXZlbnRUaW1lc3RhbXBNaWxsaXMpCiB7CisgICAgUV9E
KFFRdWlja1dlYlZpZXcpOworICAgIGQtPmF4aXNMb2NrZXIuc2V0SW5pdGlhbFBvc2l0aW9uKHBv
c2l0aW9uKTsKICAgICBRTW91c2VFdmVudCBtb3VzZUV2ZW50KFFFdmVudDo6TW91c2VCdXR0b25Q
cmVzcywgcG9zaXRpb24sIFF0OjpMZWZ0QnV0dG9uLCBRdDo6Tm9CdXR0b24sIFF0OjpOb01vZGlm
aWVyKTsKICAgICBtb3VzZUV2ZW50LnNldFRpbWVzdGFtcChldmVudFRpbWVzdGFtcE1pbGxpcyk7
CiAgICAgUVF1aWNrRmxpY2thYmxlOjptb3VzZVByZXNzRXZlbnQoJm1vdXNlRXZlbnQpOwpAQCAt
MTQwOSwxNCArMTQ5NSwxNyBAQCB2b2lkIFFRdWlja1dlYlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1v
dXNlUHJlc3MoY29uc3QgUVBvaW50RiYgcG9zaXRpb24sIHFpbnQ2NCBldgogCiB2b2lkIFFRdWlj
a1dlYlZpZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlTW92ZShjb25zdCBRUG9pbnRGJiBwb3NpdGlv
biwgcWludDY0IGV2ZW50VGltZXN0YW1wTWlsbGlzKQogewotICAgIFFNb3VzZUV2ZW50IG1vdXNl
RXZlbnQoUUV2ZW50OjpNb3VzZU1vdmUsIHBvc2l0aW9uLCBRdDo6TGVmdEJ1dHRvbiwgUXQ6Ok5v
QnV0dG9uLCBRdDo6Tm9Nb2RpZmllcik7CisgICAgUV9EKFFRdWlja1dlYlZpZXcpOworICAgIFFN
b3VzZUV2ZW50IG1vdXNlRXZlbnQoUUV2ZW50OjpNb3VzZU1vdmUsIGQtPmF4aXNMb2NrZXIuYWRq
dXN0KHBvc2l0aW9uKSwgUXQ6OkxlZnRCdXR0b24sIFF0OjpOb0J1dHRvbiwgUXQ6Ok5vTW9kaWZp
ZXIpOwogICAgIG1vdXNlRXZlbnQuc2V0VGltZXN0YW1wKGV2ZW50VGltZXN0YW1wTWlsbGlzKTsK
ICAgICBRUXVpY2tGbGlja2FibGU6Om1vdXNlTW92ZUV2ZW50KCZtb3VzZUV2ZW50KTsKIH0KIAog
dm9pZCBRUXVpY2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVJlbGVhc2UoY29uc3QgUVBv
aW50RiYgcG9zaXRpb24sIHFpbnQ2NCBldmVudFRpbWVzdGFtcE1pbGxpcykKIHsKLSAgICBRTW91
c2VFdmVudCBtb3VzZUV2ZW50KFFFdmVudDo6TW91c2VCdXR0b25SZWxlYXNlLCBwb3NpdGlvbiwg
UXQ6OkxlZnRCdXR0b24sIFF0OjpOb0J1dHRvbiwgUXQ6Ok5vTW9kaWZpZXIpOworICAgIFFfRChR
UXVpY2tXZWJWaWV3KTsKKyAgICBRTW91c2VFdmVudCBtb3VzZUV2ZW50KFFFdmVudDo6TW91c2VC
dXR0b25SZWxlYXNlLCBkLT5heGlzTG9ja2VyLmFkanVzdChwb3NpdGlvbiksIFF0OjpMZWZ0QnV0
dG9uLCBRdDo6Tm9CdXR0b24sIFF0OjpOb01vZGlmaWVyKTsKKyAgICBkLT5heGlzTG9ja2VyLnJl
c2V0KCk7CiAgICAgbW91c2VFdmVudC5zZXRUaW1lc3RhbXAoZXZlbnRUaW1lc3RhbXBNaWxsaXMp
OwogICAgIFFRdWlja0ZsaWNrYWJsZTo6bW91c2VSZWxlYXNlRXZlbnQoJm1vdXNlRXZlbnQpOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2
aWV3X3BfcC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3
X3BfcC5oCmluZGV4IGFkN2IyZDAuLmI5NzFiZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgKQEAgLTM0LDYgKzM0LDcgQEAK
ICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKICNpbmNsdWRlICJxcXVpY2t3ZWJwYWdlX3Au
aCIKIAorI2luY2x1ZGUgPFF0Q29yZS9RRWxhcHNlZFRpbWVyPgogI2luY2x1ZGUgPFF0Q29yZS9R
T2JqZWN0PgogI2luY2x1ZGUgPFF0Q29yZS9RU2NvcGVkUG9pbnRlcj4KICNpbmNsdWRlIDxXZWJD
b3JlL1ZpZXdwb3J0QXJndW1lbnRzLmg+CkBAIC0xMzUsNiArMTM2LDMyIEBAIHB1YmxpYzoKICAg
ICB2b2lkIGhhbmRsZURvd25sb2FkUmVxdWVzdChEb3dubG9hZFByb3h5Kik7CiAKIHByb3RlY3Rl
ZDoKKyAgICBjbGFzcyBGbGlja2FibGVBeGlzTG9ja2VyIHsKKyAgICAgICAgZW51bSBBbGxvd2Vk
UGFubmluZ0RpcmVjdGlvbiB7CisgICAgICAgICAgICBVbmRlZmluZWQsCisgICAgICAgICAgICBV
bmxvY2tlZCwKKyAgICAgICAgICAgIEhvcml6b250YWxseUxvY2tlZCwKKyAgICAgICAgICAgIFZl
cnRpY2FsbHlMb2NrZWQKKyAgICAgICAgfTsKKworICAgICAgICBBbGxvd2VkUGFubmluZ0RpcmVj
dGlvbiBtX3N0YXRlOworCisgICAgICAgIFFFbGFwc2VkVGltZXIgbV90aW1lOworICAgICAgICBR
UG9pbnRGIG1faW5pdGlhbFNjcmVlblBvc2l0aW9uOworICAgICAgICBRUG9pbnRGIG1fbG9ja1Jl
ZmVyZW5jZVBvc2l0aW9uOworICAgICAgICBpbnQgbV9zYW1wbGVDb3VudDsKKworICAgICAgICBR
VmVjdG9yMkQgdG91Y2hWZWxvY2l0eShjb25zdCBRVG91Y2hFdmVudCogZXZlbnQpOworCisgICAg
cHVibGljOgorICAgICAgICBGbGlja2FibGVBeGlzTG9ja2VyKCk7CisKKyAgICAgICAgdm9pZCB1
cGRhdGUoY29uc3QgUVRvdWNoRXZlbnQqIGV2ZW50KTsKKyAgICAgICAgdm9pZCBzZXRJbml0aWFs
UG9zaXRpb24oY29uc3QgUVBvaW50RiYpOworICAgICAgICB2b2lkIHJlc2V0KCk7CisgICAgICAg
IFFQb2ludEYgYWRqdXN0KGNvbnN0IFFQb2ludEYmKTsKKyAgICB9OworCiAgICAgUVF1aWNrV2Vi
Vmlld1ByaXZhdGUoUVF1aWNrV2ViVmlldyogdmlld3BvcnQpOwogICAgIFJlZlB0cjxRdFdlYkNv
bnRleHQ+IGNvbnRleHQ7CiAgICAgUmVmUHRyPFdlYktpdDo6V2ViUGFnZVByb3h5PiB3ZWJQYWdl
UHJveHk7CkBAIC0xNTEsNiArMTc4LDggQEAgcHJvdGVjdGVkOgogICAgIFFTY29wZWRQb2ludGVy
PFFRdWlja1dlYlBhZ2U+IHBhZ2VWaWV3OwogICAgIFFRdWlja1dlYlZpZXcqIHFfcHRyOwogCisg
ICAgRmxpY2thYmxlQXhpc0xvY2tlciBheGlzTG9ja2VyOworCiAgICAgUURlY2xhcmF0aXZlQ29t
cG9uZW50KiBhbGVydERpYWxvZzsKICAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbmZpcm1E
aWFsb2c7CiAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBwcm9tcHREaWFsb2c7Ci0tIAoxLjcu
MTAKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138321</attachid>
            <date>2012-04-23 03:35:54 -0700</date>
            <delta_ts>2012-04-24 10:48:13 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>0001-Qt-WK2-Implement-axis-locking-on-the-WebView-for-pan.patch</filename>
            <type>text/plain</type>
            <size>9766</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSAzNjU0OGEyNzAzZTI2OWVkNTkxZjE2NmJiMjliNDdmMTQ3ODc0YzkxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CkRhdGU6IE1vbiwgMjMgQXByIDIwMTIgMTI6Mjg6MTcgKzAyMDAKU3ViamVjdDogW1BBVENIXSBb
UXRdW1dLMl0gSW1wbGVtZW50IGF4aXMgbG9ja2luZyBvbiB0aGUgV2ViVmlldyBmb3IgcGFuCiBn
ZXN0dXJlcwoKLS0tCiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMzQgKysrKysrKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3LmNwcCAgfCAgIDk3ICsrKysrKysrKysrKysrKysrKystCiAuLi4vV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggICB8ICAgMjIgKysrKysKIDMg
ZmlsZXMgY2hhbmdlZCwgMTQ5IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CmluZGV4IDE3ZmUxZWMuLjY4MTBiNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNyBAQAorMjAx
Mi0wNC0yMyAgQW5kcmFzIEJlY3NpICA8YW5kcmFzLmJlY3NpQG5va2lhLmNvbT4KKworICAgICAg
ICBbUXRdW1dLMl0gSW1wbGVtZW50IGF4aXMgbG9ja2luZyBvbiB0aGUgV2ViVmlldyBmb3IgcGFu
IGdlc3R1cmVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NDM1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IElmIGEgcGFuIGdlc3R1cmUgaGFzIHN1ZmZpY2llbnQgdmVsb2NpdHkgYWxvbmcgb25lIGF4aXMg
dGhlIFdlYlZpZXcKKyAgICAgICAgc2hvdWxkIGF1dG9tYXRpY2FsbHkgbG9jayB0aGUgcGFnZSBt
b3ZlbWVudCB0byB0aGF0IGF4aXMuCisgICAgICAgIFRoaXMgbG9ja2luZyBzaG91bGQgYmUgbWFp
bnRhaW5lZCB1bnRpbCB0aGUgb25nb2luZyBwYW4gZ2VzdHVyZSBlbmRzLgorCisgICAgICAgIFRo
aXMgcGF0Y2ggaW1wbGVtZW50cyBhIHNpbXBsZSBheGlzIGxvY2tlciB3aGljaCBhZGp1c3RzIHRo
ZSBwb3NpdGlvbnMKKyAgICAgICAgc2VudCB0byB0aGUgRmxpY2thYmxlIHRvIHRoZSBpbml0aWFs
IHJlZmVyZW5jZSBwb3NpdGlvbiBhY2NvcmRpbmcgdG8gdGhlCisgICAgICAgIGRpcmVjdGlvbiBh
biB2ZWxvY2l0eSBpbmZvcm1hdGlvbiBpdCBnYXRoZXJlZCBmcm9tIGluY29taW5nIHRvdWNoIGV2
ZW50cy4KKworICAgICAgICBUaGUgRmxpY2thYmxlQXhpc0xvY2tlciBtYWtlcyB1c2Ugb2YgdGhl
IHZlbG9jaXR5IGluZm9ybWF0aW9uIG9mIHRoZSB0b3VjaCBwb2ludAorICAgICAgICBpZiBhdmFp
bGFibGUsIGVsc2UgYW4gYXBwcm94aW1hdGUgdmVsb2NpdHkgb2YgdGhlIGluY29taW5nIGV2ZW50
IGlzCisgICAgICAgIGNhbGN1bGF0ZWQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3Fx
dWlja3dlYnZpZXcuY3BwOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJs
ZUF4aXNMb2NrZXI6OkZsaWNrYWJsZUF4aXNMb2NrZXIpOgorICAgICAgICAoUVF1aWNrV2ViVmll
d1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OnRvdWNoVmVsb2NpdHkpOgorICAgICAgICAo
UVF1aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OnVwZGF0ZSk6CisgICAg
ICAgIChRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6RmxpY2thYmxlQXhpc0xvY2tlcjo6c2V0UmVmZXJl
bmNlUG9zaXRpb24pOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4
aXNMb2NrZXI6OnJlc2V0KToKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpGbGlja2Fi
bGVBeGlzTG9ja2VyOjphZGp1c3QpOgorICAgICAgICAoUVF1aWNrV2ViVmlld1ByaXZhdGU6OlFR
dWlja1dlYlZpZXdQcml2YXRlKToKKyAgICAgICAgKFFRdWlja1dlYlZpZXc6OnRvdWNoRXZlbnQp
OgorICAgICAgICAoUVF1aWNrV2ViVmlldzo6aGFuZGxlRmxpY2thYmxlTW91c2VQcmVzcyk6Cisg
ICAgICAgIChRUXVpY2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZU1vdmUpOgorICAgICAg
ICAoUVF1aWNrV2ViVmlldzo6aGFuZGxlRmxpY2thYmxlTW91c2VSZWxlYXNlKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmg6CisgICAgICAgIChRUXVpY2tX
ZWJWaWV3UHJpdmF0ZSk6CisKIDIwMTItMDQtMjMgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIEFkZCB0ZXN0IGZ1bmN0aW9uIHRvIGdldCBwbGFjZWhvbGRlciBz
dHJpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNr
d2Vidmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZp
ZXcuY3BwCmluZGV4IDJiMGM1ZjkuLmZmNWM1NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcApAQCAtNDUsOCArNDUsNyBAQAogI2lu
Y2x1ZGUgInF3ZWJ2aWV3cG9ydGluZm9fcC5oIgogCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUv
SW5pdGlhbGl6ZVRocmVhZGluZy5oPgotI2luY2x1ZGUgPFF0UW1sL1FRbWxFbmdpbmU+Ci0jaW5j
bHVkZSA8UXRRdWljay9RUXVpY2tDYW52YXM+CisjaW5jbHVkZSA8UURhdGVUaW1lPgogI2luY2x1
ZGUgPFdlYkNvcmUvSW50UG9pbnQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0ludFJlY3QuaD4KICNp
bmNsdWRlIDxXS09wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmg+CkBAIC01Nyw2ICs1Niw5IEBACiB1
c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogc3RhdGljIGJvb2wgc19mbGlja2FibGVWaWV3cG9y
dEVuYWJsZWQgPSB0cnVlOworc3RhdGljIGNvbnN0IGludCBrQXhpc0xvY2tTYW1wbGVDb3VudCA9
IDU7CitzdGF0aWMgY29uc3QgcXJlYWwga0F4aXNMb2NrVmVsb2NpdHlUaHJlc2hvbGQgPSAzMDA7
CitzdGF0aWMgY29uc3QgcXJlYWwga0F4aXNMb2NrVmVsb2NpdHlEaXJlY3Rpb25UaHJlc2hvbGQg
PSA1MDsKIAogc3RhdGljIFFRdWlja1dlYlZpZXdQcml2YXRlKiBjcmVhdGVQcml2YXRlT2JqZWN0
KFFRdWlja1dlYlZpZXcqIHB1YmxpY09iamVjdCkKIHsKQEAgLTY1LDYgKzY3LDc4IEBAIHN0YXRp
YyBRUXVpY2tXZWJWaWV3UHJpdmF0ZSogY3JlYXRlUHJpdmF0ZU9iamVjdChRUXVpY2tXZWJWaWV3
KiBwdWJsaWNPYmplY3QpCiAgICAgcmV0dXJuIG5ldyBRUXVpY2tXZWJWaWV3TGVnYWN5UHJpdmF0
ZShwdWJsaWNPYmplY3QpOwogfQogCitRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6RmxpY2thYmxlQXhp
c0xvY2tlcjo6RmxpY2thYmxlQXhpc0xvY2tlcigpCisgICAgOiBtX2FsbG93ZWREaXJlY3Rpb24o
UVF1aWNrRmxpY2thYmxlOjpBdXRvRmxpY2tEaXJlY3Rpb24pCisgICAgLCBtX3NhbXBsZUNvdW50
KDApCit7Cit9CisKK1FWZWN0b3IyRCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6RmxpY2thYmxlQXhp
c0xvY2tlcjo6dG91Y2hWZWxvY2l0eShjb25zdCBRVG91Y2hFdmVudCogZXZlbnQpCit7CisgICAg
c3RhdGljIGJvb2wgdG91Y2hWZWxvY2l0eUF2YWlsYWJsZSA9IGV2ZW50LT5kZXZpY2UoKS0+Y2Fw
YWJpbGl0aWVzKCkudGVzdEZsYWcoUVRvdWNoRGV2aWNlOjpWZWxvY2l0eSk7CisgICAgY29uc3Qg
UVRvdWNoRXZlbnQ6OlRvdWNoUG9pbnQmIHRvdWNoUG9pbnQgPSBldmVudC0+dG91Y2hQb2ludHMo
KS5maXJzdCgpOworCisgICAgaWYgKHRvdWNoVmVsb2NpdHlBdmFpbGFibGUpCisgICAgICAgIHJl
dHVybiB0b3VjaFBvaW50LnZlbG9jaXR5KCk7CisKKyAgICBjb25zdCBRTGluZUYgbW92ZW1lbnRM
aW5lKHRvdWNoUG9pbnQuc2NyZWVuUG9zKCksIG1faW5pdGlhbFNjcmVlblBvc2l0aW9uKTsKKyAg
ICBjb25zdCBxaW50NjQgZWxhcHNlZCA9IG1fdGltZS5lbGFwc2VkKCk7CisKKyAgICBpZiAoIWVs
YXBzZWQpCisgICAgICAgIHJldHVybiBRVmVjdG9yMkQoMCwgMCk7CisKKyAgICAvLyBDYWxjdWxh
dGUgYW4gYXBwcm94aW1hdGUgdmVsb2NpdHkgdmVjdG9yIGluIHRoZSB1bml0IG9mIHBpeGVsIC8g
c2Vjb25kLgorICAgIHJldHVybiBRVmVjdG9yMkQoMTAwMCAqIG1vdmVtZW50TGluZS5keCgpIC8g
ZWxhcHNlZCwgMTAwMCAqIG1vdmVtZW50TGluZS5keSgpIC8gZWxhcHNlZCk7Cit9CisKK3ZvaWQg
UVF1aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OnVwZGF0ZShjb25zdCBR
VG91Y2hFdmVudCogZXZlbnQpCit7CisgICAgQVNTRVJUKGV2ZW50LT50b3VjaFBvaW50cygpLnNp
emUoKSA9PSAxKTsKKyAgICBjb25zdCBRVG91Y2hFdmVudDo6VG91Y2hQb2ludCYgdG91Y2hQb2lu
dCA9IGV2ZW50LT50b3VjaFBvaW50cygpLmZpcnN0KCk7CisKKyAgICArK21fc2FtcGxlQ291bnQ7
CisKKyAgICBpZiAobV9zYW1wbGVDb3VudCA9PSAxKSB7CisgICAgICAgIG1faW5pdGlhbFNjcmVl
blBvc2l0aW9uID0gdG91Y2hQb2ludC5zY3JlZW5Qb3MoKTsKKyAgICAgICAgbV90aW1lLnJlc3Rh
cnQoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChtX3NhbXBsZUNvdW50ID4g
a0F4aXNMb2NrU2FtcGxlQ291bnQKKyAgICAgICAgICAgIHx8IG1fYWxsb3dlZERpcmVjdGlvbiA9
PSBRUXVpY2tGbGlja2FibGU6Okhvcml6b250YWxGbGljaworICAgICAgICAgICAgfHwgbV9hbGxv
d2VkRGlyZWN0aW9uID09IFFRdWlja0ZsaWNrYWJsZTo6VmVydGljYWxGbGljaykKKyAgICAgICAg
cmV0dXJuOworCisgICAgUVZlY3RvcjJEIHZlbG9jaXR5ID0gdG91Y2hWZWxvY2l0eShldmVudCk7
CisKKyAgICBxcmVhbCBkaXJlY3Rpb25JbmRpY2F0b3IgPSBxQWJzKHZlbG9jaXR5LngoKSkgLSBx
QWJzKHZlbG9jaXR5LnkoKSk7CisKKyAgICBpZiAodmVsb2NpdHkubGVuZ3RoKCkgPiBrQXhpc0xv
Y2tWZWxvY2l0eVRocmVzaG9sZCAmJiBxQWJzKGRpcmVjdGlvbkluZGljYXRvcikgPiBrQXhpc0xv
Y2tWZWxvY2l0eURpcmVjdGlvblRocmVzaG9sZCkKKyAgICAgICAgbV9hbGxvd2VkRGlyZWN0aW9u
ID0gKGRpcmVjdGlvbkluZGljYXRvciA+IDApID8gUVF1aWNrRmxpY2thYmxlOjpIb3Jpem9udGFs
RmxpY2sgOiBRUXVpY2tGbGlja2FibGU6OlZlcnRpY2FsRmxpY2s7Cit9CisKK3ZvaWQgUVF1aWNr
V2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4aXNMb2NrZXI6OnNldFJlZmVyZW5jZVBvc2l0aW9u
KGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uKQoreworICAgIG1fbG9ja1JlZmVyZW5jZVBvc2l0aW9u
ID0gcG9zaXRpb247Cit9CisKK3ZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OkZsaWNrYWJsZUF4
aXNMb2NrZXI6OnJlc2V0KCkKK3sKKyAgICBtX2FsbG93ZWREaXJlY3Rpb24gPSBRUXVpY2tGbGlj
a2FibGU6OkF1dG9GbGlja0RpcmVjdGlvbjsKKyAgICBtX3NhbXBsZUNvdW50ID0gMDsKK30KKwor
UVBvaW50RiBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6RmxpY2thYmxlQXhpc0xvY2tlcjo6YWRqdXN0
KGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uKQoreworICAgIGlmIChtX2FsbG93ZWREaXJlY3Rpb24g
PT0gUVF1aWNrRmxpY2thYmxlOjpIb3Jpem9udGFsRmxpY2spCisgICAgICAgIHJldHVybiBRUG9p
bnRGKHBvc2l0aW9uLngoKSwgbV9sb2NrUmVmZXJlbmNlUG9zaXRpb24ueSgpKTsKKworICAgIGlm
IChtX2FsbG93ZWREaXJlY3Rpb24gPT0gUVF1aWNrRmxpY2thYmxlOjpWZXJ0aWNhbEZsaWNrKQor
ICAgICAgICByZXR1cm4gUVBvaW50RihtX2xvY2tSZWZlcmVuY2VQb3NpdGlvbi54KCksIHBvc2l0
aW9uLnkoKSk7CisKKyAgICByZXR1cm4gcG9zaXRpb247Cit9CisKIFFRdWlja1dlYlZpZXdQcml2
YXRlOjpRUXVpY2tXZWJWaWV3UHJpdmF0ZShRUXVpY2tXZWJWaWV3KiB2aWV3cG9ydCkKICAgICA6
IHFfcHRyKHZpZXdwb3J0KQogICAgICwgYWxlcnREaWFsb2coMCkKQEAgLTEyOTYsNiArMTM3MCwx
NiBAQCB2b2lkIFFRdWlja1dlYlZpZXc6OnRvdWNoRXZlbnQoUVRvdWNoRXZlbnQqIGV2ZW50KQog
ICAgICAgICByZXR1cm47CiAgICAgfQogCisgICAgYm9vbCBsb2NraW5nRGlzYWJsZWQgPSBmbGlj
a2FibGVEaXJlY3Rpb24oKSAhPSBBdXRvRmxpY2tEaXJlY3Rpb24KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHx8IGV2ZW50LT50b3VjaFBvaW50cygpLnNpemUoKSAhPSAxCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8fCB3aWR0aCgpID49IGNvbnRlbnRXaWR0aCgpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8fCBoZWlnaHQoKSA+PSBjb250ZW50SGVpZ2h0KCk7CisKKyAgICBp
ZiAoIWxvY2tpbmdEaXNhYmxlZCkKKyAgICAgICAgZC0+YXhpc0xvY2tlci51cGRhdGUoZXZlbnQp
OworICAgIGVsc2UKKyAgICAgICAgZC0+YXhpc0xvY2tlci5yZXNldCgpOworCiAgICAgZm9yY2VB
Y3RpdmVGb2N1cygpOwogICAgIGQtPnBhZ2VWaWV3LT5ldmVudEhhbmRsZXIoKS0+aGFuZGxlVG91
Y2hFdmVudChldmVudCk7CiB9CkBAIC0xNDAyLDYgKzE0ODYsOCBAQCB2b2lkIFFRdWlja1dlYlZp
ZXc6OnNldENvbnRlbnRQb3MoY29uc3QgUVBvaW50RiYgcG9zKQogCiB2b2lkIFFRdWlja1dlYlZp
ZXc6OmhhbmRsZUZsaWNrYWJsZU1vdXNlUHJlc3MoY29uc3QgUVBvaW50RiYgcG9zaXRpb24sIHFp
bnQ2NCBldmVudFRpbWVzdGFtcE1pbGxpcykKIHsKKyAgICBRX0QoUVF1aWNrV2ViVmlldyk7Cisg
ICAgZC0+YXhpc0xvY2tlci5zZXRSZWZlcmVuY2VQb3NpdGlvbihwb3NpdGlvbik7CiAgICAgUU1v
dXNlRXZlbnQgbW91c2VFdmVudChRRXZlbnQ6Ok1vdXNlQnV0dG9uUHJlc3MsIHBvc2l0aW9uLCBR
dDo6TGVmdEJ1dHRvbiwgUXQ6Ok5vQnV0dG9uLCBRdDo6Tm9Nb2RpZmllcik7CiAgICAgbW91c2VF
dmVudC5zZXRUaW1lc3RhbXAoZXZlbnRUaW1lc3RhbXBNaWxsaXMpOwogICAgIFFRdWlja0ZsaWNr
YWJsZTo6bW91c2VQcmVzc0V2ZW50KCZtb3VzZUV2ZW50KTsKQEAgLTE0MDksMTQgKzE0OTUsMTcg
QEAgdm9pZCBRUXVpY2tXZWJWaWV3OjpoYW5kbGVGbGlja2FibGVNb3VzZVByZXNzKGNvbnN0IFFQ
b2ludEYmIHBvc2l0aW9uLCBxaW50NjQgZXYKIAogdm9pZCBRUXVpY2tXZWJWaWV3OjpoYW5kbGVG
bGlja2FibGVNb3VzZU1vdmUoY29uc3QgUVBvaW50RiYgcG9zaXRpb24sIHFpbnQ2NCBldmVudFRp
bWVzdGFtcE1pbGxpcykKIHsKLSAgICBRTW91c2VFdmVudCBtb3VzZUV2ZW50KFFFdmVudDo6TW91
c2VNb3ZlLCBwb3NpdGlvbiwgUXQ6OkxlZnRCdXR0b24sIFF0OjpOb0J1dHRvbiwgUXQ6Ok5vTW9k
aWZpZXIpOworICAgIFFfRChRUXVpY2tXZWJWaWV3KTsKKyAgICBRTW91c2VFdmVudCBtb3VzZUV2
ZW50KFFFdmVudDo6TW91c2VNb3ZlLCBkLT5heGlzTG9ja2VyLmFkanVzdChwb3NpdGlvbiksIFF0
OjpMZWZ0QnV0dG9uLCBRdDo6Tm9CdXR0b24sIFF0OjpOb01vZGlmaWVyKTsKICAgICBtb3VzZUV2
ZW50LnNldFRpbWVzdGFtcChldmVudFRpbWVzdGFtcE1pbGxpcyk7CiAgICAgUVF1aWNrRmxpY2th
YmxlOjptb3VzZU1vdmVFdmVudCgmbW91c2VFdmVudCk7CiB9CiAKIHZvaWQgUVF1aWNrV2ViVmll
dzo6aGFuZGxlRmxpY2thYmxlTW91c2VSZWxlYXNlKGNvbnN0IFFQb2ludEYmIHBvc2l0aW9uLCBx
aW50NjQgZXZlbnRUaW1lc3RhbXBNaWxsaXMpCiB7Ci0gICAgUU1vdXNlRXZlbnQgbW91c2VFdmVu
dChRRXZlbnQ6Ok1vdXNlQnV0dG9uUmVsZWFzZSwgcG9zaXRpb24sIFF0OjpMZWZ0QnV0dG9uLCBR
dDo6Tm9CdXR0b24sIFF0OjpOb01vZGlmaWVyKTsKKyAgICBRX0QoUVF1aWNrV2ViVmlldyk7Cisg
ICAgUU1vdXNlRXZlbnQgbW91c2VFdmVudChRRXZlbnQ6Ok1vdXNlQnV0dG9uUmVsZWFzZSwgZC0+
YXhpc0xvY2tlci5hZGp1c3QocG9zaXRpb24pLCBRdDo6TGVmdEJ1dHRvbiwgUXQ6Ok5vQnV0dG9u
LCBRdDo6Tm9Nb2RpZmllcik7CisgICAgZC0+YXhpc0xvY2tlci5yZXNldCgpOwogICAgIG1vdXNl
RXZlbnQuc2V0VGltZXN0YW1wKGV2ZW50VGltZXN0YW1wTWlsbGlzKTsKICAgICBRUXVpY2tGbGlj
a2FibGU6Om1vdXNlUmVsZWFzZUV2ZW50KCZtb3VzZUV2ZW50KTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaCBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaAppbmRleCBhZDdi
MmQwLi44NzM4YTRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0
L3FxdWlja3dlYnZpZXdfcF9wLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3X3BfcC5oCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAicXF1aWNr
d2Vidmlld19wLmgiCiAjaW5jbHVkZSAicXF1aWNrd2VicGFnZV9wLmgiCiAKKyNpbmNsdWRlIDxR
dENvcmUvUUVsYXBzZWRUaW1lcj4KICNpbmNsdWRlIDxRdENvcmUvUU9iamVjdD4KICNpbmNsdWRl
IDxRdENvcmUvUVNjb3BlZFBvaW50ZXI+CiAjaW5jbHVkZSA8V2ViQ29yZS9WaWV3cG9ydEFyZ3Vt
ZW50cy5oPgpAQCAtMTM1LDYgKzEzNiwyNSBAQCBwdWJsaWM6CiAgICAgdm9pZCBoYW5kbGVEb3du
bG9hZFJlcXVlc3QoRG93bmxvYWRQcm94eSopOwogCiBwcm90ZWN0ZWQ6CisgICAgY2xhc3MgRmxp
Y2thYmxlQXhpc0xvY2tlciB7CisgICAgICAgIFFRdWlja0ZsaWNrYWJsZTo6RmxpY2thYmxlRGly
ZWN0aW9uIG1fYWxsb3dlZERpcmVjdGlvbjsKKworICAgICAgICBRRWxhcHNlZFRpbWVyIG1fdGlt
ZTsKKyAgICAgICAgUVBvaW50RiBtX2luaXRpYWxTY3JlZW5Qb3NpdGlvbjsKKyAgICAgICAgUVBv
aW50RiBtX2xvY2tSZWZlcmVuY2VQb3NpdGlvbjsKKyAgICAgICAgaW50IG1fc2FtcGxlQ291bnQ7
CisKKyAgICAgICAgUVZlY3RvcjJEIHRvdWNoVmVsb2NpdHkoY29uc3QgUVRvdWNoRXZlbnQqIGV2
ZW50KTsKKworICAgIHB1YmxpYzoKKyAgICAgICAgRmxpY2thYmxlQXhpc0xvY2tlcigpOworCisg
ICAgICAgIHZvaWQgdXBkYXRlKGNvbnN0IFFUb3VjaEV2ZW50KiBldmVudCk7CisgICAgICAgIHZv
aWQgc2V0UmVmZXJlbmNlUG9zaXRpb24oY29uc3QgUVBvaW50RiYpOworICAgICAgICB2b2lkIHJl
c2V0KCk7CisgICAgICAgIFFQb2ludEYgYWRqdXN0KGNvbnN0IFFQb2ludEYmKTsKKyAgICB9Owor
CiAgICAgUVF1aWNrV2ViVmlld1ByaXZhdGUoUVF1aWNrV2ViVmlldyogdmlld3BvcnQpOwogICAg
IFJlZlB0cjxRdFdlYkNvbnRleHQ+IGNvbnRleHQ7CiAgICAgUmVmUHRyPFdlYktpdDo6V2ViUGFn
ZVByb3h5PiB3ZWJQYWdlUHJveHk7CkBAIC0xNTEsNiArMTcxLDggQEAgcHJvdGVjdGVkOgogICAg
IFFTY29wZWRQb2ludGVyPFFRdWlja1dlYlBhZ2U+IHBhZ2VWaWV3OwogICAgIFFRdWlja1dlYlZp
ZXcqIHFfcHRyOwogCisgICAgRmxpY2thYmxlQXhpc0xvY2tlciBheGlzTG9ja2VyOworCiAgICAg
UURlY2xhcmF0aXZlQ29tcG9uZW50KiBhbGVydERpYWxvZzsKICAgICBRRGVjbGFyYXRpdmVDb21w
b25lbnQqIGNvbmZpcm1EaWFsb2c7CiAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBwcm9tcHRE
aWFsb2c7Ci0tIAoxLjcuMTAKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>