Mercurial > pidgin.yaz
comparison finch/gntconv.c @ 18637:3597903cf8ff
Just show an empty line, instead of bouncing the text down when the user
stops typing.
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Wed, 25 Jul 2007 20:57:24 +0000 |
parents | be8c4eba38f6 |
children | 39d3a81a5850 |
comparison
equal
deleted
inserted
replaced
18636:7a5bf42aa8d1 | 18637:3597903cf8ff |
---|---|
257 g_free(str); | 257 g_free(str); |
258 if (scroll <= 1) | 258 if (scroll <= 1) |
259 gnt_text_view_scroll(GNT_TEXT_VIEW(ggc->tv), 0); | 259 gnt_text_view_scroll(GNT_TEXT_VIEW(ggc->tv), 0); |
260 } else { | 260 } else { |
261 title = get_conversation_title(conv, account); | 261 title = get_conversation_title(conv, account); |
262 gnt_text_view_tag_change(GNT_TEXT_VIEW(ggc->tv), "typing", NULL, TRUE); | 262 gnt_text_view_tag_change(GNT_TEXT_VIEW(ggc->tv), "typing", " ", TRUE); |
263 } | 263 } |
264 gnt_screen_rename_widget(ggc->window, title); | 264 gnt_screen_rename_widget(ggc->window, title); |
265 g_free(title); | 265 g_free(title); |
266 } | 266 } |
267 | 267 |
586 { | 586 { |
587 FinchConv *ggconv = conv->ui_data; | 587 FinchConv *ggconv = conv->ui_data; |
588 char *strip, *newline; | 588 char *strip, *newline; |
589 GntTextFormatFlags fl = 0; | 589 GntTextFormatFlags fl = 0; |
590 int pos; | 590 int pos; |
591 gboolean notify; | |
592 | 591 |
593 g_return_if_fail(ggconv != NULL); | 592 g_return_if_fail(ggconv != NULL); |
594 | 593 |
595 if (ggconv->active_conv != conv) { | 594 if (ggconv->active_conv != conv) { |
596 if (flags & (PURPLE_MESSAGE_SEND | PURPLE_MESSAGE_RECV)) | 595 if (flags & (PURPLE_MESSAGE_SEND | PURPLE_MESSAGE_RECV)) |
599 return; | 598 return; |
600 } | 599 } |
601 | 600 |
602 pos = gnt_text_view_get_lines_below(GNT_TEXT_VIEW(ggconv->tv)); | 601 pos = gnt_text_view_get_lines_below(GNT_TEXT_VIEW(ggconv->tv)); |
603 | 602 |
604 notify = !!gnt_text_view_tag_change(GNT_TEXT_VIEW(ggconv->tv), "typing", NULL, TRUE); | 603 gnt_text_view_tag_change(GNT_TEXT_VIEW(ggconv->tv), "typing", NULL, TRUE); |
605 gnt_text_view_append_text_with_flags(GNT_TEXT_VIEW(ggconv->tv), "\n", GNT_TEXT_FLAG_NORMAL); | 604 gnt_text_view_append_text_with_flags(GNT_TEXT_VIEW(ggconv->tv), "\n", GNT_TEXT_FLAG_NORMAL); |
606 | 605 |
607 /* Unnecessary to print the timestamp for delayed message */ | 606 /* Unnecessary to print the timestamp for delayed message */ |
608 if (purple_prefs_get_bool("/finch/conversations/timestamps")) | 607 if (purple_prefs_get_bool("/finch/conversations/timestamps")) |
609 gnt_text_view_append_text_with_flags(GNT_TEXT_VIEW(ggconv->tv), | 608 gnt_text_view_append_text_with_flags(GNT_TEXT_VIEW(ggconv->tv), |
641 strip, fl); | 640 strip, fl); |
642 | 641 |
643 g_free(newline); | 642 g_free(newline); |
644 g_free(strip); | 643 g_free(strip); |
645 | 644 |
646 if (notify) { | 645 if (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_IM && |
646 purple_conv_im_get_typing_state(PURPLE_CONV_IM(conv)) == PURPLE_TYPING) { | |
647 strip = g_strdup_printf(_("\n%s is typing..."), purple_conversation_get_name(conv)); | 647 strip = g_strdup_printf(_("\n%s is typing..."), purple_conversation_get_name(conv)); |
648 gnt_text_view_append_text_with_tag(GNT_TEXT_VIEW(ggconv->tv), | 648 gnt_text_view_append_text_with_tag(GNT_TEXT_VIEW(ggconv->tv), |
649 strip, GNT_TEXT_FLAG_DIM, "typing"); | 649 strip, GNT_TEXT_FLAG_DIM, "typing"); |
650 g_free(strip); | 650 g_free(strip); |
651 } | 651 } |