The attached changeset speeds up initialization of scrollpanes containing horizontal scrollbars by caching scroll range values.
Compared to turning off horz scrollbars altogether, "Browser openBrowser" is still about 70ms slower, and "Browser fullOnClass: Browser selector: openBrowser" is about 120ms slower. A signifigant speedup nonetheless with a penalty analagous to turning rounded window corners on.
Alright, that speeds things back up quite a bit. I think that may be fast enough to turn the (optional) horizontal scrollbars back on, if we add it to 3.9alpha. What do you think, Stephane?
Here are the test results, with the DoIt from my previous post ("UI benchmarks..."):
3.9alpha-6606: 1-10: 6728 11-20: 11673 21-30: 17152
3.9alpha-6606 with #alwaysHideHScrollbar off: 1-10: 12562 11-20: 17818 21-30: 23245
3.9alpha-6606 with #alwaysHideHScrollbar off and Steven's fasterHScrollbar.cs: 1-10: 7816 11-20: 13101 21-30: 18395
3.9alpha-6606 with #alwaysHideHScrollbar off and Steven's fasterHScrollbar.cs, plus Accuny text/list/code fonts & no rounded corners: 1-10: 6861 11-20: 7851 21-30: 4640
- Doug
On Apr 3, 2005, at 3:46 PM, Steven Swerling wrote:
The attached changeset speeds up initialization of scrollpanes containing horizontal scrollbars by caching scroll range values.
Compared to turning off horz scrollbars altogether, "Browser openBrowser" is still about 70ms slower, and "Browser fullOnClass: Browser selector: openBrowser" is about 120ms slower. A signifigant speedup nonetheless with a penalty analagous to turning rounded window corners on.
<fasterHScrollbar.2.cs.gz>
Doug Way wrote:
Alright, that speeds things back up quite a bit. I think that may be fast enough to turn the (optional) horizontal scrollbars back on, if we add it to 3.9alpha. What do you think, Stephane?
I would wait a bit. Any bug in scroll logic is a very big one that could cause much pain and suffering, since any such bug can prevent the debugger from opening. Best if just a few people let it "steep" in a few people's images for awhile first -- people who can handle it when critical display logic goes awry once in a blue moon.
A side note: The ScrollPane permits overriding system prefs after the pane has been instantiated. So why not turn #alwaysHideHScrollBar on by default, but make a few exceptions for special cases? For instance, the FileList is a bit hard to use w/out the hScrollbar, so just hard code "dirList hideHScrollbarIndefinitely: false" in the file list code. Guess you'd have to change the name of the pref to "usuallyHideHScrollBar" in that case.
It is ok for me. I think that horizontal scrollbars in class categories are not really good. On 4 avr. 05, at 0:20, Doug Way wrote:
Alright, that speeds things back up quite a bit. I think that may be fast enough to turn the (optional) horizontal scrollbars back on, if we add it to 3.9alpha. What do you think, Stephane?
Here are the test results, with the DoIt from my previous post ("UI benchmarks..."):
3.9alpha-6606: 1-10: 6728 11-20: 11673 21-30: 17152
3.9alpha-6606 with #alwaysHideHScrollbar off: 1-10: 12562 11-20: 17818 21-30: 23245
3.9alpha-6606 with #alwaysHideHScrollbar off and Steven's fasterHScrollbar.cs: 1-10: 7816 11-20: 13101 21-30: 18395
3.9alpha-6606 with #alwaysHideHScrollbar off and Steven's fasterHScrollbar.cs, plus Accuny text/list/code fonts & no rounded corners: 1-10: 6861 11-20: 7851 21-30: 4640
- Doug
On Apr 3, 2005, at 3:46 PM, Steven Swerling wrote:
The attached changeset speeds up initialization of scrollpanes containing horizontal scrollbars by caching scroll range values.
Compared to turning off horz scrollbars altogether, "Browser openBrowser" is still about 70ms slower, and "Browser fullOnClass: Browser selector: openBrowser" is about 120ms slower. A signifigant speedup nonetheless with a penalty analagous to turning rounded window corners on.
<fasterHScrollbar.2.cs.gz>
On Monday, April 4, 2005, at 1:13:34 AM, stéphane ducasse wrote:
It is ok for me. I think that horizontal scrollbars in class categories are not really good.
I've read that horizontal scrollbars are never really good. That agrees with my own personal findings.
Ron Jeffries www.XProgramming.com Fear is the mindkiller. --Bene Gesserit Litany Against Fear
Thank you for your report. I have transferred your report to Squeak's Mantis Database and you can followup on the issue if desired by going to http://bugs.impara.de/view.php?id=1043 .
In the future please report new issues on Squeak's Mantis Database at http://bugs.impara.de/ .
Thanks!
On Sun, 2005-04-03 at 15:46 -0400, Steven Swerling wrote:
The attached changeset speeds up initialization of scrollpanes containing horizontal scrollbars by caching scroll range values.
Compared to turning off horz scrollbars altogether, "Browser openBrowser" is still about 70ms slower, and "Browser fullOnClass: Browser selector: openBrowser" is about 120ms slower. A signifigant speedup nonetheless with a penalty analagous to turning rounded window corners on.
squeak-dev@lists.squeakfoundation.org