瀏覽代碼

Fix tests

Evan Simkowitz 1 年之前
父節點
當前提交
56095116e2

+ 1 - 0
packages/desktop/headless_tests/events.rs

@@ -1,6 +1,7 @@
 use dioxus::html::geometry::euclid::Vector3D;
 use dioxus::html::geometry::euclid::Vector3D;
 use dioxus::prelude::*;
 use dioxus::prelude::*;
 use dioxus_desktop::DesktopContext;
 use dioxus_desktop::DesktopContext;
+use dioxus_html::PointInteraction;
 
 
 pub(crate) fn check_app_exits(app: Component) {
 pub(crate) fn check_app_exits(app: Component) {
     use dioxus_desktop::tao::window::WindowBuilder;
     use dioxus_desktop::tao::window::WindowBuilder;

+ 6 - 5
packages/dioxus-tui/examples/colorpicker.rs

@@ -1,5 +1,6 @@
 use dioxus::core::RenderReturn;
 use dioxus::core::RenderReturn;
 use dioxus::prelude::*;
 use dioxus::prelude::*;
+use dioxus_html::PointInteraction;
 use dioxus_tui::DioxusElementToNodeId;
 use dioxus_tui::DioxusElementToNodeId;
 use dioxus_tui::Query;
 use dioxus_tui::Query;
 use dioxus_tui::Size;
 use dioxus_tui::Size;
@@ -15,21 +16,21 @@ fn app(cx: Scope) -> Element {
     let mapping: DioxusElementToNodeId = cx.consume_context().unwrap();
     let mapping: DioxusElementToNodeId = cx.consume_context().unwrap();
     // disable templates so that every node has an id and can be queried
     // disable templates so that every node has an id and can be queried
     cx.render(rsx! {
     cx.render(rsx! {
-        div{
+        div {
             width: "100%",
             width: "100%",
             background_color: "hsl({hue}, 70%, {brightness}%)",
             background_color: "hsl({hue}, 70%, {brightness}%)",
             onmousemove: move |evt| {
             onmousemove: move |evt| {
                 if let RenderReturn::Ready(node) = cx.root_node() {
                 if let RenderReturn::Ready(node) = cx.root_node() {
                     if let Some(id) = node.root_ids.borrow().get(0).cloned() {
                     if let Some(id) = node.root_ids.borrow().get(0).cloned() {
                         let node = tui_query.get(mapping.get_node_id(id).unwrap());
                         let node = tui_query.get(mapping.get_node_id(id).unwrap());
-                        let Size{width, height} = node.size().unwrap();
+                        let Size { width, height } = node.size().unwrap();
                         let pos = evt.inner().element_coordinates();
                         let pos = evt.inner().element_coordinates();
-                        hue.set((pos.x as f32/width as f32)*255.0);
-                        brightness.set((pos.y as f32/height as f32)*100.0);
+                        hue.set((pos.x as f32 / width as f32) * 255.0);
+                        brightness.set((pos.y as f32 / height as f32) * 100.0);
                     }
                     }
                 }
                 }
             },
             },
-            "hsl({hue}, 70%, {brightness}%)",
+            "hsl({hue}, 70%, {brightness}%)"
         }
         }
     })
     })
 }
 }

+ 13 - 21
packages/dioxus-tui/examples/hover.rs

@@ -1,5 +1,6 @@
 use dioxus::{events::MouseData, prelude::*};
 use dioxus::{events::MouseData, prelude::*};
 use dioxus_core::Event;
 use dioxus_core::Event;
+use dioxus_html::PointInteraction;
 use std::convert::TryInto;
 use std::convert::TryInto;
 use std::fmt::Write;
 use std::fmt::Write;
 use std::rc::Rc;
 use std::rc::Rc;
@@ -52,15 +53,9 @@ fn app(cx: Scope) -> Element {
     };
     };
 
 
     cx.render(rsx! {
     cx.render(rsx! {
-        div {
-            width: "100%",
-            height: "100%",
-            flex_direction: "column",
+        div { width: "100%", height: "100%", flex_direction: "column",
 
 
-            div {
-                width: "100%",
-                height: "50%",
-                flex_direction: "row",
+            div { width: "100%", height: "50%", flex_direction: "row",
                 div {
                 div {
                     border_width: "1px",
                     border_width: "1px",
                     width: "50%",
                     width: "50%",
@@ -71,7 +66,7 @@ fn app(cx: Scope) -> Element {
                     onmouseenter: move |m| q1_color.set([get_brightness(m.inner()), 0, 0]),
                     onmouseenter: move |m| q1_color.set([get_brightness(m.inner()), 0, 0]),
                     onmousedown: move |m| q1_color.set([get_brightness(m.inner()), 0, 0]),
                     onmousedown: move |m| q1_color.set([get_brightness(m.inner()), 0, 0]),
                     onmouseup: move |m| q1_color.set([get_brightness(m.inner()), 0, 0]),
                     onmouseup: move |m| q1_color.set([get_brightness(m.inner()), 0, 0]),
-                    onwheel: move |w| q1_color.set([q1_color[0] + (10.0*w.delta().strip_units().y) as i32, 0, 0]),
+                    onwheel: move |w| q1_color.set([q1_color[0] + (10.0 * w.delta().strip_units().y) as i32, 0, 0]),
                     onmouseleave: move |_| q1_color.set([200; 3]),
                     onmouseleave: move |_| q1_color.set([200; 3]),
                     onmousemove: update_data,
                     onmousemove: update_data,
                     "click me"
                     "click me"
@@ -85,17 +80,14 @@ fn app(cx: Scope) -> Element {
                     onmouseenter: move |m| q2_color.set([get_brightness(m.inner()); 3]),
                     onmouseenter: move |m| q2_color.set([get_brightness(m.inner()); 3]),
                     onmousedown: move |m| q2_color.set([get_brightness(m.inner()); 3]),
                     onmousedown: move |m| q2_color.set([get_brightness(m.inner()); 3]),
                     onmouseup: move |m| q2_color.set([get_brightness(m.inner()); 3]),
                     onmouseup: move |m| q2_color.set([get_brightness(m.inner()); 3]),
-                    onwheel: move |w| q2_color.set([q2_color[0] + (10.0*w.delta().strip_units().y) as i32;3]),
+                    onwheel: move |w| q2_color.set([q2_color[0] + (10.0 * w.delta().strip_units().y) as i32; 3]),
                     onmouseleave: move |_| q2_color.set([200; 3]),
                     onmouseleave: move |_| q2_color.set([200; 3]),
                     onmousemove: update_data,
                     onmousemove: update_data,
                     "click me"
                     "click me"
                 }
                 }
             }
             }
 
 
-            div {
-                width: "100%",
-                height: "50%",
-                flex_direction: "row",
+            div { width: "100%", height: "50%", flex_direction: "row",
                 div {
                 div {
                     width: "50%",
                     width: "50%",
                     height: "100%",
                     height: "100%",
@@ -105,7 +97,7 @@ fn app(cx: Scope) -> Element {
                     onmouseenter: move |m| q3_color.set([0, get_brightness(m.inner()), 0]),
                     onmouseenter: move |m| q3_color.set([0, get_brightness(m.inner()), 0]),
                     onmousedown: move |m| q3_color.set([0, get_brightness(m.inner()), 0]),
                     onmousedown: move |m| q3_color.set([0, get_brightness(m.inner()), 0]),
                     onmouseup: move |m| q3_color.set([0, get_brightness(m.inner()), 0]),
                     onmouseup: move |m| q3_color.set([0, get_brightness(m.inner()), 0]),
-                    onwheel: move |w| q3_color.set([0, q3_color[1] + (10.0*w.delta().strip_units().y) as i32, 0]),
+                    onwheel: move |w| q3_color.set([0, q3_color[1] + (10.0 * w.delta().strip_units().y) as i32, 0]),
                     onmouseleave: move |_| q3_color.set([200; 3]),
                     onmouseleave: move |_| q3_color.set([200; 3]),
                     onmousemove: update_data,
                     onmousemove: update_data,
                     "click me"
                     "click me"
@@ -119,16 +111,16 @@ fn app(cx: Scope) -> Element {
                     onmouseenter: move |m| q4_color.set([0, 0, get_brightness(m.inner())]),
                     onmouseenter: move |m| q4_color.set([0, 0, get_brightness(m.inner())]),
                     onmousedown: move |m| q4_color.set([0, 0, get_brightness(m.inner())]),
                     onmousedown: move |m| q4_color.set([0, 0, get_brightness(m.inner())]),
                     onmouseup: move |m| q4_color.set([0, 0, get_brightness(m.inner())]),
                     onmouseup: move |m| q4_color.set([0, 0, get_brightness(m.inner())]),
-                    onwheel: move |w| q4_color.set([0, 0, q4_color[2] + (10.0*w.delta().strip_units().y) as i32]),
+                    onwheel: move |w| q4_color.set([0, 0, q4_color[2] + (10.0 * w.delta().strip_units().y) as i32]),
                     onmouseleave: move |_| q4_color.set([200; 3]),
                     onmouseleave: move |_| q4_color.set([200; 3]),
                     onmousemove: update_data,
                     onmousemove: update_data,
                     "click me"
                     "click me"
                 }
                 }
-            },
-            div {"Page coordinates: {page_coordinates}"},
-            div {"Element coordinates: {element_coordinates}"},
-            div {"Buttons: {buttons}"},
-            div {"Modifiers: {modifiers}"},
+            }
+            div { "Page coordinates: {page_coordinates}" }
+            div { "Element coordinates: {element_coordinates}" }
+            div { "Buttons: {buttons}" }
+            div { "Modifiers: {modifiers}" }
         }
         }
     })
     })
 }
 }

+ 19 - 40
packages/dioxus-tui/tests/events.rs

@@ -1,6 +1,7 @@
 use crossterm::event::{Event, KeyCode, KeyEvent, KeyModifiers, MouseButton, MouseEvent};
 use crossterm::event::{Event, KeyCode, KeyEvent, KeyModifiers, MouseButton, MouseEvent};
 use dioxus::prelude::*;
 use dioxus::prelude::*;
 use dioxus_html::input_data::keyboard_types::Code;
 use dioxus_html::input_data::keyboard_types::Code;
+use dioxus_html::PointInteraction;
 use dioxus_tui::TuiContext;
 use dioxus_tui::TuiContext;
 use std::future::Future;
 use std::future::Future;
 use std::pin::Pin;
 use std::pin::Pin;
@@ -63,7 +64,7 @@ fn key_down() {
                 onkeydown: move |evt| {
                 onkeydown: move |evt| {
                     assert_eq!(evt.data.code(), Code::KeyA);
                     assert_eq!(evt.data.code(), Code::KeyA);
                     tui_ctx.quit();
                     tui_ctx.quit();
-                },
+                }
             }
             }
         })
         })
     }
     }
@@ -95,9 +96,11 @@ fn mouse_down() {
                 width: "100%",
                 width: "100%",
                 height: "100%",
                 height: "100%",
                 onmousedown: move |evt| {
                 onmousedown: move |evt| {
-                    assert!(evt.data.held_buttons().contains(dioxus_html::input_data::MouseButton::Primary));
+                    assert!(
+                        evt.data.held_buttons().contains(dioxus_html::input_data::MouseButton::Primary)
+                    );
                     tui_ctx.quit();
                     tui_ctx.quit();
-                },
+                }
             }
             }
         })
         })
     }
     }
@@ -131,13 +134,9 @@ fn mouse_up() {
             modifiers: KeyModifiers::NONE,
             modifiers: KeyModifiers::NONE,
         }));
         }));
         cx.render(rsx! {
         cx.render(rsx! {
-            div {
-                width: "100%",
-                height: "100%",
-                onmouseup: move |_| {
+            div { width: "100%", height: "100%", onmouseup: move |_| {
                     tui_ctx.quit();
                     tui_ctx.quit();
-                },
-            }
+                } }
         })
         })
     }
     }
 }
 }
@@ -170,13 +169,9 @@ fn mouse_enter() {
             modifiers: KeyModifiers::NONE,
             modifiers: KeyModifiers::NONE,
         }));
         }));
         cx.render(rsx! {
         cx.render(rsx! {
-            div {
-                width: "50%",
-                height: "50%",
-                onmouseenter: move |_| {
+            div { width: "50%", height: "50%", onmouseenter: move |_| {
                     tui_ctx.quit();
                     tui_ctx.quit();
-                },
-            }
+                } }
         })
         })
     }
     }
 }
 }
@@ -209,13 +204,9 @@ fn mouse_exit() {
             modifiers: KeyModifiers::NONE,
             modifiers: KeyModifiers::NONE,
         }));
         }));
         cx.render(rsx! {
         cx.render(rsx! {
-            div {
-                width: "50%",
-                height: "50%",
-                onmouseenter: move |_| {
+            div { width: "50%", height: "50%", onmouseenter: move |_| {
                     tui_ctx.quit();
                     tui_ctx.quit();
-                },
-            }
+                } }
         })
         })
     }
     }
 }
 }
@@ -248,13 +239,9 @@ fn mouse_move() {
             modifiers: KeyModifiers::NONE,
             modifiers: KeyModifiers::NONE,
         }));
         }));
         cx.render(rsx! {
         cx.render(rsx! {
-            div {
-                width: "100%",
-                height: "100%",
-                onmousemove: move |_|{
+            div { width: "100%", height: "100%", onmousemove: move |_| {
                     tui_ctx.quit();
                     tui_ctx.quit();
-                },
-            }
+                } }
         })
         })
     }
     }
 }
 }
@@ -293,7 +280,7 @@ fn wheel() {
                 onwheel: move |evt| {
                 onwheel: move |evt| {
                     assert!(evt.data.delta().strip_units().y > 0.0);
                     assert!(evt.data.delta().strip_units().y > 0.0);
                     tui_ctx.quit();
                     tui_ctx.quit();
-                },
+                }
             }
             }
         })
         })
     }
     }
@@ -327,13 +314,9 @@ fn click() {
             modifiers: KeyModifiers::NONE,
             modifiers: KeyModifiers::NONE,
         }));
         }));
         cx.render(rsx! {
         cx.render(rsx! {
-            div {
-                width: "100%",
-                height: "100%",
-                onclick: move |_|{
+            div { width: "100%", height: "100%", onclick: move |_| {
                     tui_ctx.quit();
                     tui_ctx.quit();
-                },
-            }
+                } }
         })
         })
     }
     }
 }
 }
@@ -366,13 +349,9 @@ fn context_menu() {
             modifiers: KeyModifiers::NONE,
             modifiers: KeyModifiers::NONE,
         }));
         }));
         cx.render(rsx! {
         cx.render(rsx! {
-            div {
-                width: "100%",
-                height: "100%",
-                oncontextmenu: move |_|{
+            div { width: "100%", height: "100%", oncontextmenu: move |_| {
                     tui_ctx.quit();
                     tui_ctx.quit();
-                },
-            }
+                } }
         })
         })
     }
     }
 }
 }

+ 1 - 0
packages/html/src/lib.rs

@@ -36,6 +36,7 @@ pub use transit::*;
 pub use elements::*;
 pub use elements::*;
 pub use events::*;
 pub use events::*;
 pub use global_attributes::*;
 pub use global_attributes::*;
+pub use point_interaction::PointInteraction;
 pub use render_template::*;
 pub use render_template::*;
 
 
 mod eval;
 mod eval;

+ 2 - 2
packages/rink/src/hooks.rs

@@ -14,8 +14,8 @@ use dioxus_html::input_data::keyboard_types::{Code, Key, Location, Modifiers};
 use dioxus_html::input_data::{
 use dioxus_html::input_data::{
     MouseButton as DioxusMouseButton, MouseButtonSet as DioxusMouseButtons,
     MouseButton as DioxusMouseButton, MouseButtonSet as DioxusMouseButtons,
 };
 };
-use dioxus_html::point_interaction::{PointData, PointInteraction};
-use dioxus_html::{event_bubbles, FocusData, KeyboardData, MouseData, WheelData};
+use dioxus_html::point_interaction::PointData;
+use dioxus_html::{event_bubbles, FocusData, KeyboardData, MouseData, PointInteraction, WheelData};
 use std::any::Any;
 use std::any::Any;
 use std::collections::HashMap;
 use std::collections::HashMap;
 use std::{
 use std::{

+ 1 - 3
packages/rink/src/widgets/slider.rs

@@ -1,8 +1,6 @@
 use std::collections::HashMap;
 use std::collections::HashMap;
 
 
-use dioxus_html::{
-    input_data::keyboard_types::Key, point_interaction::PointInteraction, KeyboardData, MouseData,
-};
+use dioxus_html::{input_data::keyboard_types::Key, KeyboardData, MouseData, PointInteraction};
 use dioxus_native_core::{
 use dioxus_native_core::{
     custom_element::CustomElement,
     custom_element::CustomElement,
     node::{OwnedAttributeDiscription, OwnedAttributeValue},
     node::{OwnedAttributeDiscription, OwnedAttributeValue},