Merge branch 'master' into jk/liveview-pool

This commit is contained in:
Jonathan Kelley committed 2023-03-13 21:45:27 -04:00
commit 55446c184c
11 files changed
+27 -40

No files matched your search

+3 -3
View File
@@ -175,10 +175,10 @@ impl VirtualDom {
}
impl ElementPath {
pub(crate) fn is_ascendant(&self, big: &&[u8]) -> bool {
pub(crate) fn is_decendant(&self, small: &&[u8]) -> bool {
match *self {
ElementPath::Deep(small) => small.len() <= big.len() && small == &big[..small.len()],
ElementPath::Root(r) => big.len() == 1 && big[0] == r as u8,
ElementPath::Deep(big) => small.len() <= big.len() && *small == &big[..small.len()],
ElementPath::Root(r) => small.len() == 1 && small[0] == r as u8,
}
}
}
+3 -3
View File
@@ -72,9 +72,9 @@ pub struct LocalTaskHandle {
impl ArcWake for LocalTaskHandle {
fn wake_by_ref(arc_self: &Arc<Self>) {
arc_self
// This can fail if the scheduler has been dropped while the application is shutting down
let _ = arc_self
.tx
.unbounded_send(SchedulerMsg::TaskNotified(arc_self.id))
.unwrap();
.unbounded_send(SchedulerMsg::TaskNotified(arc_self.id));
}
}
+1 -1
View File
@@ -396,7 +396,7 @@ impl VirtualDom {
// Remove the "on" prefix if it exists, TODO, we should remove this and settle on one
if attr.name.trim_start_matches("on") == name
&& target_path.is_ascendant(&this_path)
&& target_path.is_decendant(&this_path)
{
listeners.push(&attr.value);
+5 -4
View File
@@ -357,10 +357,11 @@ class Interpreter {
if (event.type === "click") {
// todo call prevent default if it's the right type of event
if (shouldPreventDefault !== `onclick`) {
if (target.tagName === "A") {
event.preventDefault();
const href = target.getAttribute("href");
let a_element = target.closest("a");
if (a_element != null) {
event.preventDefault();
if (shouldPreventDefault !== `onclick` && a_element.getAttribute(`dioxus-prevent-default`) !== `onclick`) {
const href = a_element.getAttribute("href");
if (href !== "" && href !== null && href !== undefined) {
window.ipc.postMessage(
serializeIpcMessage("browser_open", { href })
+1 -1
View File
@@ -1,4 +1,4 @@
# Dioxus Native Core
# Dioxus Router
[![Crates.io][crates-badge]][crates-url]
[![MIT licensed][mit-badge]][mit-url]
+2 -7
View File
@@ -46,18 +46,13 @@ impl Default for Config {
}
}
#[derive(Clone, Copy)]
#[derive(Clone, Copy, Default)]
pub enum RenderingMode {
/// only 16 colors by accessed by name, no alpha support
BaseColors,
/// 8 bit colors, will be downsampled from rgb colors
Ansi,
/// 24 bit colors, most terminals support this
#[default]
Rgb,
}
impl Default for RenderingMode {
fn default() -> Self {
RenderingMode::Rgb
}
}
+2 -7
View File
@@ -14,8 +14,9 @@ use dioxus_native_core::{
state::NodeDepState,
};
#[derive(Clone, Copy, PartialEq, Eq, Debug)]
#[derive(Clone, Copy, PartialEq, Eq, Debug, Default)]
pub(crate) enum FocusLevel {
#[default]
Unfocusable,
Focusable,
Ordered(std::num::NonZeroU16),
@@ -53,12 +54,6 @@ impl Ord for FocusLevel {
}
}
impl Default for FocusLevel {
fn default() -> Self {
FocusLevel::Unfocusable
}
}
#[derive(Clone, PartialEq, Debug, Default)]
pub(crate) struct Focus {
pub level: FocusLevel,
+2 -7
View File
@@ -20,7 +20,7 @@ pub(crate) struct NodeState {
pub focused: bool,
}
#[derive(PartialEq, Debug, Clone)]
#[derive(PartialEq, Debug, Clone, Default)]
pub(crate) enum PreventDefault {
Focus,
KeyPress,
@@ -32,6 +32,7 @@ pub(crate) enum PreventDefault {
MouseEnter,
MouseLeave,
MouseOut,
#[default]
Unknown,
MouseOver,
ContextMenu,
@@ -39,12 +40,6 @@ pub(crate) enum PreventDefault {
MouseUp,
}
impl Default for PreventDefault {
fn default() -> Self {
PreventDefault::Unknown
}
}
impl NodeDepState for PreventDefault {
type DepState = ();
type Ctx = ();