def open_private_window()

in foxpuppet/windows/browser/panel_ui/panel_ui.py [0:0]


    def open_private_window(self) -> None:
        """
        Opens a new window in private browsing mode using the Panel UI menu.
        """
        initial_handles = set(self.selenium.window_handles)
        self.open_panel_menu()
        with self.selenium.context(self.selenium.CONTEXT_CHROME):
            self.selenium.find_element(*PanelUILocators.PRIVATE_WINDOW).click()
            self.wait.until(
                lambda _: set(self.selenium.window_handles) - initial_handles,
                message="Private window did not open",
            )
            from foxpuppet.windows.browser.window import BrowserWindow

            new_private_window = self.selenium.window_handles[-1]
            try:
                private_window = BrowserWindow(
                    self.selenium, new_private_window
                ).is_private
                if private_window:
                    self.selenium.switch_to.window(new_private_window)
            except Exception as e:
                raise Exception(f"The new window is not private: {str(e)}")