<?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>84456</bug_id>
          
          <creation_ts>2012-04-20 08:51:06 -0700</creation_ts>
          <short_desc>[Qt] Multi-level tap-to-zoom</short_desc>
          <delta_ts>2012-04-22 09:43:49 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Allan Sandfeld Jensen">allan.jensen</reporter>
          <assigned_to name="Allan Sandfeld Jensen">allan.jensen</assigned_to>
          <cc>menard</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>606593</commentid>
    <comment_count>0</comment_count>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2012-04-20 08:51:06 -0700</bug_when>
    <thetext>The current zoom-out feature of tap-to-zoom makes it impossible to zoom in to progressively smaller areas.

We need a way to both allow refining zoom and detecting zoom-out gesture.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606599</commentid>
    <comment_count>1</comment_count>
      <attachid>138101</attachid>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2012-04-20 08:54:32 -0700</bug_when>
    <thetext>Created attachment 138101
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606611</commentid>
    <comment_count>2</comment_count>
      <attachid>138101</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-04-20 09:06:50 -0700</bug_when>
    <thetext>Comment on attachment 138101
Patch

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

&gt; Source/WebKit2/ChangeLog:12
&gt; +        Replace tap-to-zoomed flag with a stack of progressively higher zoom levels, 
&gt; +        and zoom out to last zoom-level when attempting to zoom to current level.
&gt; +        
&gt; +        Additionally detect a series of tap-to-zoom gestures on the same level and 
&gt; +        continue to zoom out.

I wonder how well this works in practise... let\s see

&gt; Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.cpp:373
&gt; +        // Zoom back out if attempting to scale to the same current scale, or
&gt; +        // attempting to continue scaling out from the inner most level.

This is not exactly what we want, it depends on whether we have a position change (larger/smaller than a treshold) as well. It is kind of common to scroll on ios by double tapping when zoomed in, as it will scroll and be perfectly aligned</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607198</commentid>
    <comment_count>3</comment_count>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2012-04-21 06:33:25 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 138101 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=138101&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/ChangeLog:12
&gt; &gt; +        Replace tap-to-zoomed flag with a stack of progressively higher zoom levels, 
&gt; &gt; +        and zoom out to last zoom-level when attempting to zoom to current level.
&gt; &gt; +        
&gt; &gt; +        Additionally detect a series of tap-to-zoom gestures on the same level and 
&gt; &gt; +        continue to zoom out.
&gt; 
&gt; I wonder how well this works in practise... let\s see
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.cpp:373
&gt; &gt; +        // Zoom back out if attempting to scale to the same current scale, or
&gt; &gt; +        // attempting to continue scaling out from the inner most level.
&gt; 
&gt; This is not exactly what we want, it depends on whether we have a position change (larger/smaller than a treshold) as well. It is kind of common to scroll on ios by double tapping when zoomed in, as it will scroll and be perfectly aligned

Yeah, I am getting to that part :) I am just adding one feature at a time and making sure it works. 

This patch is intended to be a similar but improved version of what we do on the N9.

Next up is checking if the double-click should move instead of zooming, but if possible I would like to handle that in a separate bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607356</commentid>
    <comment_count>4</comment_count>
      <attachid>138101</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-22 09:43:45 -0700</bug_when>
    <thetext>Comment on attachment 138101
Patch

Clearing flags on attachment: 138101

Committed r114857: &lt;http://trac.webkit.org/changeset/114857&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607357</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-22 09:43:49 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138101</attachid>
            <date>2012-04-20 08:54:32 -0700</date>
            <delta_ts>2012-04-22 09:43:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84456-20120420175439.patch</filename>
            <type>text/plain</type>
            <size>4907</size>
            <attacher name="Allan Sandfeld Jensen">allan.jensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0NzI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMGUxNzUxMThkOTEzMzNl
MzYwMDgxYzlhZDVmYzlmYjE3MDNjOTg1NS4uYjE5MTQxMzc4ZGM2NTM4MGQ2MDlkMmEzNmEzNDc1
ZTJhNDg1N2NmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI1IEBACiAyMDEyLTA0LTIwICBBbGxh
biBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5Abm9raWEuY29tPgogCisgICAgICAgIFtR
dF0gTXVsdGktbGV2ZWwgdGFwLXRvLXpvb20uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD04NDQ1NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorICAgICAgICAKKyAgICAgICAgUmVwbGFjZSB0YXAtdG8tem9vbWVkIGZsYWcgd2l0
aCBhIHN0YWNrIG9mIHByb2dyZXNzaXZlbHkgaGlnaGVyIHpvb20gbGV2ZWxzLCAKKyAgICAgICAg
YW5kIHpvb20gb3V0IHRvIGxhc3Qgem9vbS1sZXZlbCB3aGVuIGF0dGVtcHRpbmcgdG8gem9vbSB0
byBjdXJyZW50IGxldmVsLgorICAgICAgICAKKyAgICAgICAgQWRkaXRpb25hbGx5IGRldGVjdCBh
IHNlcmllcyBvZiB0YXAtdG8tem9vbSBnZXN0dXJlcyBvbiB0aGUgc2FtZSBsZXZlbCBhbmQgCisg
ICAgICAgIGNvbnRpbnVlIHRvIHpvb20gb3V0LgorCisgICAgICAgICogVUlQcm9jZXNzL3F0L1F0
Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlF0Vmlld3Bv
cnRJbnRlcmFjdGlvbkVuZ2luZTo6UXRWaWV3cG9ydEludGVyYWN0aW9uRW5naW5lKToKKyAgICAg
ICAgKFdlYktpdDo6UXRWaWV3cG9ydEludGVyYWN0aW9uRW5naW5lOjp6b29tVG9BcmVhR2VzdHVy
ZUVuZGVkKToKKyAgICAgICAgKFdlYktpdDo6UXRWaWV3cG9ydEludGVyYWN0aW9uRW5naW5lOjpw
aW5jaEdlc3R1cmVTdGFydGVkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvUXRWaWV3cG9ydElu
dGVyYWN0aW9uRW5naW5lLmg6CisgICAgICAgIChRdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmUp
OgorCisyMDEyLTA0LTIwICBBbGxhbiBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5Abm9r
aWEuY29tPgorCiAgICAgICAgIFtRdF1bV0syXSBDb252ZXJ0IHRvdWNoLXBvaW50IGFyZWEuCiAg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NDQzNAogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRWaWV3cG9ydEludGVyYWN0
aW9uRW5naW5lLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFZpZXdwb3J0SW50
ZXJhY3Rpb25FbmdpbmUuY3BwCmluZGV4IDA0Y2QzZmNlMDAwYzM2YTkwMjAwN2YwNDdlZGZiZjFm
MjE0OWM5MTQuLjEzOTAzNTZmMjg2ZTgyMThjZTQ1ZTVkNmQ4ODE3NjNhMTdhYmJhZWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFZpZXdwb3J0SW50ZXJhY3Rpb25F
bmdpbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFZpZXdwb3J0SW50
ZXJhY3Rpb25FbmdpbmUuY3BwCkBAIC0xMjUsOSArMTI1LDkgQEAgUXRWaWV3cG9ydEludGVyYWN0
aW9uRW5naW5lOjpRdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmUoUVF1aWNrV2ViVmlldyogdmll
d3BvcnQKICAgICAsIG1fc3VzcGVuZENvdW50KDApCiAgICAgLCBtX2hhc1N1c3BlbmRlZENvbnRl
bnQoZmFsc2UpCiAgICAgLCBtX2hhZFVzZXJJbnRlcmFjdGlvbihmYWxzZSkKLSAgICAsIG1fem9v
bWVkVG9BcmVhKGZhbHNlKQogICAgICwgbV9zY2FsZUFuaW1hdGlvbihuZXcgU2NhbGVBbmltYXRp
b24odGhpcykpCiAgICAgLCBtX3BpbmNoU3RhcnRTY2FsZSgtMSkKKyAgICAsIG1fem9vbU91dFNj
YWxlKDAuMCkKIHsKICAgICByZXNldCgpOwogCkBAIC0zNjcsMTIgKzM2NywyNSBAQCB2b2lkIFF0
Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZTo6em9vbVRvQXJlYUdlc3R1cmVFbmRlZChjb25zdCBR
UG9pbnRGJiB0b3VjaFBvaQogICAgIHFyZWFsIHRhcmdldENTU1NjYWxlID0gY3NzU2NhbGVGcm9t
SXRlbSh2aWV3cG9ydFJlY3Quc2l6ZSgpLndpZHRoKCkgLyBlbmRBcmVhLnNpemUoKS53aWR0aCgp
KTsKICAgICBxcmVhbCBlbmRJdGVtU2NhbGUgPSBpdGVtU2NhbGVGcm9tQ1NTKGlubmVyQm91bmRl
ZENTU1NjYWxlKHFNaW4odGFyZ2V0Q1NTU2NhbGUsIHFyZWFsKDIuNSkpKSk7CiAKLSAgICAvLyBa
b29tIGJhY2sgb3V0IG9uIGEgc2Vjb25kIGRvdWJsZSBjbGljaywgYnV0IHN0aWxsIGNlbnRlciBv
biB0aGUgbmV3IHRvdWNoIHBvaW50LgotICAgIGlmIChtX3pvb21lZFRvQXJlYSkgewotICAgICAg
ICBtX3pvb21lZFRvQXJlYSA9IGZhbHNlOwotICAgICAgICBlbmRJdGVtU2NhbGUgPSBpdGVtU2Nh
bGVGcm9tQ1NTKG1fbWluaW11bVNjYWxlKTsKLSAgICB9IGVsc2UKLSAgICAgICAgbV96b29tZWRU
b0FyZWEgPSB0cnVlOworICAgIHFyZWFsIGN1cnJlbnRTY2FsZSA9IG1fY29udGVudC0+Y29udGVu
dHNTY2FsZSgpOworICAgIGlmICghbV9zY2FsZVN0YWNrLmlzRW1wdHkoKSkgeworICAgICAgICAv
LyBab29tIGJhY2sgb3V0IGlmIGF0dGVtcHRpbmcgdG8gc2NhbGUgdG8gdGhlIHNhbWUgY3VycmVu
dCBzY2FsZSwgb3IKKyAgICAgICAgLy8gYXR0ZW1wdGluZyB0byBjb250aW51ZSBzY2FsaW5nIG91
dCBmcm9tIHRoZSBpbm5lciBtb3N0IGxldmVsLgorICAgICAgICBpZiAoZW5kSXRlbVNjYWxlID09
IG1fem9vbU91dFNjYWxlIHx8IGVuZEl0ZW1TY2FsZSA9PSBjdXJyZW50U2NhbGUpCisgICAgICAg
ICAgICBlbmRJdGVtU2NhbGUgPSBtX3NjYWxlU3RhY2sudGFrZUxhc3QoKTsKKyAgICAgICAgZWxz
ZSBpZiAoZW5kSXRlbVNjYWxlID4gY3VycmVudFNjYWxlKSB7CisgICAgICAgICAgICBtX3NjYWxl
U3RhY2suYXBwZW5kKGN1cnJlbnRTY2FsZSk7CisgICAgICAgICAgICBtX3pvb21PdXRTY2FsZSA9
IGVuZEl0ZW1TY2FsZTsKKyAgICAgICAgfSBlbHNlIHsgLy8gZW5kSXRlbVNjYWxlIDwgY3VycmVu
dFNjYWxlCisgICAgICAgICAgICAvLyBVbnN0YWNrIGFsbCBzY2FsZS1sZXZlbHMgZGVlcGVyIHRo
YW4gdGhlIG5ldyBsZXZlbCwgc28gYSB6b29tLW91dCB3b24ndCB6b29tIGluIHRvIGEgcHJldmlv
dXMgbGV2ZWwuCisgICAgICAgICAgICB3aGlsZSAoIW1fc2NhbGVTdGFjay5pc0VtcHR5KCkgJiYg
bV9zY2FsZVN0YWNrLmxhc3QoKSA+PSBlbmRJdGVtU2NhbGUpCisgICAgICAgICAgICAgICAgbV9z
Y2FsZVN0YWNrLnJlbW92ZUxhc3QoKTsKKyAgICAgICAgICAgIG1fem9vbU91dFNjYWxlID0gZW5k
SXRlbVNjYWxlOworICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgbV9zY2FsZVN0YWNr
LmFwcGVuZChjdXJyZW50U2NhbGUpOworICAgICAgICBtX3pvb21PdXRTY2FsZSA9IGVuZEl0ZW1T
Y2FsZTsKKyAgICB9CiAKICAgICAvLyBXZSB3YW50IHRvIGVuZCB1cCB3aXRoIHRoZSB0YXJnZXQg
YXJlYSBmaWxsaW5nIHRoZSB3aG9sZSB3aWR0aCBvZiB0aGUgdmlld3BvcnQgKGlmIHBvc3NpYmxl
KSwKICAgICAvLyBhbmQgY2VudHJhbGl6ZWQgdmVydGljYWxseSB3aGVyZSB0aGUgdXNlciByZXF1
ZXN0ZWQgem9vbS4gVGh1cyBvdXIgaG90c3BvdCBpcyB0aGUgY2VudGVyIG9mCkBAIC01MjYsNyAr
NTM5LDggQEAgdm9pZCBRdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmU6OnBpbmNoR2VzdHVyZVN0
YXJ0ZWQoY29uc3QgUVBvaW50RiYgcGluY2hDZW50ZXIKICAgICAgICAgcmV0dXJuOwogCiAgICAg
bV9oYWRVc2VySW50ZXJhY3Rpb24gPSB0cnVlOwotICAgIG1fem9vbWVkVG9BcmVhID0gZmFsc2U7
CisgICAgbV9zY2FsZVN0YWNrLmNsZWFyKCk7CisgICAgbV96b29tT3V0U2NhbGUgPSAwLjA7CiAK
ICAgICBtX3NjYWxlVXBkYXRlRGVmZXJyZXIgPSBhZG9wdFB0cihuZXcgVmlld3BvcnRVcGRhdGVE
ZWZlcnJlcih0aGlzLCBWaWV3cG9ydFVwZGF0ZURlZmVycmVyOjpEZWZlclVwZGF0ZUFuZFN1c3Bl
bmRDb250ZW50KSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9R
dFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9x
dC9RdFZpZXdwb3J0SW50ZXJhY3Rpb25FbmdpbmUuaAppbmRleCAzZDU4ODk4OWYzMzYzNTdiMzJm
ZWFiNzUxMDRhNzRkYzdhMDRlYmQ5Li5kN2RkNGY3MzQwNmY3N2IyZGEwMGZjZmQzMWM4Mjg0MzQ0
YmE1NmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRWaWV3cG9y
dEludGVyYWN0aW9uRW5naW5lLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0
Vmlld3BvcnRJbnRlcmFjdGlvbkVuZ2luZS5oCkBAIC0xNDgsNyArMTQ4LDYgQEAgcHJpdmF0ZToK
ICAgICBPd25QdHI8Vmlld3BvcnRVcGRhdGVEZWZlcnJlcj4gbV90b3VjaFVwZGF0ZURlZmVycmVy
OwogCiAgICAgYm9vbCBtX2hhZFVzZXJJbnRlcmFjdGlvbjsKLSAgICBib29sIG1fem9vbWVkVG9B
cmVhOwogCiAgICAgY2xhc3MgU2NhbGVBbmltYXRpb24gOiBwdWJsaWMgUVZhcmlhbnRBbmltYXRp
b24gewogICAgIHB1YmxpYzoKQEAgLTE2Myw2ICsxNjIsOCBAQCBwcml2YXRlOgogICAgIFFQb2lu
dEYgbV9sYXN0UGluY2hDZW50ZXJJblZpZXdwb3J0Q29vcmRpbmF0ZXM7CiAgICAgUVBvaW50RiBt
X2xhc3RTY3JvbGxQb3NpdGlvbjsKICAgICBxcmVhbCBtX3BpbmNoU3RhcnRTY2FsZTsKKyAgICBx
cmVhbCBtX3pvb21PdXRTY2FsZTsKKyAgICBRTGlzdDxxcmVhbD4gbV9zY2FsZVN0YWNrOwogfTsK
IAogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>