SSブログ

【Ubuntu 11.10】Oneiric Alpha 3をアップデートしてindicator-session 0.3.2になってから、アイコンテーマを変えるとセッションメニュー(ログアウト、シャットダウンなどがあるメニュー)のアイコンがおかしくなった。 [ubuntu]

先日(2011/8/19頃)、Oneiric Alpha 3をアップデートしたら、indicator-sessionが0.3.2にアップデートされました。

小さな変更が加わっていて、下記のOMG!Ubuntuにも関連記事が載っています。

http://www.omgubuntu.co.uk/2011/08/power-cog-icon-oneiric/

デフォルト状態だと下記のようになります。この時のアイコンテーマは"ubuntu-mono-dark"です。

パワーボタンのアイコンだったのが、ギザギザの歯車見たいなアイコンに変更されていました。

SS-oneiric-session-002.jpeg

ここで、アイコンテーマを"Faenza"とかにすると・・・

SS-oneiric-session-001.jpeg

(・・∂) アレ? パソコンのアイコンになってる。

どんな風に直したか調べてみました。

下記は0.3.1から0.3.2への変更点(https://launchpadlibrarian.net/77535674/indicator-session_0.3.1-0ubuntu2_0.3.2-0ubuntu1.diff.gz)の抜粋です。(depatchしたりするなら、下記をコピーせずに前述のURLから持ってきて下さい。)

diff -Nru indicator-session-0.3.1/src/indicator-session.c indicator-session-0.3.2/src/indicator-session.c
--- indicator-session-0.3.1/src/indicator-session.c 2011-08-10 16:33:15.000000000 +0000
+++ indicator-session-0.3.2/src/indicator-session.c 2011-08-18 14:17:23.000000000 +0000
@@ -163,13 +163,11 @@
   }

   self->users.label = GTK_LABEL (gtk_label_new (NULL));
- // Only show once we have a valid username
- // gtk_widget_hide (GTK_WIDGET(self->users.label));

  // devices
  self->devices.menu = GTK_MENU (dbusmenu_gtkmenu_new(INDICATOR_SESSION_DBUS_NAME,
                                                                                           INDICATOR_SESSION_DBUS_OBJECT));
- self->devices.image = indicator_image_helper (ICON_DEFAULT);
+ self->devices.image = indicator_image_helper ("system-devices-panel");

   gtk_widget_show (GTK_WIDGET(self->devices.menu));
   gtk_widget_show (GTK_WIDGET(self->devices.image));
@@ -501,7 +499,7 @@
   }
   else if (g_strcmp0(signal_name, "RebootRequired") == 0) {
      // TODO waiting on design to give me a name.
-    self->devices.image = indicator_image_helper (ICON_DEFAULT);
+   self->devices.image = indicator_image_helper ("system-devices-alert-panel");
    }
  }

というわけで。ICON_DEFAULTがsystem-devices-panelとsystem-devices-alert-panelに変更になってました。しかし、べた書き・・・私ならdefine文使ってヘッダに定義するが・・・

ちなみに、変更前のICON_DEFAULTという定義はdbus-shared-names.hに定義されていて、system-shutdown-panelになっています。

それで、アイコンの実体ですが、ubuntu-mono-darkにはちゃんとあって、下記の所にあります。

oneiric@ocelot:/usr/share/icons/ubuntu-mono-dark/status/24$ ls -al system*
-rw-r--r-- 1 root root 3928 2011-08-19 23:16 system-devices-panel-alert.svg
-rw-r--r-- 1 root root 3822 2011-08-19 23:16 system-devices-panel.svg

日付を見ると、2011-08-19になっているので、indicator-sessionのアップデートと同時に入れられたと思われます。

こんなの、他のテーマは対処が間に合うはずがありません。そこで、ubuntu-monoのアイコンを使うように仮対処しました。

ubuntu-mono-lightとubuntu-mono-darkにあるsystem-devices-panel-alert.svgとsystem-devices-panel.svgをそれぞれ、FaenzaとFaenza-Darkにコピーしてあげました。(ubuntu-mono-lightとubuntu-mono-darkではアイコンの色が白黒逆転しているのでコピー先を注意して下さい。)詳しい説明は、開発中なので省略。(もし、このままリリースになったら手順を記述した記事を書くつもりです。)

SS-oneiric-session-003.JPG

横の日付の所がおかしいですが、Virtualboxの方はおかしくてHDDに入れた方(始めの2つのスクリーンショット)はちゃんと出ます。何が原因か調査中です。

とりあえず、これでいいかな。あとは各アイコンテーマを作成された方がOneiric対応版にアップデートしてくれるのを待つしかないです。

 ←DVI-D:DVI-Dケーブル

    左:シングルリンク
    右:デュアルリンク
    グラフィックカードや
    ディスプレイ等の仕様をチェックして
    購入する方を間違えないように。
    デュアルリンクなら間違いは無いが・・
    無駄になる可能性も。


nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

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