Criando uma Lente da Unidade: O nome 'Ativação' não existe no contexto de 'Unidade'

6

Estou tentando criar uma Lens for Unity em 11,10 usando vala. Este é meu daemon.vala:

using Dee;
using Gee;

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

        }
    }
}

Agora, tentar compilar com valac --pkg gee-1.0 --pkg dee-1.0 --pkg unity diz apenas

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 estão todos instalados, e obviamente encontra o pacote unitário (desde mudar --pkg unity para algo como --pkg unity-not-here produz outro erro. Então, qual é o meu erro? por que a Unity.Activation não existe?

Obrigado pessoal!

    
por Leopard2A5 16.01.2012 / 16:05

1 resposta

5

A interface Unity.Activation foi descartada no Unity 4 (Ubuntu 11.10). Em vez disso, você pode conectar-se ao callback de ativação usando sinais como este:

scope.activate_uri.connect(on_uri_activated);

Se você não está sobrescrevendo o tratamento de ativação, você provavelmente só precisará remover o Unity.Activation e recompilar.

A documentação completa do Unity 4 (Ubuntu 11.10) pode ser vista aqui: link

    
por mhall119 24.01.2012 / 16:52