Firefox-使用ctypes激活任务栏项目

Firefox-使用ctypes激活任务栏项目

我使用 Firefox 中的工具栏按钮在普通窗口和隐私窗口之间切换。代码如下:

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("user32.dll");
var taskBar = lib.declare(---
taskBar---
lib.close();

我将非常感激你的帮助。

Win 7,32 位,经典主题。

也发布在这里。

答案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); });

}

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

相关内容