web-dev-qa-db-ja.com

Unityレンズの作成:「Activation」という名前は「Unity」のコンテキストには存在しません

11.10でvalaを使用してUnity用レンズを作成しようとしています。これは私のdaemon.valaです:

using Dee;
using Gee;

namespace PidginLens
{
    public class Daemon : GLib.Object, Unity.Activation
    {
        public static void main(string[] args)
        {

        }
    }
}

valac --pkg gee-1.0 --pkg dee-1.0 --pkg unityでコンパイルしようとすると、

daemon.vala:6.40-6.55: error: The type name `Unity.Activation' could not be found
public class Daemon : GLib.Object, Unity.Activation
                                   ^^^^^^^^^^^^^^^^
Compilation failed: 1 error(s), 0 warning(s)

libunity4 libunity6 libunity-dev libunity-core-4.0.4 libunity-core-4.0-dev gir1.2-unity-4.0がすべてインストールされており、明らかに--pkg unity--pkg unity-not-hereは別のエラーを生成します。それで私の間違いは何ですか?なぜUnity.Activationがないのですか?

みんなありがとう!

6
Leopard2A5

Unity.ActivationインターフェースはUnity 4(Ubuntu 11.10)で削除されました。代わりに、次のような信号を使用してアクティベーションコールバックにフックできます。

scope.activate_uri.connect(on_uri_activated);

アクティベーション処理をオーバーライドしない場合は、おそらくUnity.Activationを削除して再コンパイルするだけです。

Unity 4(Ubuntu 11.10)の完全なドキュメントは、こちらで確認できます: http://developer.ubuntu.com/api/ubuntu-11.10/c/Unity-4.0.html

5
mhall119