[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] chanlist treeview
On Mon, Apr 14, 2003 at 09:09:10PM +1000, Peter Zelezny wrote:
> There's some kind of strange bug. When I try to resize column 0 while it's
> downloading, it disappears. It's probably changed to 0 size, and I can't
> get it back. Can you reproduce this?
I've seen it before, and played with it a bit but couldn't figure out at
the time why it does this. I agree it's somehow gone to zero size and
become unrecoverable.
I just tried it again and can't reproduce it though. I'm not sure what
conditions trigger the bug.
> I've compared the current gtkclist and your patch, and the results
> arn't all that bright. It's a good 10x slower. I'd imagine this'd make
> it close to unusable on a ~300mhz machine (does someone want to try
> that?).
True, though I would expect that for dialup users the limiting factor is
not CPU speed but bandwidth anyway. It will hurt most those on
high-bandwidth.
> All your code is probably good, but it's invoking something bad in
> gtk. I might try recompiling a profilable glib/gtk to see what exactly
> is causing it.
I've tried compiling statically by adding -static to LDFLAGS, and
profiling, but didn't find anything useful from a quick look (lots of
g_slist_get_nth() IIRC... but I don't know if this was directly due to
the treeview, as opposed to other widgets).
I've heard ideas from people about actually dissocating the model from
the view, adding rows, then connecting it up to the view again. In
other words... a hackish way to approximate freeze/thaw functionality.
The problem with this approach would be that upon connecting the view,
it would scan all the thousands of rows and add them afresh, and that
would probably seriously suck for a list this size...
> PS. I found out that GTK_TREE_VIEW_COLUMN_AUTOSIZE made the Userlist
> really slow in xchat, but you don't seem to be using that.
Yeah, it is the default, but I set it to GROW_ONLY for column 0.
I'm not even sure that implementing our own model is the right answer to
the speed problem, because I have vague suspicions it's the view widget
itself that is chewing up CPU.
Cheers,
Vince
--
Vincent Ho
loki@internode.on.net
Every complex problem is a simple hierarchy of simple problems.
--
XChat-discuss: mailing list for XChat users
Archive: http://mail.nl.linux.org/xchat-discuss/