<?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>39884</bug_id>
          
          <creation_ts>2010-05-28 10:33:45 -0700</creation_ts>
          <short_desc>Full Page Zoom: rounding errors with element metrics</short_desc>
          <delta_ts>2012-10-08 16:14:57 -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>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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>
          <dependson>60318</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ojan Vafai">ojan</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>djlee</cc>
    
    <cc>eae</cc>
    
    <cc>erosenthal</cc>
    
    <cc>gregsimon</cc>
    
    <cc>hyatt</cc>
    
    <cc>isherman</cc>
    
    <cc>komoroske</cc>
    
    <cc>leviw</cc>
    
    <cc>logingx</cc>
    
    <cc>tonikitoo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>231778</commentid>
    <comment_count>0</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-05-28 10:33:45 -0700</bug_when>
    <thetext>Google Spreadsheets has some bugs with rounding errors during full page zoom. The cause is the rounding to an int in adjustForLocalZoom in Element.cpp. It used to be unusable during full page zoom because the rounding errors would add up to quite a bit. They&apos;ve thrown a bunch of JS code at it that detects the zoom level and guesses at what the rounding error will be. It mostly works now, but it&apos;s unfortunate, it&apos;s fragile and this surely affects other sites.

Firefox doesn&apos;t have this problem because use decimal values both interally and exposed to JS. Should we do the same? That&apos;s a super scary change, but it&apos;s the only way I can think of making full-page zoom actually work.

Test case attached.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>232045</commentid>
    <comment_count>1</comment_count>
      <attachid>57400</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-05-28 18:33:11 -0700</bug_when>
    <thetext>Created attachment 57400
test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>737185</commentid>
    <comment_count>2</comment_count>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2012-10-08 16:14:57 -0700</bug_when>
    <thetext>This has been fixed by subpixel layout and works as expected on ports that enable the SUBPIXEL_LAYOUT flag. Marking as fixed.

Bug 85532 tracks the ports that have turned on the flag.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>57400</attachid>
            <date>2010-05-28 18:33:11 -0700</date>
            <delta_ts>2010-05-28 18:33:11 -0700</delta_ts>
            <desc>test case</desc>
            <filename>scratch.html</filename>
            <type>text/html</type>
            <size>378</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">PHN0eWxlPgpodG1sIHsKICAgIHpvb206IDE1MCU7Cn0KYm9keSA+IGRpdiB7CiAgICBwb3NpdGlv
bjphYnNvbHV0ZTsKICAgIHRvcDoyZW07CiAgICBsZWZ0OjA7CiAgICB3aWR0aDoyMDBweDsKfQo8
L3N0eWxlPgoKVGhlcmUgc2hvdWxkIGJlIGEgc29saWQgZ3JlZW4gYm94IGJlbG93LiBObyByZWQu
CjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmVkO2hlaWdodDoxNTBweDsiPjwvZGl2Pgo8
ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmdyZWVuIj4KPHNjcmlwdD4KZm9yICh2YXIgaSA9
IDA7IGkgPCAxMDsgaSsrKSB7CiAgICBkb2N1bWVudC53cml0ZSgnPGRpdiBzdHlsZT0iaGVpZ2h0
OjE1cHgiPjwvZGl2PicpOwp9Cjwvc2NyaXB0Pgo8L2Rpdj4K
</data>

          </attachment>
      

    </bug>

</bugzilla>