From c5a549b079264b8ab000faf8a958f17cfdc03f41 Mon Sep 17 00:00:00 2001 From: Paul Mangan Date: Mon, 29 Jul 2002 07:38:24 +0000 Subject: [PATCH] sync with 0.8.1cvs3 --- ChangeLog | 5 +++++ ChangeLog.claws | 5 +++++ ChangeLog.jp | 5 +++++ configure.in | 2 +- src/logwindow.c | 36 ++++++++++++++++++++++++++++-------- 5 files changed, 44 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index e98a52a7f..ccc374cfa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2002-07-29 + + * src/logwindow.c: freeze GtkText widget while hidden. + log_window_append(): changed the header for message and warning. + 2002-07-26 * src/news.c: implement automatic cache expiration. diff --git a/ChangeLog.claws b/ChangeLog.claws index bb5512ff4..34246266b 100644 --- a/ChangeLog.claws +++ b/ChangeLog.claws @@ -1,3 +1,8 @@ +2002-07-29 [paul] 0.8.0claws24 + + * sync with 0.8.1cvs3 + see ChangeLog 2002-07-29 + 2002-07-27 [christoph] 0.8.0claws23 * src/folder.c diff --git a/ChangeLog.jp b/ChangeLog.jp index a065463a9..dbc114cc3 100644 --- a/ChangeLog.jp +++ b/ChangeLog.jp @@ -1,3 +1,8 @@ +2002-07-29 + + * src/logwindow.c: ±£¤·¤Æ¤¤¤ë¤È¤­¤Ï GtkText ¥¦¥£¥¸¥§¥Ã¥È¤ò¥Õ¥ê¡¼¥º¡£ + log_window_append(): ¥á¥Ã¥»¡¼¥¸¤È·Ù¹ð¤Î¥Ø¥Ã¥À¤òÊѹ¹¡£ + 2002-07-26 * src/news.c: ¼«Æ°¥­¥ã¥Ã¥·¥åºï½ü¤ò¼ÂÁõ¡£ diff --git a/configure.in b/configure.in index 703b1bd83..1d3562dcf 100644 --- a/configure.in +++ b/configure.in @@ -8,7 +8,7 @@ MINOR_VERSION=8 MICRO_VERSION=0 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=claws23 +EXTRA_VERSION=claws24 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION dnl set $target diff --git a/src/logwindow.c b/src/logwindow.c index 39ce93654..982982984 100644 --- a/src/logwindow.c +++ b/src/logwindow.c @@ -1,6 +1,6 @@ /* * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999,2000 Hiroyuki Yamamoto + * Copyright (C) 1999-2002 Hiroyuki Yamamoto * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -38,8 +38,11 @@ static LogWindow *logwindow; -static void key_pressed(GtkWidget *widget, GdkEventKey *event, - LogWindow *logwin); +static void hide_cb (GtkWidget *widget, + LogWindow *logwin); +static void key_pressed (GtkWidget *widget, + GdkEventKey *event, + LogWindow *logwin); void log_window_clear(GtkWidget *text); LogWindow *log_window_create(void) @@ -49,7 +52,7 @@ LogWindow *log_window_create(void) GtkWidget *scrolledwin; GtkWidget *text; - debug_print(_("Creating log window...\n")); + debug_print("Creating log window...\n"); logwin = g_new0(LogWindow, 1); window = gtk_window_new(GTK_WINDOW_TOPLEVEL); @@ -61,6 +64,8 @@ LogWindow *log_window_create(void) GTK_SIGNAL_FUNC(gtk_widget_hide_on_delete), NULL); gtk_signal_connect(GTK_OBJECT(window), "key_press_event", GTK_SIGNAL_FUNC(key_pressed), logwin); + gtk_signal_connect(GTK_OBJECT(window), "hide", + GTK_SIGNAL_FUNC(hide_cb), logwin); gtk_widget_realize(window); scrolledwin = gtk_scrolled_window_new(NULL, NULL); @@ -75,6 +80,7 @@ LogWindow *log_window_create(void) (GTK_SCROLLED_WINDOW(scrolledwin))); gtk_container_add(GTK_CONTAINER(scrolledwin), text); gtk_widget_show(text); + gtk_text_freeze(GTK_TEXT(text)); logwin->window = window; logwin->scrolledwin = scrolledwin; @@ -117,7 +123,14 @@ void log_window_init(LogWindow *logwin) void log_window_show(LogWindow *logwin) { + GtkText *text = GTK_TEXT(logwin->text); + gtk_widget_hide(logwin->window); + + gtk_text_thaw(text); + text->vadj->value = text->vadj->upper - text->vadj->page_size; + gtk_signal_emit_by_name(GTK_OBJECT(text->vadj), "value_changed"); + gtk_widget_show(logwin->window); } @@ -132,17 +145,18 @@ void log_window_append(const gchar *str, LogType type) text = GTK_TEXT(logwindow->text); switch (type) { + case LOG_MSG: + color = &logwindow->msg_color; + head = "* "; + break; case LOG_WARN: color = &logwindow->warn_color; - head = "*** "; + head = "** "; break; case LOG_ERROR: color = &logwindow->error_color; head = "*** "; break; - case LOG_MSG: - color = &logwindow->msg_color; - break; default: break; } @@ -153,6 +167,12 @@ void log_window_append(const gchar *str, LogType type) log_window_clear (GTK_WIDGET (text)); } +static void hide_cb(GtkWidget *widget, LogWindow *logwin) +{ + if (GTK_TEXT(logwin->text)->freeze_count == 0) + gtk_text_freeze(GTK_TEXT(logwin->text)); +} + static void key_pressed(GtkWidget *widget, GdkEventKey *event, LogWindow *logwin) { -- 2.25.1