2014-12-08 1 views
0

툴바 버튼을 사용하여 일반 창과 개인 창을 전환합니다. 나는 약간의 깜박임을 방지하기 위해 '에서는 setTimeout'를 사용Firefox - ITaskbarList :: ActivateTab 사용

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

: 다음은 코드입니다.

새 창이 열리면 포커스가 발생합니다. '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(); 

나는 당신의 도움을 주셔서 감사합니다 것입니다.

Win 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