<?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>117059</bug_id>
          
          <creation_ts>2013-05-30 17:29:30 -0700</creation_ts>
          <short_desc>iOS touch scrolling doesn&apos;t take occluding elements into account</short_desc>
          <delta_ts>2019-02-06 09:18:37 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>Safari 9</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 9.3</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>HasReduction, InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Rick Byers">rbyers</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>dev+webkit</cc>
    
    <cc>dino</cc>
    
    <cc>eoconnor</cc>
    
    <cc>jonlee</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tahoon</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>webkit</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>895746</commentid>
    <comment_count>0</comment_count>
    <who name="Rick Byers">rbyers</who>
    <bug_when>2013-05-30 17:29:30 -0700</bug_when>
    <thetext>If you have a div using -webkit-overflow-scrolling: touch, then any touches in the region of that div will cause it to scroll, even if the touches are actually landing on another element that&apos;s on top of the scrolling element.  Repro here: http://jsbin.com/ezovup/2 - touching the header shouldn&apos;t scroll the underlying list (eg. it might have buttons you want to tap).

Now I don&apos;t know anything about how mobile Safari implements this (since their touch support is all in a fork of WebKit), but I assume it&apos;s similar to Chrome (except that we no longer rely on a special CSS property, accelerated touch scrolling is always enabled).  I assume that -webkit-overflow-scrolling: touch means that scrolling is handled off the main WebKit thread, and since only the main thread has access to the DOM this must rely on sending a list of &apos;fast scrollable regions&apos; from the main thread.  So the bug is that the thread doing the scrolling knows about the rectangle for fast scrolling, but not about the rectangle of the div that&apos;s occluding it.

[discussion on G+ here: https://plus.google.com/115788095648461403871/posts/UXwZJbNtWGj]

Tested on iOS 6.1.3
Works properly on Chrome Android and ChromeOS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896616</commentid>
    <comment_count>1</comment_count>
    <who name="Theresa O&apos;Connor">eoconnor</who>
    <bug_when>2013-06-03 14:24:11 -0700</bug_when>
    <thetext>&lt;rdar://problem/9671514&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1134620</commentid>
    <comment_count>2</comment_count>
    <who name="Rick Byers">rbyers</who>
    <bug_when>2015-10-19 10:55:43 -0700</bug_when>
    <thetext>Still reproduces on iOS 9</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478124</commentid>
    <comment_count>3</comment_count>
      <attachid>354696</attachid>
    <who name="">tahoon</who>
    <bug_when>2018-11-13 13:33:01 -0800</bug_when>
    <thetext>Created attachment 354696
Repro case: simple overlay using absolute position and minimal CSS rules

Swiping on a position:absolute overlay causes the position:absolute element below to scroll.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478131</commentid>
    <comment_count>4</comment_count>
    <who name="">tahoon</who>
    <bug_when>2018-11-13 13:46:06 -0800</bug_when>
    <thetext>Still reproduces easily in iOS 12. Tested on iOS 9, 10, and 11 also.

See attachment 354696. Swiping vertically anywhere on the layer above will scroll the layer below if the latter has -webkit-overflow-scrolling:touch. This also reproduces if the bottom layer has position:static.

Does not repro if the layer below has -webkit-overflow-scrolling:auto.

If the top layer is scrollable, then swiping the top layer will correctly scroll that layer only…until the start or end of the scrolling box is reached. Attempting to scroll past it will incorrectly scroll the layer below.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1503207</commentid>
    <comment_count>5</comment_count>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2019-02-06 09:18:37 -0800</bug_when>
    <thetext>Mass move bugs into the DOM component.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>354696</attachid>
            <date>2018-11-13 13:33:01 -0800</date>
            <delta_ts>2018-11-13 13:33:01 -0800</delta_ts>
            <desc>Repro case: simple overlay using absolute position and minimal CSS rules</desc>
            <filename>Repro 117059 - swiping on layer scrolls contents underneath.html</filename>
            <type>text/html</type>
            <size>1334</size>
            <attacher>tahoon</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCiAgPGhlYWQ+DQogICAgPHRpdGxlPkJ1ZyAxMTcwNTk8
L3RpdGxlPg0KICA8L2hlYWQ+DQogIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0
aD1kZXZpY2Utd2lkdGgiPg0KICA8c3R5bGU+DQogICAgLmNvbnRlbnQgew0KICAgICAgICBvdmVy
Zmxvdzogc2Nyb2xsOw0KICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7
DQogICAgICAgIGhlaWdodDogMjUwcHg7DQogICAgICAgIHdpZHRoOiAyNTBweDsNCiAgICB9DQoN
CiAgICAjb3ZlcmxheXsNCiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgICAgICB3aWR0
aDogMTAwcHg7DQogICAgICAgIGhlaWdodDogMTgwcHg7DQogICAgICAgIHRvcDogMDsNCiAgICAg
ICAgbGVmdDogMDsNCiAgICAgICAgcGFkZGluZzogMWVtOw0KICAgICAgICBib3JkZXI6IDJweCBz
b2xpZCBibGFjazsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93Ow0KICAgIH0NCg0K
ICAgIC5jb250ZW50ID4gZGl2IHsNCiAgICAgICAgbWFyZ2luOiAzMHB4IDA7DQogICAgfQ0KICA8
L3N0eWxlPg0KPC9oZWFkPg0KPGJvZHk+DQogIDxkaXY+DQogICAgPGRpdiBjbGFzcz0nY29udGVu
dCc+DQogICAgICA8ZGl2PnRoZXNlIGFyZSB0aGUgY29udGVudHMgYXQgdGhlIGJvdHRvbTwvZGl2
Pg0KICAgICAgPGRpdj50aGVzZSBhcmUgdGhlIGNvbnRlbnRzIGF0IHRoZSBib3R0b208L2Rpdj4N
CiAgICAgIDxkaXY+dGhlc2UgYXJlIHRoZSBjb250ZW50cyBhdCB0aGUgYm90dG9tPC9kaXY+DQog
ICAgICA8ZGl2PnRoZXNlIGFyZSB0aGUgY29udGVudHMgYXQgdGhlIGJvdHRvbTwvZGl2Pg0KICAg
ICAgPGRpdj50aGVzZSBhcmUgdGhlIGNvbnRlbnRzIGF0IHRoZSBib3R0b208L2Rpdj4NCiAgICAg
IDxkaXY+dGhlc2UgYXJlIHRoZSBjb250ZW50cyBhdCB0aGUgYm90dG9tPC9kaXY+DQogICAgICA8
ZGl2PnRoZXNlIGFyZSB0aGUgY29udGVudHMgYXQgdGhlIGJvdHRvbTwvZGl2Pg0KICAgICAgPGRp
dj50aGVzZSBhcmUgdGhlIGNvbnRlbnRzIGF0IHRoZSBib3R0b208L2Rpdj4NCiAgICAgIDxkaXY+
dGhlc2UgYXJlIHRoZSBjb250ZW50cyBhdCB0aGUgYm90dG9tPC9kaXY+DQogICAgICA8ZGl2PnRo
ZXNlIGFyZSB0aGUgY29udGVudHMgYXQgdGhlIGJvdHRvbTwvZGl2Pg0KICAgIDwvZGl2Pg0KICAg
IDxkaXYgaWQ9J292ZXJsYXknPg0KICAgICAgU2Nyb2xsaW5nIGluIHRoaXMgeWVsbG93IHJlY3Rh
bmdsZSBzaG91bGQgbm90IHNjcm9sbCBjb250ZW50cyBiZWhpbmQNCiAgICA8L2Rpdj4NCiAgPC9k
aXY+DQo8L2JvZHk+DQo8L2h0bWw+DQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>