Firefox - Usando ctypes para ativar um item da barra de tarefas

1

Eu uso um botão da barra de ferramentas no Firefox para alternar entre janelas normais e privadas. Aqui está o código:

OpenBrowserWindow({private: !PrivateBrowsingUtils.isWindowPrivate(window)});
setTimeout(BrowserTryToCloseWindow, 80);

Eu uso 'setTimeout' para evitar algumas oscilações.

Quando a nova janela é aberta, ela recebe o foco. Quando o comando 'BrowserTryToCloseWindow' é executado, o foco retorna para a janela antiga. Quando a janela antiga é fechada, a nova tem o foco, mas não está "marcada / ativa" na barra de tarefas do Windows.

Suponho que preciso usar o ITaskbarList :: ActivateTab para ativar a nova janela na barra de tarefas. Eu tenho a direção (muito) básica:

Components.utils.import("resource://gre/modules/ctypes.jsm");
var lib = ctypes.open("user32.dll");
var taskBar = lib.declare(---
taskBar---
lib.close();

Eu aprecio sua ajuda.

Tema Clássico do Win 7 de 32 bits.

Postado aqui também.

    
por Yaron 07.12.2014 / 04:09

1 resposta

1

function togglePB(click)

{     var newWin = OpenBrowserWindow ({private:! PrivateBrowsingUtils.isWindowPrivate (window)});

if(click.button == 0)
    newWin.addEventListener("focus",  function switchWindows() { window.focus(); BrowserTryToCloseWindow(); newWin.removeEventListener("focus", switchWindows); });

}

link

    
por 15.12.2014 / 16:49