feat(example:todomvc): add editing support
- implement "onfocusout" handler - set autofocus - handle enter, escape and tab on a todo item - make the `<pre>` element between todo list items of margin 0 to be unnoticable
This commit is contained in:
1 parent
02d995e3f7
commit
9849f68f25
5 files changed
+27
-10
No files matched your search
@@ -52,7 +52,7 @@ fn make_synthetic_event(name: &str, val: serde_json::Value) -> Arc<dyn Any + Sen
|
||||
let evt = serde_json::from_value::<KeyboardData>(val).unwrap();
|
||||
Arc::new(evt)
|
||||
}
|
||||
"focus" | "blur" => {
|
||||
"focus" | "blur" | "focusout" => {
|
||||
//
|
||||
Arc::new(FocusData {})
|
||||
}
|
||||
@@ -117,6 +117,7 @@ fn event_name_from_typ(typ: &str) -> &'static str {
|
||||
"keypress" => "keypress",
|
||||
"keyup" => "keyup",
|
||||
"focus" => "focus",
|
||||
"focusout" => "focusout",
|
||||
"blur" => "blur",
|
||||
"change" => "change",
|
||||
"input" => "input",
|
||||
|
||||
@@ -91,6 +91,9 @@ pub mod on {
|
||||
/// onfocus
|
||||
onfocus
|
||||
|
||||
// onfocusout
|
||||
onfocusout
|
||||
|
||||
/// onblur
|
||||
onblur
|
||||
];
|
||||
@@ -1092,7 +1095,7 @@ pub(crate) fn _event_meta(event: &UserEvent) -> (bool, EventPriority) {
|
||||
"keydown" | "keypress" | "keyup" => (true, High),
|
||||
|
||||
// Focus
|
||||
"focus" | "blur" => (true, Low),
|
||||
"focus" | "blur" | "focusout" => (true, Low),
|
||||
|
||||
// Form
|
||||
"change" | "input" | "invalid" | "reset" | "submit" => (true, Medium),
|
||||
|
||||
@@ -203,6 +203,7 @@ pub static BUILTIN_INTERNED_STRINGS: &[&'static str] = &[
|
||||
"onended",
|
||||
"onerror",
|
||||
"onfocus",
|
||||
"onfocusout",
|
||||
"onhashchange",
|
||||
"oninput",
|
||||
"oninvalid",
|
||||
|
||||
Reference in new issue
Block a user