<?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>172926</bug_id>
          
          <creation_ts>2017-06-05 10:50:22 -0700</creation_ts>
          <short_desc>Viewport units change when contentEditable is in an iframe</short_desc>
          <delta_ts>2017-06-06 11:42:48 -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>CSS</component>
          <version>Safari 10</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 10</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc>http://csnl.net/_stuff/ios-iframe.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Cory LaViska">cory</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1315719</commentid>
    <comment_count>0</comment_count>
      <attachid>312015</attachid>
    <who name="Cory LaViska">cory</who>
    <bug_when>2017-06-05 10:50:22 -0700</bug_when>
    <thetext>Created attachment 312015
Test case

This issue appears to affect any element using viewport units on an iOS device. When a contentEditable element is inside an iframe and the content changes, causing the iframe to grow (e.g. hitting enter or pasting content), the viewport units also change. This causes all elements using viewport units to expand or contract accordingly, which makes it extremely difficult to perform simple editing tasks.

Test case: http://csnl.net/_stuff/ios-iframe.html

Video demonstrating the bug on iPad: http://csnl.net/_stuff/ios-ce-iframe-demo.mp4

This affects all contentEditable=&quot;true&quot; elements rendered inside an iframe on iOS, including those controlled by TinyMCE, CKEditor, etc. While this might seem like an edge case, it&apos;s not uncommon to use an iframe for inline editing applications (e.g. https://www.postleaf.org) to scope HTML/CSS/JS separately from an admin panel.

Attached are the test files I linked to above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315902</commentid>
    <comment_count>1</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-06-05 22:21:10 -0700</bug_when>
    <thetext>Seems like an unfortunate side-effect of frame flattening.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1315903</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-06-05 22:22:46 -0700</bug_when>
    <thetext>&lt;rdar://problem/32581387&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1316138</commentid>
    <comment_count>3</comment_count>
    <who name="Cory LaViska">cory</who>
    <bug_when>2017-06-06 11:42:48 -0700</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #1)
&gt; Seems like an unfortunate side-effect of frame flattening.

I was thinking that might be the case. I can&apos;t seem to find the purpose of iframe flattening, but as I understand, there&apos;s no way to override that behavior. Out of curiosity, your insight into that would be awesome.

Regarding the issue, is it possible to use the parent window&apos;s viewport width/height inside the iframe? It would make more sense, IMO, since the viewport isn&apos;t expected to change unless orientation changes.

Currently, even iframes that don&apos;t change in size display images and such too large when there&apos;s a lot of content.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>312015</attachid>
            <date>2017-06-05 10:50:22 -0700</date>
            <delta_ts>2017-06-05 10:50:22 -0700</delta_ts>
            <desc>Test case</desc>
            <filename>ios-iframe-viewport-bug.zip</filename>
            <type>application/zip</type>
            <size>2402</size>
            <attacher name="Cory LaViska">cory</attacher>
            
              <data encoding="base64">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
AAC9BwAAAAA=
</data>

          </attachment>
      

    </bug>

</bugzilla>