SSブログ

こんなレイアウトは厳しい?? > OSC Tokyo [Vine Linux]

前回 OSC Tokyo 2010 Spring(だったけ?)に参加した時に思ったのは、「コミュニティの展示ブースのレイアウトがひどい」だった。

確かに場所の確保が大変なのは分かるし、主催者の方も工夫してくれているんだろうけど、それにしても来場者に背中を向けてる展示ってのはいかがなものかと。

んで、今度来週末にあるOSC 2010 Tokyo Fall(だったけ?)の出展ブースのレイアウト案というのを見せてもらったんだけど、レイアウトについては変更できない、ということになっているらしい。

ちなみにもらったレイアウト案だとこんな感じ。(*自分でOOoで書いた絵)
screenshot_086.png
(長机が水色と灰色で、オレンジの椅子は参考に書いてみた)

確かに通路を確保しようとするとこうなるんだろうし、コミュニティの展示ブースでも机より中側に人を入れようすると背中合わせの部分にスペースが余計に必要になるから、通路が確保できなくなるのは分かる。

でもそれではなんら改善できていないので、それじゃあこんなのはどうかと思って書いてみた。
screenshot_087.png

展示ブースの中側はぎりぎりの幅を取って、人の出入りように縦方向3列並びの机のどこか1箇所に人が通れるだけの隙間をあける=通路が最初と同じだけ確保できる、という感じ。

まあこっちの方が机が通路に近くなるので圧迫感がでてくる感じがあるけど、展示としては多少は好ましいんじゃないかなとも思う。

あと、いっそのこと展示ブースの内側のイスは無くしちゃって、基本は立って展示する、休憩するときは外の休憩ブースに行く、というスタンスもありかも知れない。

とは言え、実は過去に試してみた結果、やっぱり良くなかったから今のレイアウトに落ち着いている、なんて話かも知れないので正直悩ましいんだろうけど、でもなんとかしてもらえないもんかなぁ……。
タグ:Vine osc

押し付けがましくない日本語って難しい; [Vine Linux]

「インストール直後にどうやってアップデートしたら良いのか分からん」問題(<今命名)をなんとかるする為に、update-watch にこんな画面を新しく追加してみた。

screenshot_086.png

インストール直後に表示されるので、あんまり押し付けがましくなったらイヤだなと思って、日本語については結構悩みながら、かれこれ3時間くらいはあーでもないこーでもないと書き直してはダイアログを表示し直してみて、をくり返してやっとできた。

ちなみに見た目に付いてもちょっと新鮮さが欲しかったので、アイコン+ラインという形を試してみている。

とりあえず Seed 向けだけパッケージを put してあるので、試してみて気になる点があったらコメントお願いします。

# しかし我ながらデザインセンス無いなぁ……。
タグ:Vine update-watch

へなちょこハック [Vine Linux]

普段から狭い画面のノート PC (いまだに1024x768;) を使っているので、ちょっとでも画面を広く使えるように、ウィンドウを最大化した時にウィンドウのタイトルバーを消してパネルに埋め込める、windowapplets (の Window Buttons)アプレットを使っている。

これ結構便利で、実際に画面の上にパネルを表示しているとこんな感じの見た目になる。
screenshot_077.png
(もちろん最大化を解除すると普通の表示に戻る)

ところが、その後にパッケージを作ったドロップダウン式の端末の Guake を、windowsaplets を有効にした状態で使おうとすると、本当なら枠(装飾)が付かないはずなのに付いた状態になるのに気づいた。
screenshot_078.png
最初は「実用上は大して問題無いし、まいっか」と思ってたんだけど、しばらく使ううちにどーしてもこの無駄な枠が気になってたまらなくなってしまったので、なんとかして解消できないかと調べてみることにした。

とりあえず Guake を先に調べてみると、Guake の方は /usr/share/guake にある guake.glade の中で、
<property name="decorated">False</property>

と宣言されているので、本来ならウィンドウの枠の装飾は付かないはず。

ということは Guake 側の問題では無く windowapplets 側の問題っぽいので、今度は WindowButtons アプレットを調べてみようと、gnome-window-applets-0.2.7/buttons 以下のファイルをだーっと眺めていると、windowbuttons.c に
static void set_decorations(WnckWindow *window, gboolean decorate) {
#define PROP_MOTIF_WM_HINTS_ELEMENTS 5
#define MWM_HINTS_DECORATIONS (1L << 1)
        struct {
                unsigned long flags;
                unsigned long functions;
                unsigned long decorations;
                long inputMode;
                unsigned long status;
        } hints = {0,};
        
        hints.flags = MWM_HINTS_DECORATIONS;
        hints.decorations = decorate ? 1 : 0;
        
        /* Set Motif hints, most window managers handle these */
        XChangeProperty(GDK_DISPLAY(), wnck_window_get_xid (window),
                my_wnck_atom_get ("_MOTIF_WM_HINTS"),
                my_wnck_atom_get ("_MOTIF_WM_HINTS"), 32, PropModeReplace,
                (unsigned char *)&hints, PROP_MOTIF_WM_HINTS_ELEMENTS);
}

という関数が宣言されているのを見つけた。

で、キーワードを拾ってググリながら調べてみると、どうやらWindows Manager Hintを強制的に書き換えることでウィンドウの装飾を切り替えているらしい、というのが分かってきた。

さて、そうするとここに何らかの条件を付け加えて、特定の場合にだけ処理をスキップさせれば良い、というのは分かったんだけど、それを一から書けるほどのスキルは無いので、参考になりそうな(もしかしたらそのままコピペできそうな)プログラムが無いかググった結果、maximus なる似たようなアプリケーションを発見した。

ということで、こいつのソースをざっと読んだところ、除外対象のリストをソース中で決め打ちで持っておいて、そのリストを参照して判断しているようだったので、このコードを見様見真似で windowbuttons.c に持ってきた結果、こんな感じの変更を加えることでようやく希望通りの動作になってくれた。
@@ -63,6 +63,11 @@
 //This line is very important! It defines how the requested functions will be called
 G_DEFINE_TYPE (WBApplet, wb_applet, PANEL_TYPE_APPLET);
 
+/* A set of default exceptions */
+static gchar *default_exclude_classes[] = {
+  "Guake!"
+};
+
 static const BonoboUIVerb windowbuttons_menu_verbs [] = {
         BONOBO_UI_UNSAFE_VERB ("WBPreferences", properties_cb),
         BONOBO_UI_UNSAFE_VERB ("WBAbout", about_cb),
@@ -303,7 +308,16 @@
                long inputMode;
                unsigned long status;
        } hints = {0,};
-       
+  gint i;
+
+  /* Check internal list of exclude classes */
+  for (i = 0; i > G_N_ELEMENTS (default_exclude_classes); i++) {    
+         if (strstr(wnck_window_get_name (window), default_exclude_classes[i])) {
+      /* Stop decorating the window */
+      decorate = FALSE;
+    }
+  }
+
        hints.flags = MWM_HINTS_DECORATIONS;
        hints.decorations = decorate ? 1 : 0;
        

screenshot_079.png
(ちなみに Vine Linux 向けのパッケージには既に適用済み)

ということで、結果として希望の動作に変更できたので個人的には満足している。

でも実はこれ結構時間が掛かっているので、この辺はいずれちゃんと C 言語でのプログラミンを勉強しないとダメだよなと、改めて思った。



タグ:Vine GTK hack Gnome

+0.1のカイゼン [Vine Linux]

irc で「OSC ドリブンなリリースかよっ」的な突っ込みが入っていたけど、OSC 2010 Tokvo Fall に合わせて Vine Linux 5.2 をリリースする方向になったらしい。

基本は 5.1+updates なんだろうけど、それだけではちょっと寂しいので、併せて何かカイゼンできないか考えてみた。
  • ユーザーマニュアルのリリース
    長らく更新中だった Vine Linux ユーザーマニュアルだけど、頑張って 5.2 のリリースに間に合うように更新を終わらせて、DVD (と可能なら CD にも)の iso イメージに含めてもらう。
  • お勧めアプリの追加
    アプリケーションの追加と削除 (vine-app-install) に表示するアプリケーションに、5.1 のリリース後にリポジトリに新しく追加されたものの中から良さそうなのをいくつか選んで追加する。
  • インストール直後にアップデートを促す仕組みが作れないか検討
    以前メーリングリストで「インストール直後に最新の状態に更新されてない/更新の仕方が分からない、のは問題だ」というコメントを読んでから気になっていたので、これをなんとかできないか検討してみる。
    基本的には apt のキャッシュ の有無や最終更新日を見て判断すれば良さそうだけど、不必要に更新を促すと逆効果に成り兼ねないので、適切な判断基準なり間隔なりを見つけるのがちょっと大変そう。

という事で、マニュアルは赤星リーダーが中心になっているので、まずは提案からなんだけど、後2つは自分でなんとかできる部分なので、時間が取れ次第手をうごかしてみようと思う。

# 次回の irc 定例会議ネタに良いかも……。

thunderbird 3.1.1 準備中 [Vine Linux]

thunderbird-3.1.1 がリリースされたので、Vine Linux 5.1 の proposed-updates 向けにパッケージを更新中。

うちの PC が遅くてビルドに時間が掛かるのが辛い……。

# 次買い替える時はノート PC は止めて、速いデスクトップ PC にしたいな。
タグ:Vine thunderbird

勘違い [Vine Linux]

パッケージング週間のアフターケア(?)で、BTS の要望を閉じるために arch 毎のビルド状況を確認していたら、thunderbird だけ全 arch でビルドされていないのに気付いた。

i386 を put した記憶は確かにあるし、なんでだろ?としばらく考えていて、incoming から自動的に reject されるってどこかで聞いた気がするなぁと思った途端に、はたと気付いた。

thunderbird は main カテゴリだと。

という事で、早速 proposed-updates の提案メールを投げておいた。

# とりあえず使ってる人が少ないのは分かったな。
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:moblog

Thunderbird のBug 478463 にハマる [Vine Linux]

Seed に put した Thunderbird 3.1 を使っていたら、面白い(?)現象に気づいた。

ネットワークへの接続が切れた状態でメールチェックを実行すると、以前までは「アカウントに接続できねー」的なメッセージが表示されていたんだけど、3.1 にしたら文字の表示されない Notification のポップアップが表示されるようになった。

screenshot_069.png
(ちなみに Seed だと通知用のテーマが違うので黒いのと、アカウントが3つあるので3個縦に並んで表示されている)

ビルド時に何か依存が足りてないのかと configure のオプションをチェックしたりソースを眺めたりググったりした結果、Thunderbird のバグだと判明した。

Bug 478463 - Add libnotify (+ libindicate) support to Thunderbird
https://bugzilla.mozilla.org/show_bug.cgi?id=478463

3.1 にはぎりぎり間に合わずに 3.2 に先延ばしされたそうで、とりあえず既知の問題としておくしかなさそうかなと。


やっぱり取れちゃった [Vine Linux]

予想通りと言うかなんと言うか、やっぱり thunderbird 3.1 の rc が取れた正式版がこの週末にリリースされていた。

ソースの取得先やらファイル/フォルダ名が変わって来るので、spec の調整がまた必要になるかと。

今週末の put に向けてがんばろー。

# にしても日焼けしたとこが痛い……。
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:moblog

thunderbird3 の状況 [Vine Linux]

パッケージング週間で「作ります」と手を挙げた thunderbird3 の進み具合だけど、日本語化とアプリケーション名の変更(Tb for Vine Linux にした)と patch の見直しまでは終わった。

という事で残りは BuildRequires の見直しだけに。

ちなみに外部の xulrunner を使ってビルドしようとすると、ldap support が有効じゃ無いと怒られ、--disable-ldap を指定すると、今度は自分で用意しているヘッダーファイルが見つからんとエラーを吐いてくれるので、諦めて自前の xul を使うようにしている。

一応この10日間位ずっと 3.1rc2 を常用しているけど致命的な問題は起きていない。(携帯からの投稿だから画面貼れないけど)

今週末は家の用事で潰れるので、予定よりちょっと遅れるけど、来週末辺りには put したいなと。

# その前に rc が取れちゃうとまた延びるけど…。
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:moblog

vlm2010.06 に行ってきた [Vine Linux]

今回は時間が短かったのと場所がスタバだったので、試しに嫁に「一緒に行く?」と聞いてみたところ、予想外に「行く」という返事が返ってきたので、家族揃って大崎まで行ってみた。(←嫁は単にコーヒーが飲みたかっただけらしい)

駐車場を探すのに手間取って少し遅れて着いたら、既に他のみなさんは揃っていて、山本さん、岩井さん、稲垣さんに、初参加の相馬燒きさんも居た。

で、今回は決まったお題も無くだらだらと話す会だったので、特にメモを取るわけでもなく、thunderbird のパッケージングを調整しながら自由に話しをさせてもらった。

その中でも記憶に残ったのは、
  • プリント基盤のデザイン用のプログラム(PCB)を使いたい←相馬燒きさん
  • KDE on Vine 5.1が普通に動いていた←稲垣さん
  • 次回の内容何にしよう話(ドキュメント書き、自分定番アプリ紹介、ベストな開発環境はSeed or 5.1?)

辺りかな。

あといくつか忘れてた事があって、
  • 相馬燒きさんの名前の由来を聞く
  • 稲垣さんとの鍵交換
  • 山本さんの彼女は来ないのか

は、また次回にでもと。

最後の方はうちの子供が乱入してきて、店員さんの如くゴミを捨て始めたりして迷惑をかけてしまったけど、まあアットホームな雰囲気でやってますよというアピールにはなったかと(←誰向けだよ)

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。