/* Any copyright is dedicated to the Public Domain. * http://creativecommons.org/publicdomain/zero/1.0/ */ async function testSidebarKeyToggle(key, options, expectedSidebarId) { EventUtils.synthesizeMouseAtCenter(gURLBar, {}); let promiseShown = BrowserTestUtils.waitForEvent(window, "SidebarShown"); EventUtils.synthesizeKey(key, options); await promiseShown; Assert.equal(document.getElementById("sidebar-box") .getAttribute("sidebarcommand"), expectedSidebarId); EventUtils.synthesizeKey(key, options); Assert.ok(!SidebarUI.isOpen); } add_task(async function test_sidebar_keys() { registerCleanupFunction(() => SidebarUI.hide()); await testSidebarKeyToggle("b", { accelKey: true }, "viewBookmarksSidebar"); if (AppConstants.platform == "win") { await testSidebarKeyToggle("i", { accelKey: true }, "viewBookmarksSidebar"); } let options = { accelKey: true, shiftKey: AppConstants.platform == "macosx" }; await testSidebarKeyToggle("h", options, "viewHistorySidebar"); });