MCPcopy Create free account
hub / github.com/angular-rust/ux-components / capture

Method capture

src/elements/element.rs:988–1019  ·  view source on GitHub ↗
(&self)

Source from the content-addressed store, hash-verified

986 }
987
988 fn capture(&self) {
989 let mut comp = self.as_ref().borrow_mut();
990
991 assert!(
992 !comp.destroyed,
993 "Widget was already destroyed but is being interacted with"
994 );
995
996 if let Some(canvas) = comp.canvas.as_ref() {
997 if canvas.id() == self.id() {
998 return;
999 }
1000 }
1001
1002 let pre = if let Some(canvas) = comp.canvas.as_ref() {
1003 if let Some(captured) = canvas.captured {
1004 captured == self.id()
1005 } else {
1006 false
1007 }
1008 } else {
1009 false
1010 };
1011
1012 if let Some(canvas) = comp.canvas.as_mut() {
1013 canvas.captured = Some(self.id());
1014 }
1015
1016 if !pre && comp.oncaptured.is_some() {
1017 let _ = comp.oncaptured.get().try_send(true);
1018 }
1019 }
1020
1021 fn uncapture(&self) {
1022 let mut comp = self.as_ref().borrow_mut();

Callers 8

on_resize_downMethod · 0.80
mousedownMethod · 0.80
scrollvdownMethod · 0.80
scrollhdownMethod · 0.80
mousedownMethod · 0.80
scrollvdownMethod · 0.80
scrollhdownMethod · 0.80
open_listMethod · 0.80

Implementers 15

transform.rssrc/elements/transform.rs
media_query.rssrc/elements/media_query.rs
navigation_toolbar.rssrc/elements/navigation_toolbar.rs
calendar_date_picker.rssrc/elements/calendar_date_picker.rs
custom_scroll_view.rssrc/elements/custom_scroll_view.rs
preferred_size.rssrc/elements/preferred_size.rs
rust_logo.rssrc/elements/rust_logo.rs
panel.rssrc/elements/panel.rs
single_child_scroll_view.rssrc/elements/single_child_scroll_view.
choice_chip.rssrc/elements/choice_chip.rs
tab_page_selector.rssrc/elements/tab_page_selector.rs
align.rssrc/elements/align.rs

Calls 4

try_sendMethod · 0.80
as_refMethod · 0.45
idMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected