VineSeed ML アーカイブ



[VineSeed:17037] lxpanelの問題点について

  • From: Toshiharu Kudoh <toshi.kd2@xxxxxxxxx>
  • Subject: [VineSeed:17037] lxpanelの問題点について
  • Date: Fri, 27 Mar 2009 02:27:40 +0900
工藤です。

[VineSeed:17004]で挙げたlxpanelの問題点ですが、
僅かながら進展があったのでお知らせします。

lxpanelの問題点とは、[VineSeed:17004]から引用しますと

>具体的にはパネルを右クリックするとパネルの設定が呼び出されますが、
>そこで最大幅が90%(パーセント表示の場合、ピクセル表示の場合は
>例えば1280x1024環境なら1270pxまでしか指定できない)までしか指定できない
>というものです。
># 初期状態では~/.config/lxpane/default/configは最大幅100%に
>#なっているのですけど
># GUIで設定しようとすると上のような状況になります。

というものでした。

取り敢えず判らないなりにソースを斜め読みしていましたが、
lxpanel-0.3.999/srcにあるconfigurator.cの203〜224行目に
以下のような部分があります。

static void set_width_type( GtkWidget *item, Panel* p )
{
GtkWidget* spin;
int widthtype;
gboolean t;
widthtype = gtk_combo_box_get_active(GTK_COMBO_BOX(item)) + 1;
p->widthtype = widthtype;

spin = (GtkWidget*)g_object_get_data(item, "width_spin" );
t = (widthtype != WIDTH_REQUEST);
gtk_widget_set_sensitive( spin, t );
if (widthtype == WIDTH_PERCENT) {
gtk_spin_button_set_range( (GtkSpinButton*)spin, 0, 100 );
gtk_spin_button_set_value( (GtkSpinButton*)spin, 100 );
} else if (widthtype == WIDTH_PIXEL) {
gtk_spin_button_set_range( (GtkSpinButton*)spin, 0, gdk_screen_width() );
gtk_spin_button_set_value( (GtkSpinButton*)spin, gdk_screen_width() );
} else
return;

update_panel_geometry(p);
}

このWIDTH_PERCENTでどうやらパーセント表示の値を設定しているようですが、
100という値を110にしてビルドすると、パネルは100%まで指定できるように
なりました。一方、WIDTH_PIXELの方は修正の仕方がよく判らなかったので
まだ目処はたっていません。判る方がおられたらご教授願います。

以上の修正方法が適当かどうかは判りませんが、試した方法からは
gtk+2.16.0との関連でこのような状況になっているという可能性が高いと
考えられます。

取り敢えず、今回試したことは以上です。