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)}")