Re: Exmh 2.7 Flist much slower?
Brent Welch <[email protected]>
| Newsgroups | gmane.mail.exmh.devel |
|---|---|
| Message-ID | <[email protected]> |
I figured out the packing bug that makes the ftoc lines preference
not match up with your expectations. The simplest fix to try is
at about line 585 in exwin.tcl, make it look like this:
set exwin(ftext) [Widget_Text [Widget_Frame .ftocframe ftoc Ftoc $fixed] \
$exwin(ftextLines)]
where the packing option should be $fixed, not $expand. The current code
has $expand, which means that the message display and and ftoc display
both compete for extra space available. Changing it to $fixed means it
stays the size requested by the text widget. The actual fix I'm using
is:
# Folder display (Ftoc). If this shares the window with the message
# display, then do the non-expand (i.e., fixed) packing. Otherwise
# pack it so it with expand enabled so it fills up the window.
set pack_opts [expr {$exwin(toplevelMsg) ? "$expand" : "$fixed"}]
set exwin(ftext) [Widget_Text [Widget_Frame .ftocframe ftoc Ftoc $pack_opts] \
$exwin(ftextLines)]
I haven't tested with the toplevelMsg yet, however, but it should do
the right thing.
>>>Brent Welch said:
> The pack calls are all one-time setup of the window hierarchy.
> The resize-the-pane code is all about computing a new ftextLines
> value. Then that value is set, and a trace on the variable triggers
> a call to ExwinFixupFtextLines that configures the height of the
> window. This is all strangely indirect, and at some point I should
> convert to the panewindow widget in Tk 8.4.
>
> One thing to check is what the computed ftextLines value is compared
> to what is displayed. When you use the black diamond to resize the
> panes it is recomputing that value, then setting the display based
> on that. There is some crufty code to convert from the pixel locations
> of the resize line to the number of text lines that match that. It
> is possible that that code was somehow damaged.
--
Brent Welch
Software Architect, Panasas Inc
Delivering the premier storage system for scalable Linux clusters
www.panasas.com
[email protected]