diff --git a/Cargo.lock b/Cargo.lock index 31cc5f43..fe611472 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5713,9 +5713,9 @@ dependencies = [ [[package]] name = "taffy" -version = "0.9.2" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ba83ebaf2954d31d05d67340fd46cebe99da2b7133b0dd68d70c65473a437b" +checksum = "73afc801dd6bd47529eaa7c7e90557f107527d1b7c9c7ed7d7803c7b8d0c357f" dependencies = [ "arrayvec", "grid", diff --git a/Cargo.toml b/Cargo.toml index f390414f..cd326be4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -27,12 +27,17 @@ serde = { version = "1", features = ["derive"] } serde_json = "1.0.145" serde_json5 = "0.2.1" slotmap = "1.1.1" +smallvec = "1.15.2" smol = "2.0.2" strum = { version = "0.27.2", features = ["derive"] } uuid = { version = "1.19.0", features = ["fast-rng", "serde", "v4"] } -vulkano = { version = "0.35.2", default-features = false, features = [ - "macros", -] } +vulkano = { + version = "0.35.2", + default-features = false, + features = [ + "macros", + ] +} vulkano-shaders = "0.35.0" wayland-client = { version = "0.31" } wayland-protocols = { version = "0.32" } @@ -40,7 +45,10 @@ wayland-protocols-misc = { version = "0.3.12" } xdg = "3.0.0" [patch.crates-io] -vulkano = { git = "https://github.com/galister/vulkano.git", rev = "cf7f92867928a56ce16b376037c1120f2b167678" } +vulkano = { + git = "https://github.com/galister/vulkano.git", + rev = "cf7f92867928a56ce16b376037c1120f2b167678" +} [profile.dev] opt-level = 1 diff --git a/dash-frontend/src/tab/settings/mod.rs b/dash-frontend/src/tab/settings/mod.rs index 237eaa22..61cbf374 100644 --- a/dash-frontend/src/tab/settings/mod.rs +++ b/dash-frontend/src/tab/settings/mod.rs @@ -580,7 +580,7 @@ pub fn horiz_cell(layout: &mut Layout, parent: WidgetID) -> anyhow::Result anyhow::Resul let theme = &ess.layout.state.theme; if style.align_items.is_none() { - style.align_items = Some(AlignItems::Center); + style.align_items = Some(AlignItems::CENTER); } if style.justify_content.is_none() { - style.justify_content = Some(JustifyContent::Center); + style.justify_content = Some(JustifyContent::CENTER); } style.overflow.x = taffy::Overflow::Hidden; style.overflow.y = taffy::Overflow::Hidden; diff --git a/wgui/src/components/checkbox.rs b/wgui/src/components/checkbox.rs index 4a49e775..cc11a86d 100644 --- a/wgui/src/components/checkbox.rs +++ b/wgui/src/components/checkbox.rs @@ -333,7 +333,7 @@ pub fn construct(ess: &mut ConstructEssentials, params: Params) -> anyhow::Resul // force-override style style.flex_wrap = taffy::FlexWrap::NoWrap; - style.align_items = Some(AlignItems::Center); + style.align_items = Some(AlignItems::CENTER); // make checkbox interaction box larger by setting padding and negative margin style.padding = taffy::Rect { diff --git a/wgui/src/components/editbox.rs b/wgui/src/components/editbox.rs index 14ea2de0..daae860e 100644 --- a/wgui/src/components/editbox.rs +++ b/wgui/src/components/editbox.rs @@ -282,7 +282,7 @@ pub fn construct( } // override style - params.style.align_items = Some(taffy::AlignItems::Center); + params.style.align_items = Some(taffy::AlignItems::CENTER); params.style.position = taffy::Position::Relative; params.style.overflow = taffy::Point { x: taffy::Overflow::Scroll, @@ -307,8 +307,8 @@ pub fn construct( taffy::Style { position: taffy::Position::Absolute, flex_direction: taffy::FlexDirection::Column, - align_content: Some(taffy::AlignContent::Center), - align_items: Some(taffy::AlignItems::Center), + align_content: Some(taffy::AlignContent::CENTER), + align_items: Some(taffy::AlignItems::CENTER), size: taffy::Size { width: percent(1.0), height: percent(1.0), @@ -364,8 +364,8 @@ pub fn construct( ..Default::default() }), taffy::Style { - align_self: Some(taffy::AlignSelf::Center), - justify_self: Some(taffy::JustifySelf::End), + align_self: Some(taffy::AlignSelf::CENTER), + justify_self: Some(taffy::JustifySelf::END), min_size: taffy::Size { width: length(2.0), height: length(16.0), diff --git a/wgui/src/components/slider.rs b/wgui/src/components/slider.rs index 56a8ae9b..69e338d5 100644 --- a/wgui/src/components/slider.rs +++ b/wgui/src/components/slider.rs @@ -593,8 +593,8 @@ fn mount_slider_handle( height: percent(1.0), }, position: taffy::Position::Absolute, - align_items: Some(taffy::AlignItems::Center), - justify_content: Some(taffy::JustifyContent::Center), + align_items: Some(taffy::AlignItems::CENTER), + justify_content: Some(taffy::JustifyContent::CENTER), ..Default::default() }; @@ -671,8 +671,8 @@ pub fn construct(ess: &mut ConstructEssentials, params: Params) -> anyhow::Resul height: percent(PAD_PERCENT), }, position: taffy::Position::Absolute, - align_self: Some(taffy::AlignItems::Center), - justify_self: Some(taffy::JustifySelf::Center), + align_self: Some(taffy::AlignItems::CENTER), + justify_self: Some(taffy::JustifySelf::CENTER), ..Default::default() }, )?; diff --git a/wgui/src/components/tabs.rs b/wgui/src/components/tabs.rs index de6acb66..7870dd72 100644 --- a/wgui/src/components/tabs.rs +++ b/wgui/src/components/tabs.rs @@ -1,18 +1,18 @@ use crate::{ assets::AssetPath, components::{ - Component, ComponentBase, ComponentTrait, RefreshData, button::{self, ComponentButton}, + Component, ComponentBase, ComponentTrait, RefreshData, }, event::CallbackDataCommon, i18n::Translation, layout::WidgetPair, - widget::{ConstructEssentials, div::WidgetDiv}, + widget::{div::WidgetDiv, ConstructEssentials}, }; use std::{cell::RefCell, rc::Rc}; use taffy::{ - AlignItems, prelude::{length, percent}, + AlignItems, }; pub struct Entry<'a> { @@ -113,7 +113,7 @@ pub fn construct(ess: &mut ConstructEssentials, params: Params) -> anyhow::Resul style.overflow.y = taffy::Overflow::Scroll; style.flex_direction = taffy::FlexDirection::Column; style.flex_wrap = taffy::FlexWrap::NoWrap; - style.align_items = Some(AlignItems::Center); + style.align_items = Some(AlignItems::CENTER); style.gap = length(4.0); let (root, _) = ess.layout.add_child(ess.parent, WidgetDiv::create(), style)?; @@ -135,7 +135,7 @@ pub fn construct(ess: &mut ConstructEssentials, params: Params) -> anyhow::Resul width: percent(1.0), height: length(32.0), }, - justify_content: Some(taffy::JustifyContent::Start), + justify_content: Some(taffy::JustifyContent::START), ..Default::default() }, ..Default::default() diff --git a/wgui/src/components/tooltip.rs b/wgui/src/components/tooltip.rs index 64f53a03..9af734e0 100644 --- a/wgui/src/components/tooltip.rs +++ b/wgui/src/components/tooltip.rs @@ -183,26 +183,26 @@ pub fn construct(ess: &mut ConstructEssentials, params: Params) -> anyhow::Resul TooltipSide::Left => ( absolute_boundary.left() - spacing - pin_size, absolute_boundary.top() + absolute_boundary.size.y / 2.0 - pin_size / 2.0, - taffy::AlignItems::Center, - taffy::JustifyContent::End, + taffy::AlignItems::CENTER, + taffy::JustifyContent::END, ), TooltipSide::Right => ( absolute_boundary.left() + absolute_boundary.size.x + spacing, absolute_boundary.top() + absolute_boundary.size.y / 2.0 - pin_size / 2.0, - taffy::AlignItems::Center, - taffy::JustifyContent::Start, + taffy::AlignItems::CENTER, + taffy::JustifyContent::START, ), TooltipSide::Top => ( absolute_boundary.left() + absolute_boundary.size.x / 2.0 - pin_size / 2.0, absolute_boundary.top() - spacing - pin_size, - taffy::AlignItems::End, - taffy::JustifyContent::Center, + taffy::AlignItems::END, + taffy::JustifyContent::CENTER, ), TooltipSide::Bottom => ( absolute_boundary.left() + absolute_boundary.size.x / 2.0 - pin_size / 2.0, absolute_boundary.top() + absolute_boundary.size.y + spacing, - taffy::AlignItems::Baseline, - taffy::JustifyContent::Center, + taffy::AlignItems::BASELINE, + taffy::JustifyContent::CENTER, ), }; diff --git a/wgui/src/parser/style.rs b/wgui/src/parser/style.rs index 13b258bc..9722e4a1 100644 --- a/wgui/src/parser/style.rs +++ b/wgui/src/parser/style.rs @@ -5,7 +5,7 @@ use taffy::{ use crate::{ drawing, - parser::{AttribPair, ParserContext, is_percent, parse_color_hex, parse_f32}, + parser::{is_percent, parse_color_hex, parse_f32, AttribPair, ParserContext}, renderer_vk::text::{FontWeight, HorizontalAlign, TextStyle}, widget::util::WLength, }; @@ -315,64 +315,64 @@ pub fn parse_style(ctx: &ParserContext<'_>, attribs: &[AttribPair], tag_name: &s } }, "align_self" => match value { - "baseline" => style.align_self = Some(AlignSelf::Baseline), - "center" => style.align_self = Some(AlignSelf::Center), - "end" => style.align_self = Some(AlignSelf::End), - "flex_end" => style.align_self = Some(AlignSelf::FlexEnd), - "flex_start" => style.align_self = Some(AlignSelf::FlexStart), - "start" => style.align_self = Some(AlignSelf::Start), - "stretch" => style.align_self = Some(AlignSelf::Stretch), + "baseline" => style.align_self = Some(AlignSelf::BASELINE), + "center" => style.align_self = Some(AlignSelf::CENTER), + "end" => style.align_self = Some(AlignSelf::END), + "flex_end" => style.align_self = Some(AlignSelf::FLEX_END), + "flex_start" => style.align_self = Some(AlignSelf::FLEX_START), + "start" => style.align_self = Some(AlignSelf::START), + "stretch" => style.align_self = Some(AlignSelf::STRETCH), _ => { ctx.print_invalid_attrib(tag_name, key, value); } }, "justify_self" => match value { - "center" => style.justify_self = Some(JustifySelf::Center), - "end" => style.justify_self = Some(JustifySelf::End), - "flex_end" => style.justify_self = Some(JustifySelf::FlexEnd), - "flex_start" => style.justify_self = Some(JustifySelf::FlexStart), - "start" => style.justify_self = Some(JustifySelf::Start), - "stretch" => style.justify_self = Some(JustifySelf::Stretch), + "center" => style.justify_self = Some(JustifySelf::CENTER), + "end" => style.justify_self = Some(JustifySelf::END), + "flex_end" => style.justify_self = Some(JustifySelf::FLEX_END), + "flex_start" => style.justify_self = Some(JustifySelf::FLEX_START), + "start" => style.justify_self = Some(JustifySelf::START), + "stretch" => style.justify_self = Some(JustifySelf::STRETCH), _ => { ctx.print_invalid_attrib(tag_name, key, value); } }, "align_items" => match value { - "baseline" => style.align_items = Some(AlignItems::Baseline), - "center" => style.align_items = Some(AlignItems::Center), - "end" => style.align_items = Some(AlignItems::End), - "flex_end" => style.align_items = Some(AlignItems::FlexEnd), - "flex_start" => style.align_items = Some(AlignItems::FlexStart), - "start" => style.align_items = Some(AlignItems::Start), - "stretch" => style.align_items = Some(AlignItems::Stretch), + "baseline" => style.align_items = Some(AlignItems::BASELINE), + "center" => style.align_items = Some(AlignItems::CENTER), + "end" => style.align_items = Some(AlignItems::END), + "flex_end" => style.align_items = Some(AlignItems::FLEX_END), + "flex_start" => style.align_items = Some(AlignItems::FLEX_START), + "start" => style.align_items = Some(AlignItems::START), + "stretch" => style.align_items = Some(AlignItems::STRETCH), _ => { ctx.print_invalid_attrib(tag_name, key, value); } }, "align_content" => match value { - "center" => style.align_content = Some(AlignContent::Center), - "end" => style.align_content = Some(AlignContent::End), - "flex_end" => style.align_content = Some(AlignContent::FlexEnd), - "flex_start" => style.align_content = Some(AlignContent::FlexStart), - "space_around" => style.align_content = Some(AlignContent::SpaceAround), - "space_between" => style.align_content = Some(AlignContent::SpaceBetween), - "space_evenly" => style.align_content = Some(AlignContent::SpaceEvenly), - "start" => style.align_content = Some(AlignContent::Start), - "stretch" => style.align_content = Some(AlignContent::Stretch), + "center" => style.align_content = Some(AlignContent::CENTER), + "end" => style.align_content = Some(AlignContent::END), + "flex_end" => style.align_content = Some(AlignContent::FLEX_END), + "flex_start" => style.align_content = Some(AlignContent::FLEX_START), + "space_around" => style.align_content = Some(AlignContent::SPACE_AROUND), + "space_between" => style.align_content = Some(AlignContent::SPACE_BETWEEN), + "space_evenly" => style.align_content = Some(AlignContent::SPACE_EVENLY), + "start" => style.align_content = Some(AlignContent::START), + "stretch" => style.align_content = Some(AlignContent::STRETCH), _ => { ctx.print_invalid_attrib(tag_name, key, value); } }, "justify_content" => match value { - "center" => style.justify_content = Some(JustifyContent::Center), - "end" => style.justify_content = Some(JustifyContent::End), - "flex_end" => style.justify_content = Some(JustifyContent::FlexEnd), - "flex_start" => style.justify_content = Some(JustifyContent::FlexStart), - "space_around" => style.justify_content = Some(JustifyContent::SpaceAround), - "space_between" => style.justify_content = Some(JustifyContent::SpaceBetween), - "space_evenly" => style.justify_content = Some(JustifyContent::SpaceEvenly), - "start" => style.justify_content = Some(JustifyContent::Start), - "stretch" => style.justify_content = Some(JustifyContent::Stretch), + "center" => style.justify_content = Some(JustifyContent::CENTER), + "end" => style.justify_content = Some(JustifyContent::END), + "flex_end" => style.justify_content = Some(JustifyContent::FLEX_END), + "flex_start" => style.justify_content = Some(JustifyContent::FLEX_START), + "space_around" => style.justify_content = Some(JustifyContent::SPACE_AROUND), + "space_between" => style.justify_content = Some(JustifyContent::SPACE_BETWEEN), + "space_evenly" => style.justify_content = Some(JustifyContent::SPACE_EVENLY), + "start" => style.justify_content = Some(JustifyContent::START), + "stretch" => style.justify_content = Some(JustifyContent::STRETCH), _ => { ctx.print_invalid_attrib(tag_name, key, value); } diff --git a/wgui/src/windowing/window.rs b/wgui/src/windowing/window.rs index 328ef746..1dc084e5 100644 --- a/wgui/src/windowing/window.rs +++ b/wgui/src/windowing/window.rs @@ -122,8 +122,8 @@ impl WguiWindow { bottom: length(0.0), right: length(0.0), }, - taffy::JustifyContent::Start, // x start - taffy::AlignItems::Start, // y start + taffy::JustifyContent::START, // x start + taffy::AlignItems::START, // y start ), WguiWindowPlacement::BottomLeft => ( taffy::Rect { @@ -132,8 +132,8 @@ impl WguiWindow { bottom: length(params.position.y - window_padding), right: length(0.0), }, - taffy::JustifyContent::Start, // x start - taffy::AlignItems::End, // y end + taffy::JustifyContent::START, // x start + taffy::AlignItems::END, // y end ), WguiWindowPlacement::TopRight => ( taffy::Rect { @@ -142,8 +142,8 @@ impl WguiWindow { bottom: length(0.0), right: length(params.position.x - window_padding), }, - taffy::JustifyContent::End, // x end - taffy::AlignItems::Start, // y start + taffy::JustifyContent::END, // x end + taffy::AlignItems::START, // y start ), WguiWindowPlacement::BottomRight => ( taffy::Rect { @@ -152,8 +152,8 @@ impl WguiWindow { bottom: length(params.position.y - window_padding), right: length(params.position.x - window_padding), }, - taffy::JustifyContent::End, // x end - taffy::AlignItems::End, // y end + taffy::JustifyContent::END, // x end + taffy::AlignItems::END, // y end ), };