Enum WebViewCommand
pub enum WebViewCommand {
Show 46 variants
Credentials(CredentialRequest),
SetSiteExceptions(Vec<String>),
RequestSiteStatus {
request_id: u32,
origin: String,
},
SiteAction {
request_id: u32,
origin: String,
generation: u64,
action: String,
},
Navigate(String),
ScopedNavigation {
request_id: u32,
command: NavigationCommand,
},
CancelScopedNavigation {
request_id: u32,
},
RequestNavigationHistory {
request_id: u32,
direction: NavigationDirection,
},
NavigateToHistoryEntry {
request_id: u32,
id: u32,
},
GoBack,
GoForward,
Reload,
StopLoading,
ExitFullscreen,
SetAudioMuted(bool),
Find {
id: u32,
text: String,
forward: bool,
next: bool,
},
StopFinding,
ContextMenuAction {
id: u32,
command: u32,
},
SetZoomLevel(f64),
Resize {
width: u32,
height: u32,
scale_factor: f32,
},
MouseMove {
x: f32,
y: f32,
},
MouseButton {
button: MouseButton,
down: bool,
x: f32,
y: f32,
},
Scroll {
dx: f32,
dy: f32,
x: f32,
y: f32,
},
Key {
key: KeyInput,
down: bool,
modifiers: KeyModifiers,
},
SetFocused(bool),
SetContentFilter(Option<Arc<String>>),
SetNativeFilterRules {
rules: Arc<String>,
enabled: Option<bool>,
},
SetContentFilters {
version: u64,
chunks: Arc<Vec<Arc<String>>>,
},
SetUserScripts(Arc<Vec<String>>),
SetBlockingScripts(Arc<Vec<String>>),
RequestMediaElement {
request_id: u64,
},
RequestMediaElementById {
request_id: u64,
element_id: String,
},
Page {
request_id: u32,
request: PageRequest,
},
PaintCapture {
request_id: u32,
},
PaintResource {
request_id: u32,
url: String,
},
ClearWebsiteData,
SetClearOnExit(bool),
ShowDeveloperTools,
PermissionDecision {
id: u32,
allow: bool,
},
DownloadDecision {
id: u32,
allow: bool,
},
CancelNativeDownload {
id: u32,
},
RetryDownload {
id: u32,
},
CancelAllDownloads,
StartDownload {
uri: String,
},
SetDownloadDestination {
id: String,
path: String,
},
CancelDownload {
id: String,
},
}Variants§
Credentials(CredentialRequest)
SetSiteExceptions(Vec<String>)
RequestSiteStatus
SiteAction
Load the given (already normalised) URL.
Transport representation only: use WebViewEngine::navigate_owned
to observe admission before relying on an owned outcome.
GoBack
GoForward
Reload
StopLoading
ExitFullscreen
Ask the native browser host to leave document/video fullscreen.
SetAudioMuted(bool)
Mute or restore native page audio without installing an audio capture handler.
Find
StopFinding
ContextMenuAction
SetZoomLevel(f64)
Resize
Viewport size in physical pixels plus the display scale factor.
MouseMove
MouseButton
Scroll
Scroll by (dx, dy) physical pixels at pointer position (x, y).
Key
SetFocused(bool)
Keyboard focus entered / left the page surface.
SetContentFilter(Option<Arc<String>>)
Compiled WebKit content-blocker JSON (None clears the filter).
Backends without native content filtering ignore this.
SetNativeFilterRules
Source filter rules for engines with native matching. An empty source
preserves current rules. None preserves the enabled state, so an
asynchronous list refresh cannot undo a user’s disable action.
SetContentFilters
Several compiled content-blocker JSON blobs, split because the full
filter-list rule set exceeds WebKit’s per-filter cap. An empty
chunks clears all filters.
version hashes the source filter lists (not the compiled JSON,
since compiler rule ordering isn’t stable across runs); the engine
caches each compiled filter under version+index so an unchanged
rule set loads from disk instead of recompiling (~280k rules costs
several seconds).
SetUserScripts(Arc<Vec<String>>)
Scriptlet-style blocking the declarative content filter can’t
express (e.g. skipping YouTube video ads). Run at document-start
in all frames.
SetBlockingScripts(Arc<Vec<String>>)
Native blocker supplements, guarded by the top-level site policy.
RequestMediaElement
Find the most useful visible HTML video in the current page. The
result is delivered asynchronously as WebViewEvent::MediaElement
or WebViewEvent::MediaElementUnavailable. Browser chrome uses the
returned viewport geometry to create a live, element-sized PiP rather
than mirroring the whole page.
RequestMediaElementById
Re-resolve a previously selected media element by its stable page-local
identity. Active PiP uses this without silently switching videos.
Page
Read or operate the current page’s content. Exactly one
WebViewEvent::PageResult with the same id answers it; engines
without page automation answer PageFailure::unavailable.
PaintCapture
Capture the page’s layout for the paint stream: every box and text
line the engine laid out (see tilo_paint_stream::snapshot). Exactly
one WebViewEvent::PaintSnapshot with the same id answers it.
PaintResource
The bytes of a resource the page already loaded, read from the
engine’s cache. One WebViewEvent::PaintResource answers it.
ClearWebsiteData
Clear all persistent website data (cookies, caches, storage, service workers). Backends without a data store ignore this.
SetClearOnExit(bool)
ShowDeveloperTools
PermissionDecision
DownloadDecision
CancelNativeDownload
RetryDownload
Retry a user-selected network GET without navigating the visible page.
CancelAllDownloads
Stop admitting downloads and cancel every pending or active transfer.
StartDownload
Start a user-requested download of an absolute HTTP(S) URL.
SetDownloadDestination
Finish WebKit’s asynchronous destination decision with the exact
absolute path granted by the desktop file portal.
CancelDownload
Cancel an awaiting or active download by its engine-issued stable id.
Trait Implementations§
§impl Clone for WebViewCommand
impl Clone for WebViewCommand
§fn clone(&self) -> WebViewCommand
fn clone(&self) -> WebViewCommand
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for WebViewCommand
impl Debug for WebViewCommand
§impl PartialEq for WebViewCommand
impl PartialEq for WebViewCommand
impl StructuralPartialEq for WebViewCommand
Auto Trait Implementations§
impl Freeze for WebViewCommand
impl RefUnwindSafe for WebViewCommand
impl Send for WebViewCommand
impl Sync for WebViewCommand
impl Unpin for WebViewCommand
impl UnsafeUnpin for WebViewCommand
impl UnwindSafe for WebViewCommand
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more