|
sylpheed-jp:432
From: Makoto Setoh <setoh@xxxxxxxxxx>
瀬藤@MCRです。
山本さま、卒業おめでとうございます。
Sylpheed いつも便利に使わせていただいております。
卒業記念というわけではないですが、スペースキー、BS キーによる
メールの表示を半画面単位でスムーススクロールにするパッチを作ってみました。
CVS 版ではなくて、sylpheed-0.4.62 版に対するものです。(すみません..)
スムースといっても単純に1行ずつスクロールするようにしただけなので、
もしかすると古いマシンなどでは少々重く感じるかも知れません。
# 私のマシン P3-700 ではスムースにいってます。(^^;
このパッチを当てると無条件に上記の仕様になります。
本来なら設定画面にて切り替えられる方が望ましいはずですが、
私の力量ではそこまでは出来ませんでした。
とりあえず、短いので本文に添付します。
興味のある方はお試しください。
--- src-org/textview.c Wed Mar 14 13:09:44 2001
+++ src/textview.c Wed Mar 14 13:19:54 2001
@@ -933,21 +933,48 @@
GtkText *text = GTK_TEXT(textview->text);
gfloat upper;
+ gint old_value = 0;
+ gint last_value = 0;
+ gint change_value = 0;
+ gint i;
+
if (!up) {
upper = text->vadj->upper - text->vadj->page_size;
if (text->vadj->value < upper) {
- text->vadj->value += text->vadj->page_increment;
+ old_value = text->vadj->value;
+
+ text->vadj->value += text->vadj->page_increment / 2;
text->vadj->value = MIN(text->vadj->value, upper);
- gtk_signal_emit_by_name(GTK_OBJECT(text->vadj),
+
+ gdk_key_repeat_disable();
+ last_value = text->vadj->value;
+ change_value = last_value - old_value;
+ for ( i = 1; i <= change_value; i++ ) {
+
+ text->vadj->value = old_value + i;
+ gtk_signal_emit_by_name(GTK_OBJECT(text->vadj),
"value_changed");
+ }
+ gdk_key_repeat_restore();
} else
return FALSE;
} else {
if (text->vadj->value > 0.0) {
- text->vadj->value -= text->vadj->page_increment;
+ old_value = text->vadj->value;
+
+ text->vadj->value -= text->vadj->page_increment / 2;
text->vadj->value = MAX(text->vadj->value, 0.0);
- gtk_signal_emit_by_name(GTK_OBJECT(text->vadj),
+
+ gdk_key_repeat_disable();
+ last_value = text->vadj->value;
+ change_value = old_value - last_value;
+
+ for ( i = 1; i <= change_value; i++ ) {
+ text->vadj->value = old_value - i;
+ gtk_signal_emit_by_name(GTK_OBJECT(text->vadj),
"value_changed");
+ }
+ gdk_key_repeat_restore();
} else
return FALSE;
}
--
三菱電機コントロールソフトウェア(株)伊丹事業所
技術第2課 新事業開拓グループ 瀬藤 誠
setoh@xxxxxxxxxx http://www.mcr.co.jp/
-> 432 2001-03-14 13:51 [setoh@xxxxxxxxxx ] スムーススクロールのパッチ @ 433 2001-03-14 16:28 ┗[gm@xxxxxxxxxx ] 434 2001-03-14 16:33 ┗[gm@xxxxxxxxxx ] 435 2001-03-16 10:11 ┗[setoh@xxxxxxxxxx ] |