pub struct Shell { /* private fields */ }Expand description
Host-facing isolate: the AppCell plus the methods the embedder pushes.
Every push is one call into the app: the App is borrowed for the binding call and
released before the cell’s checkpoint, where the microtasks and futures the event queued
run.
Implementations§
Source§impl Shell
impl Shell
Sourcepub fn new(platform: PlatformRef, setup: impl FnOnce(&mut App)) -> Shell
pub fn new(platform: PlatformRef, setup: impl FnOnce(&mut App)) -> Shell
Builds the heap from platform, then runs application setup.
Setup (later widgets run_app) requests the first frame when it
installs work that needs one.
Sourcepub fn app(&self) -> RefMut<'_, App>
pub fn app(&self) -> RefMut<'_, App>
The App, borrowed until the guard drops. A host that needs the whole thing, a borrow
and then the checkpoint, takes cell.
pub fn cell(&self) -> &Rc<AppCell>
Trait Implementations§
Source§impl EmbedderClient for Shell
impl EmbedderClient for Shell
Source§fn view_added(&mut self, id: ViewId)
fn view_added(&mut self, id: ViewId)
The framework hears which view came, then “metrics changed”, as _addView invokes it.
Source§fn view_removed(&mut self, id: ViewId)
fn view_removed(&mut self, id: ViewId)
The framework hears which view went, then “metrics changed”, as _removeView invokes
it.
Source§fn request_app_exit(&mut self, reply: AppExitReply)
fn request_app_exit(&mut self, reply: AppExitReply)
The binding’s answer goes to reply at the checkpoint of the call in which the
observers decide: this push’s own when they answer at once.
fn frame(&mut self, frame: Frame)
fn view_metrics_changed(&mut self, _id: ViewId)
Source§fn view_focus_changed(&mut self, event: ViewFocusEvent)
fn view_focus_changed(&mut self, event: ViewFocusEvent)
PlatformDispatcher.onViewFocusChange.Source§fn drop_data(&mut self, data: DropData)
fn drop_data(&mut self, data: DropData)
Source§fn pointer_data_packet(&mut self, packet: PointerDataPacket)
fn pointer_data_packet(&mut self, packet: PointerDataPacket)
PlatformDispatcher.onPointerDataPacket.Source§fn pop_route(&mut self) -> bool
fn pop_route(&mut self) -> bool
Source§fn view_close_requested(&mut self, view: ViewId)
fn view_close_requested(&mut self, view: ViewId)
view: its window’s close button, or the system’s Close
command. The host closes nothing itself; the application closes the window, through
HostWindow::close, or keeps it open, such as until its user
has chosen whether to save. Nothing waits for an answer. Read moreSource§fn view_request_failed(&mut self, request: RequestId, error: ViewError)
fn view_request_failed(&mut self, request: RequestId, error: ViewError)
crate::Platform::request_view) got no view: the host could not
make its window. The default drops it.Source§fn app_lifecycle_state_changed(&mut self, state: AppLifecycleState)
fn app_lifecycle_state_changed(&mut self, state: AppLifecycleState)
state: its views were shown, hidden, focused or unfocused, or
the system put it in the background or brought it back. The host sends the state it is
in, and the framework fills in the states between, as Flutter’s ServicesBinding does. Read moreSource§fn platform_brightness_changed(&mut self)
fn platform_brightness_changed(&mut self)
PlatformDispatcher.onPlatformBrightnessChanged: the host’s light or dark
preference changed, and Platform::platform_brightness already answers the new one.Source§fn locales_changed(&mut self)
fn locales_changed(&mut self)
PlatformDispatcher.onLocaleChanged: the host’s locale list changed, and
Platform::locales already answers the new one.Source§fn system_fonts_changed(&mut self)
fn system_fonts_changed(&mut self)
PlatformDispatcher.onSystemFontsChanged: the host registered faces the
framework did not have when text last laid out.Source§fn text_input_editing_value(&mut self, _view: ViewId, value: TextEditingValue)
fn text_input_editing_value(&mut self, _view: ViewId, value: TextEditingValue)
TextInputClient.updateEditingValue. The default drops it.Source§fn text_input_action(&mut self, _view: ViewId, action: TextInputAction)
fn text_input_action(&mut self, _view: ViewId, action: TextInputAction)
TextInputClient.performAction. The default drops it.Source§fn text_input_closed(&mut self, _view: ViewId)
fn text_input_closed(&mut self, _view: ViewId)
TextInputClient.connectionClosed. The default drops it.SystemContextMenuClient.handleSystemHide. The default drops it.SystemContextMenuClient.handleCustomContextMenuAction. The default drops it.