Mercurial > pidgin
comparison src/gtkimhtml.c @ 1527:11977dd0fd29
[gaim-migrate @ 1537]
fix trailing text on redraw
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Sat, 03 Mar 2001 06:58:43 +0000 |
parents | a5c87ada5143 |
children | b0f8f1865419 |
comparison
equal
deleted
inserted
replaced
1526:190cef255530 | 1527:11977dd0fd29 |
---|---|
547 { | 547 { |
548 GList *b; | 548 GList *b; |
549 GtkIMHtmlBit *bit; | 549 GtkIMHtmlBit *bit; |
550 GtkAdjustment *vadj; | 550 GtkAdjustment *vadj; |
551 gfloat oldvalue; | 551 gfloat oldvalue; |
552 gint oldy; | |
552 | 553 |
553 vadj = GTK_LAYOUT (imhtml)->vadjustment; | 554 vadj = GTK_LAYOUT (imhtml)->vadjustment; |
554 oldvalue = vadj->value / vadj->upper; | 555 oldvalue = vadj->value / vadj->upper; |
556 oldy = imhtml->y; | |
555 | 557 |
556 gtk_layout_freeze (GTK_LAYOUT (imhtml)); | 558 gtk_layout_freeze (GTK_LAYOUT (imhtml)); |
557 | 559 |
558 g_list_free (imhtml->line); | 560 g_list_free (imhtml->line); |
559 imhtml->line = NULL; | 561 imhtml->line = NULL; |
580 g_free (li); | 582 g_free (li); |
581 } | 583 } |
582 gtk_imhtml_draw_bit (imhtml, bit); | 584 gtk_imhtml_draw_bit (imhtml, bit); |
583 } | 585 } |
584 | 586 |
585 if (GTK_LAYOUT (imhtml)->bin_window && (imhtml->y < GTK_WIDGET (imhtml)->allocation.y)) | |
586 gdk_window_clear (GTK_LAYOUT (imhtml)->bin_window); | |
587 | |
588 gtk_widget_set_usize (GTK_WIDGET (imhtml), -1, imhtml->y + 5); | 587 gtk_widget_set_usize (GTK_WIDGET (imhtml), -1, imhtml->y + 5); |
589 gtk_adjustment_set_value (vadj, vadj->upper * oldvalue); | 588 gtk_adjustment_set_value (vadj, vadj->upper * oldvalue); |
589 | |
590 if (GTK_LAYOUT (imhtml)->bin_window && (imhtml->y < oldy)) { | |
591 GdkGC *gc; | |
592 GdkColormap *cmap; | |
593 | |
594 gc = gdk_gc_new (GTK_LAYOUT (imhtml)->bin_window); | |
595 cmap = gtk_widget_get_colormap (GTK_WIDGET (imhtml)); | |
596 | |
597 gdk_color_alloc (cmap, imhtml->default_bg_color); | |
598 gdk_gc_set_foreground (gc, imhtml->default_bg_color); | |
599 | |
600 gdk_draw_rectangle (GTK_LAYOUT (imhtml)->bin_window, gc, TRUE, | |
601 0, imhtml->y - GTK_LAYOUT (imhtml)->vadjustment->value, | |
602 GTK_WIDGET (imhtml)->allocation.width, | |
603 oldy - imhtml->y); | |
604 | |
605 gdk_gc_unref (gc); | |
606 } | |
590 | 607 |
591 gtk_layout_thaw (GTK_LAYOUT (imhtml)); | 608 gtk_layout_thaw (GTK_LAYOUT (imhtml)); |
592 } | 609 } |
593 | 610 |
594 static void | 611 static void |