2014-12-08 18 views
0

我使用工具栏按钮在常规和专用窗口之间切换。 下面是代码:Firefox - 使用ITaskbarList :: ActivateTab

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

我为了防止一些闪烁使用“setTimeout的”。

当新窗口打开时,它将获得焦点。 执行命令'BrowserTryToCloseWindow'时,焦点返回到旧窗口。 当旧窗口关闭时,新窗口确实有焦点,但它在Windows任务栏中未被“检查/激活”。

我想我需要使用ITaskbarList :: ActivateTab来激活任务栏中的新窗口。 我有(非常)基本方向:

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

我会很感激你的帮助。

赢7,32位经典主题。

Posted here too

回答

0

解决方案:

function togglePB(click) 

{ VAR为newwin = OpenBrowserWindow({私人:PrivateBrowsingUtils.isWindowPrivate(窗口)});

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

}

http://forums.mozillazine.org/viewtopic.php?f=19&t=2895755