/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ "use strict"; const kWidgetId = "test-private-browsing-customize-mode-widget"; // Add a widget via the API with showInPrivateBrowsing set to false // and ensure it does not appear in the list of unused widgets in private // windows. add_task(async function testPrivateBrowsingCustomizeModeWidget() { CustomizableUI.createWidget({ id: kWidgetId, showInPrivateBrowsing: false, }); let normalWidgetArray = CustomizableUI.getUnusedWidgets(gNavToolbox.palette); normalWidgetArray = normalWidgetArray.map(w => w.id); ok( normalWidgetArray.indexOf(kWidgetId) > -1, "Widget should appear as unused in non-private window" ); let privateWindow = await openAndLoadWindow({ private: true }); let privateWidgetArray = CustomizableUI.getUnusedWidgets( privateWindow.gNavToolbox.palette ); privateWidgetArray = privateWidgetArray.map(w => w.id); is( privateWidgetArray.indexOf(kWidgetId), -1, "Widget should not appear as unused in private window" ); await promiseWindowClosed(privateWindow); CustomizableUI.destroyWidget(kWidgetId); }); add_task(async function asyncCleanup() { await resetCustomization(); });