firefox_webdriver/browser/tab/
mod.rs

1//! Browser tab automation and control.
2//!
3//! Each [`Tab`] represents a browser tab with a specific frame context.
4//!
5//! # Module Structure
6//!
7//! | Module | Description |
8//! |--------|-------------|
9//! | `core` | Tab struct and accessors |
10//! | `navigation` | URL navigation, history |
11//! | `frames` | Frame switching |
12//! | `script` | JavaScript execution |
13//! | `elements` | Element search and observation |
14//! | `network` | Request interception, blocking |
15//! | `storage` | Cookies, localStorage, sessionStorage |
16//! | `proxy` | Tab-level proxy |
17//! | `screenshot` | Page and element screenshots |
18//! | `scroll` | Scroll control |
19//!
20//! # Example
21//!
22//! ```ignore
23//! let tab = window.tab();
24//!
25//! // Navigate
26//! tab.goto("https://example.com").await?;
27//!
28//! // Find elements
29//! let button = tab.find_element("#submit").await?;
30//! button.click().await?;
31//!
32//! // Screenshot
33//! let png = tab.screenshot().png().capture().await?;
34//! tab.screenshot().jpeg(80).save("page.jpg").await?;
35//!
36//! // Scroll
37//! tab.scroll_by(0, 500).await?;
38//! ```
39
40// ============================================================================
41// Submodules
42// ============================================================================
43
44mod core;
45mod elements;
46mod frames;
47mod navigation;
48mod network;
49mod proxy;
50mod screenshot;
51mod script;
52mod scroll;
53mod storage;
54
55// ============================================================================
56// Re-exports
57// ============================================================================
58
59pub use core::{FrameInfo, Tab};
60pub use screenshot::{ImageFormat, ScreenshotBuilder};