pub struct InertPlatform;Expand description
Platform for hand-pumped tests.
Trait Implementations§
Source§impl Platform for InertPlatform
impl Platform for InertPlatform
Source§fn target_platform(&self) -> TargetPlatform
fn target_platform(&self) -> TargetPlatform
Android, which is what Flutter’s own test binding defaults
debugDefaultTargetPlatform to: a bare App has no host to speak of,
and a deterministic answer beats the machine’s.
Source§fn request_frame(&self, _view: ViewId)
fn request_frame(&self, _view: ViewId)
Source§fn dispatcher(&self) -> Arc<dyn Dispatcher> ⓘ
fn dispatcher(&self) -> Arc<dyn Dispatcher> ⓘ
The host’s threads, for waking the application or running work off the main thread: see
Dispatcher.Source§fn views(&self) -> Vec<ViewRef> ⓘ
fn views(&self) -> Vec<ViewRef> ⓘ
Every view the app has now: those the platform gave it, such as a phone’s screen or an
embedder’s views, and those it asked for. An app may run with none, as one on a desktop
does until it asks.
Source§fn request_view(&self, request: ViewRequest) -> Result<RequestId, ViewError>
fn request_view(&self, request: ViewRequest) -> Result<RequestId, ViewError>
Asks for a view. A desktop makes a window for it; a platform that gives the app its
views and makes none, a phone or an embedder, answers
ViewError::Unsupported.
The view arrives later, through EmbedderClient::view_added, carrying the id answered
here; a request that fails on the way is reported through
EmbedderClient::view_request_failed.Source§fn request_view_focus_change(
&self,
view_id: ViewId,
state: ViewFocusState,
direction: ViewFocusDirection,
)
fn request_view_focus_change( &self, view_id: ViewId, state: ViewFocusState, direction: ViewFocusDirection, )
Flutter
PlatformDispatcher.requestViewFocusChange: asks the host to move view focus.
A host without native focus support ignores the request.Source§fn locales(&self) -> Vec<Locale>
fn locales(&self) -> Vec<Locale>
The full system-reported supported locales of the device (Flutter
PlatformDispatcher.locales), in order of preference; empty until the host
reports them.Source§fn set_application_locale(&self, locale: &Locale)
fn set_application_locale(&self, locale: &Locale)
Tells the host which locale the application resolved to (Flutter
PlatformDispatcher.setApplicationLocale); the default drops it.Source§fn platform_brightness(&self) -> Brightness
fn platform_brightness(&self) -> Brightness
The platform’s light/dark preference (Flutter
PlatformDispatcher.platformBrightness). Read moreSource§fn default_route_name(&self) -> String
fn default_route_name(&self) -> String
The route the application was started with (Flutter
PlatformDispatcher.defaultRouteName). Read moreSource§fn initial_lifecycle_state(&self) -> Option<AppLifecycleState>
fn initial_lifecycle_state(&self) -> Option<AppLifecycleState>
The lifecycle state immediately after the application started (Flutter
PlatformDispatcher.initialLifecycleState). Read moreSource§fn font_source(&self) -> Option<Box<dyn FontSource>>
fn font_source(&self) -> Option<Box<dyn FontSource>>
The platform’s own font lookup: faces by family name and by codepoint, the way
Flutter’s engine asks the OS.
None for a host without one; text then shapes only
against fonts the application registers.Source§fn default_font_families(&self) -> Vec<String>
fn default_font_families(&self) -> Vec<String>
Flutter’s
txt::GetDefaultFontFamilies(): the families text uses when its style names
none, first match first. Read moreSource§fn open_image_codec(&self, bytes: Arc<[u8]>) -> ImageCodecFuture
fn open_image_codec(&self, bytes: Arc<[u8]>) -> ImageCodecFuture
Open an encoded image, answering with a codec for its frames. Read more
Source§fn import_pixels(&self, pixels: PixelBuffer) -> Option<Image>
fn import_pixels(&self, pixels: PixelBuffer) -> Option<Image>
An image from pixels the app already holds, with no codec in between: Flutter’s
decodeImageFromPixels. None when the host has no renderer to put it on yet.Source§fn compositor(&self) -> Option<Arc<dyn Compositor>>
fn compositor(&self) -> Option<Arc<dyn Compositor>>
The host’s compositor, where it has one: native surfaces shown beside the
framework’s picture.
None on the web, on X11, on the inert host, and on an
embedder that chose not to have one.Source§fn vsync_waiter(&self) -> Option<Arc<dyn VsyncWaiter>>
fn vsync_waiter(&self) -> Option<Arc<dyn VsyncWaiter>>
Flutter’s
VsyncWaiter, for any screen: the refreshes the host draws the framework’s
frames at, for a producer that paces by them, as a native surface’s does. None for a
host without screen ticks.Source§fn screens(&self) -> Option<&dyn Screens>
fn screens(&self) -> Option<&dyn Screens>
The screens the app’s views are on, and where the pointer is on them (Flutter
PlatformDispatcher.displays), or None where the host has none to report. Every host
with screens answers, a phone with its one included; a view’s metrics name the screen it
is on, and a host that hears the screens change says so through
EmbedderClient::screens_changed.Source§fn clipboard(&self) -> Option<&dyn Clipboard>
fn clipboard(&self) -> Option<&dyn Clipboard>
The system clipboard, or
None where the host has none.Source§fn system_chrome(&self) -> Option<&dyn SystemChrome>
fn system_chrome(&self) -> Option<&dyn SystemChrome>
The system UI drawn around the app, or
None where the host has none.Source§fn haptics(&self) -> Option<&dyn Haptics>
fn haptics(&self) -> Option<&dyn Haptics>
Haptic feedback on the device, or
None where the host has none.The system’s own menu over a text selection, or
None where the host has none.Native pop-up menus shown at the pointer, or
None where the host has none.Source§fn text_services(&self) -> Option<&dyn TextServices>
fn text_services(&self) -> Option<&dyn TextServices>
The system services a selection toolbar offers, or
None where the host has none.Source§fn mouse_cursor(&self) -> Option<&dyn MouseCursor>
fn mouse_cursor(&self) -> Option<&dyn MouseCursor>
The system cursor shown for a pointing device, or
None where the host has none.Source§fn restoration(&self) -> Option<&dyn Restoration>
fn restoration(&self) -> Option<&dyn Restoration>
Application state kept across relaunches, or
None where the host has none.Source§fn app_exit(&self) -> Option<&dyn AppExit>
fn app_exit(&self) -> Option<&dyn AppExit>
Quitting at the application’s own request, or
None where the host cannot quit
itself: a phone, a browser tab.Source§fn file_opening(&self) -> Option<&dyn FileOpening>
fn file_opening(&self) -> Option<&dyn FileOpening>
The files the system asks the app to open, or
None where the system never asks: it
starts the app with them on its command line instead, or has no files to open.Auto Trait Implementations§
impl Freeze for InertPlatform
impl RefUnwindSafe for InertPlatform
impl Send for InertPlatform
impl Sync for InertPlatform
impl Unpin for InertPlatform
impl UnsafeUnpin for InertPlatform
impl UnwindSafe for InertPlatform
Blanket Implementations§
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
Mutably borrows from an owned value. Read more