web-dev-qa-db-fra.com

Création d'une lentille Unity: le nom `` Activation '' n'existe pas dans le contexte de `` Unity ''

J'essaie de créer un Lens for Unity en 11.10 en utilisant vala. Voici mon daemon.vala:

using Dee;
using Gee;

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

        }
    }
}

J'essaie maintenant de compiler avec valac --pkg gee-1.0 --pkg dee-1.0 --pkg unity dit juste

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-unit-4.0 sont tous installés, et il trouve évidemment le package d'unité (depuis la modification de --pkg unity à quelque chose comme --pkg unity-not-here renvoie une autre erreur. Alors, quelle est mon erreur? pourquoi l'Unity.Activation n'est pas là?

Merci les gars!

6
Leopard2A5

L'interface Unity.Activation a été supprimée à partir d'Unity 4 (Ubuntu 11.10). Au lieu de cela, vous pouvez vous connecter au rappel d'activation à l'aide de signaux comme celui-ci:

scope.activate_uri.connect(on_uri_activated);

Si vous ne remplacez pas la gestion de l'activation, il vous suffit probablement de supprimer Unity.Activation et de recompiler.

La documentation complète pour Unity 4 (Ubuntu 11.10) peut être consultée ici: http://developer.ubuntu.com/api/ubuntu-11.10/c/Unity-4.0.html

5
mhall119