web-dev-qa-db-ja.com

budgie-desktopのインディケーターを書く方法

最近、デスクトップに16.04.2のbudgie-remix distroをインストールしました。辞書検索用のgtk appindicatorを作成したいが、バッジ表示パネルには表示されないことを除いて、正常に動作します。

Applicationインジケーターアプレットのサポートがbudgieに拡張され、利用できる ここではgithub であることを知っています。

私が望むのは、上記のインディケーターアプレットに依存するのではなく、バッジーパネル自体にインジケーターを表示するコードを書くことです。これを達成する最も簡単な方法は何ですか?

3
Razor

budgie-desktopを使用すると、Vala、C、Pythonで作成するパネル用のウィジェットを作成できます。

これはlibpeasベースのAPIであり、APIは非常に簡単です。 GitHubには、Vala、C、Pythonの 例ベースのプロジェクト があります。

  1. Do_get_panel_widgetを拡張するBudgie.Pluginを少しコードでラップします。この関数は、ウィジェットのインスタンスを返します
  2. ウィジェットはBudgie.Appletを拡張します
  3. ウィジェット/アプレットは、任意のGTKベースのコンテナー(通常はボタン)にすることができます

python example をご覧ください。これは最も読みやすいです。


すべてのPeasタイプのプラグインは、.pluginファイルとソースで構成されています。

Budgie-desktopの場合、プラグインはグローバルな場所またはローカルの場所にインストールできます。

ローカル(ユーザーごと)の場合、.pluginとすべてのソースファイルの両方を~/.local/share/budgie-desktop/plugins/plugin-nameに配置する必要があります

グローバルインストールの場合、.pluginおよびソースモジュールは/usr/lib/budgie-desktop/plugins/plugin-nameにインストールする必要があります。データベースのファイルの場合、/usr/share/budgie-desktop/plugins/plugin-nameは正しい場所です。


budgie-desktop v10.xは、パネルウィジェットをサポートしています。追加のウィジェットでRavenを変更することはできません。

Budgie-desktopの将来のバージョンでは、追加のウィジェットタイプを作成できることが提案されています。これらがどのような形で行われるかは、バッジーデスクトップの進化としてのみ知られます。

4
fossfreedom