<?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>5453</bug_id>
          
          <creation_ts>2005-10-21 13:41:06 -0700</creation_ts>
          <short_desc>FlexScroll Custom Scrollbars don&apos;t work with Safari</short_desc>
          <delta_ts>2007-01-20 16:41:17 -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>Layout and Rendering</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>NeedsReduction</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>emrahreg</cc>
    
    <cc>ian</cc>
    
    <cc>jonathanjohnsson</cc>
    
    <cc>mitz</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>22446</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2005-10-21 13:41:06 -0700</bug_when>
    <thetext>These work with Opera, Firefox and WinIE.  See:

http://www.hesido.com/web.php?page=customscrollbar

It could be something wrong with the scripts, or it could be our bug.  Someone needs to reduce it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32072</commentid>
    <comment_count>1</comment_count>
      <attachid>6398</attachid>
    <who name="">jonathanjohnsson</who>
    <bug_when>2006-02-10 14:56:11 -0800</bug_when>
    <thetext>Created attachment 6398
Testcase reduction (partly)

In JavaScript, changing the div&apos;s overflow to &quot;hidden&quot; has no effect if offsetHeight has been called on the div before. Firefox 1.5 and Opera 9 hides the scroll bar, Safari doesn&apos;t. This seems to be a small part of the reported bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51217</commentid>
    <comment_count>2</comment_count>
    <who name="Emrah BASKAYA">emrahreg</who>
    <bug_when>2006-07-31 11:45:57 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; These work with Opera, Firefox and WinIE.  See:
&gt; 
&gt; http://www.hesido.com/web.php?page=customscrollbar
&gt; 
&gt; It could be something wrong with the scripts, or it could be our bug.  Someone needs to reduce it.

Hi, I am the author of the script. From until version 1.1.0, I started doing a Safari block by default so Safari users can browse the contents without problems. For easy testing, I am leaving a no-block version at this address:
http://www.hesido.com/web.php?page=customscrollbarsafariunblock

I don&apos;t have a Mac to do any further reduction. I&apos;d appreciate any feedback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51237</commentid>
    <comment_count>3</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-07-31 13:53:39 -0700</bug_when>
    <thetext>Ok, this first bug is fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51238</commentid>
    <comment_count>4</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-07-31 13:55:34 -0700</bug_when>
    <thetext>And that was the whole issue.  The native bars were just obscuring the non-native ones.  It&apos;s all good now.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51239</commentid>
    <comment_count>5</comment_count>
    <who name="Emrah BASKAYA">emrahreg</who>
    <bug_when>2006-07-31 13:59:49 -0700</bug_when>
    <thetext>Thanks for the information. I will remove the Safari block with the next update.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51240</commentid>
    <comment_count>6</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-07-31 14:16:57 -0700</bug_when>
    <thetext>Actually you could work around the bug now I suspect if you just don&apos;t do the auto-&gt;hidden swap.  In Safari only just start off with the overflow sections set to hidden.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51244</commentid>
    <comment_count>7</comment_count>
    <who name="Emrah BASKAYA">emrahreg</who>
    <bug_when>2006-07-31 14:58:56 -0700</bug_when>
    <thetext>I updated the script to set the div to overflow:invisible without first reading its size with offsetWidth/Height, and only afterwards (updated the no-safari block page,1.6.2 beta1), but my friend reports that it still doesn&apos;t work (he hasn&apos;t downloaded any Safari updates). I have to set the overflow:invisible within the script or otherwise people can&apos;t access the sites content without javascript turned on, overflow has to be auto for people without javascript. I may try going for bug detection, and I think I&apos;ll have to keep the block until I come up with a solution to keep older Safari&apos;s happy. Any suggestion is welcome.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>51287</commentid>
    <comment_count>8</comment_count>
    <who name="">jonathanjohnsson</who>
    <bug_when>2006-07-31 23:35:51 -0700</bug_when>
    <thetext>Latest Safari release and latest WebKit before this fix already show different behaviour using your scrolls. Especially, the top right box can be scrolled with the latter, since the scroll bar isn&apos;t completetly obscured by the native scroll bar. This might imply that there were another, now fixed, bug between latest release and latest nightly, that your scrolls needed fixed.

I understand your decision wrt going from auto to hidden in javascript, but I don&apos;t know how to work around old Safaris bugs.

Just so you know, even if it&apos;s fixed in WebKit doesn&apos;t mean Safari immediately gets the fix. Safari updates usually come with OS X 10.x.x updates, which are a couple months between. Also, I think there is no knowing if this very bug fix gets into such an update, well maybe unless you are Apple. And then there is the state of Safari on 10.3, of which I know little (don&apos;t know if only security fixes go there, or other fixes also).

All in all, I think that if you want as many as possible to be able to interact with your pages, you should wait until a released version of Safari supports the custom scroll bars, and then sniff for that version number, blocking earlier versions. Unless you find a workaround, of course.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>34070</commentid>
    <comment_count>9</comment_count>
    <who name="Emrah BASKAYA">emrahreg</who>
    <bug_when>2007-01-20 16:22:36 -0800</bug_when>
    <thetext>I finally got around detecting newer Safari&apos;s (&gt;2.0.4), and implemented it on
http://www.hesido.com/web.php?page=customscrollbarsafariblocktest
as beta. I thought of bug detection but that would elongate the code a lot, so I simply went for HTMLElement and HTMLElement.prototype detection on top of the simple user-agent Safari detect, which allowed me to run fleXcroll on new webkits, while successfully blocking old Safari&apos;s with the fewest line of code. I&apos;d appreciate if you could do some testing, I am testing using a VNC server and I could only get thus far.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>34068</commentid>
    <comment_count>10</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2007-01-20 16:31:40 -0800</bug_when>
    <thetext>There&apos;s info here about how to detect WebKit using JavaScript in case you&apos;re interested:

http://trac.webkit.org/projects/webkit/wiki/DetectingWebKit

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>34066</commentid>
    <comment_count>11</comment_count>
    <who name="Emrah BASKAYA">emrahreg</who>
    <bug_when>2007-01-20 16:41:17 -0800</bug_when>
    <thetext>Thanks David, I had already seen that and would resort to that method had HTMLElement.prototype not been implemented on new webkits. I had to go for the simpler approach of browser capability, with the fewest size overhead. I think many script author&apos;s would do the same instead of messing with version numbers. I am hoping new bugs are not introduced of course. Safari 3.0 will be what matters.
</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>6398</attachid>
            <date>2006-02-10 14:56:11 -0800</date>
            <delta_ts>2006-02-10 14:56:11 -0800</delta_ts>
            <desc>Testcase reduction (partly)</desc>
            <filename>5453reduction.html</filename>
            <type>text/html</type>
            <size>2401</size>
            <attacher>jonathanjohnsson</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFs
Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25h
bC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CjxoZWFk
Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+DQpmdW5jdGlvbiBjaGFuZ2VFbGVtZW50
KHRhcmdldElkKSB7DQoJdmFyIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGFyZ2V0SWQp
Ow0KICAgIGVsLm9mZnNldEhlaWdodA0KCWVsLnN0eWxlLm92ZXJmbG93ID0gJ2hpZGRlbic7DQp9
DQoNCjwvc2NyaXB0Pg0KDQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgo8IS0tCiNzY3JvbGxidWcg
ewp3aWR0aDogMzAwcHg7CmhlaWdodDogMzAwcHg7Cm92ZXJmbG93OiBhdXRvOwpwb3NpdGlvbjog
YWJzb2x1dGU7Cn0KLS0+Cjwvc3R5bGU+Cgo8L2hlYWQ+Cjxib2R5PgogIDxkaXYgaWQ9J3Njcm9s
bGJ1Zyc+CkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNpY2lu
ZyBlbGl0LCBzZWQgZG8gZWl1c21vZCB0ZW1wb3IgaW5jaWRpZHVudCB1dCBsYWJvcmUgZXQgZG9s
b3JlIG1hZ25hIGFsaXF1YS4gVXQgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBl
eGVyY2l0YXRpb24gdWxsYW1jbyBsYWJvcmlzIG5pc2kgdXQgYWxpcXVpcCBleCBlYSBjb21tb2Rv
IGNvbnNlcXVhdC4gRHVpcyBhdXRlIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQgaW4gdm9s
dXB0YXRlIHZlbGl0IGVzc2UgY2lsbHVtIGRvbG9yZSBldSBmdWdpYXQgbnVsbGEgcGFyaWF0dXIu
IEV4Y2VwdGV1ciBzaW50IG9jY2FlY2F0IGN1cGlkYXRhdCBub24gcHJvaWRlbnQsIHN1bnQgaW4g
Y3VscGEgcXVpIG9mZmljaWEgZGVzZXJ1bnQgbW9sbGl0IGFuaW0gaWQgZXN0IGxhYm9ydW0uIExv
cmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNpY2luZyBlbGl0LCBz
ZWQgZG8gZWl1c21vZCB0ZW1wb3IgaW5jaWRpZHVudCB1dCBsYWJvcmUgZXQgZG9sb3JlIG1hZ25h
IGFsaXF1YS4gVXQgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2l0YXRp
b24gdWxsYW1jbyBsYWJvcmlzIG5pc2kgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVh
dC4gRHVpcyBhdXRlIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQgaW4gdm9sdXB0YXRlIHZl
bGl0IGVzc2UgY2lsbHVtIGRvbG9yZSBldSBmdWdpYXQgbnVsbGEgcGFyaWF0dXIuIEV4Y2VwdGV1
ciBzaW50IG9jY2FlY2F0IGN1cGlkYXRhdCBub24gcHJvaWRlbnQsIHN1bnQgaW4gY3VscGEgcXVp
IG9mZmljaWEgZGVzZXJ1bnQgbW9sbGl0IGFuaW0gaWQgZXN0IGxhYm9ydW0uIExvcmVtIGlwc3Vt
IGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNpY2luZyBlbGl0LCBzZWQgZG8gZWl1
c21vZCB0ZW1wb3IgaW5jaWRpZHVudCB1dCBsYWJvcmUgZXQgZG9sb3JlIG1hZ25hIGFsaXF1YS4g
VXQgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2l0YXRpb24gdWxsYW1j
byBsYWJvcmlzIG5pc2kgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4gRHVpcyBh
dXRlIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQgaW4gdm9sdXB0YXRlIHZlbGl0IGVzc2Ug
Y2lsbHVtIGRvbG9yZSBldSBmdWdpYXQgbnVsbGEgcGFyaWF0dXIuIEV4Y2VwdGV1ciBzaW50IG9j
Y2FlY2F0IGN1cGlkYXRhdCBub24gcHJvaWRlbnQsIHN1bnQgaW4gY3VscGEgcXVpIG9mZmljaWEg
ZGVzZXJ1bnQgbW9sbGl0IGFuaW0gaWQgZXN0IGxhYm9ydW0uTG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2ljaW5nIGVsaXQsIHNlZCBkbyBlaXVzbW9kIHRlbXBv
ciBpbmNpZGlkdW50IHV0IGxhYm9yZSBldCBkb2xvcmUgbWFnbmEgYWxpcXVhLiBVdCBlbmltIGFk
IG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaXRhdGlvbiB1bGxhbWNvIGxhYm9yaXMg
bmlzaSB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LiBEdWlzIGF1dGUgaXJ1cmUg
ZG9sb3IgaW4gcmVwcmVoZW5kZXJpdCBpbiB2b2x1cHRhdGUgdmVsaXQgZXNzZSBjaWxsdW0gZG9s
b3JlIGV1IGZ1Z2lhdCBudWxsYSBwYXJpYXR1ci4gRXhjZXB0ZXVyIHNpbnQgb2NjYWVjYXQgY3Vw
aWRhdGF0IG5vbiBwcm9pZGVudCwgc3VudCBpbiBjdWxwYSBxdWkgb2ZmaWNpYSBkZXNlcnVudCBt
b2xsaXQgYW5pbSBpZCBlc3QgbGFib3J1bS4gPC9kaXY+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZh
c2NyaXB0Jz4KY2hhbmdlRWxlbWVudCgnc2Nyb2xsYnVnJyk7Cjwvc2NyaXB0Pg0KPC9ib2R5Pgo8
L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>