Re: Textview not scrolling in Client



On Mon, 2008-04-14 at 17:41 -0500, Jamie Lahowetz wrote:

I have been struggling with this and I just cant seem to figure what
the problem is. I have this IRC client that wont scroll far enough
down to show the full text.

ïI've had some problems with scrolling in textviews. My way is slightly
different to what you're doing, but it should work ( excuse text
wrapping ):

Glib::Idle->add( sub {
my $adjustment =
$self->{form}->get_widget( "AppLog_scrolled_window" )->get_vadjustment;
my $upper = $adjustment->upper;
$adjustment->set_value( $upper - $adjustment->page_increment -
$adjustment->step_increment );
} );

I assume what's happening is that there's a slight delay between when
you insert something into the textbuffer, and things actually changing
in response ( eg the total no of lines required for the text ). Doing
the scrolling in an idle timer allows everything to recalculate, and
then scrolling to the bottom works properly.

You should be able to use your 'scroll_to_mark' method in the same way -
just add it to an idle timer after the text gets inserted.

Dan



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]