diff --git a/Cargo.lock b/Cargo.lock index 121be14f..501b5512 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -899,9 +899,9 @@ dependencies = [ [[package]] name = "ecolor" -version = "0.21.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f99fe3cac305af9d6d92971af60d0f7ea4d783201ef1673571567b6699964d9" +checksum = "2e479a7fa3f23d4e794f8b2f8b3568dd4e47886ad1b12c9c095e141cb591eb63" dependencies = [ "bytemuck", ] @@ -914,9 +914,9 @@ checksum = "2ab5fa33485cd85ac354df485819a63360fefa312fe04cffe65e6f175be1522c" [[package]] name = "egui" -version = "0.21.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6412a21e0bde7c0918f7fb44bbbb86b5e1f88e63c026a4e747cc7af02f76dfbe" +checksum = "a3aef8ec3ae1b772f340170c65bf27d5b8c28f543a0116c844d2ac08d01123e7" dependencies = [ "ahash 0.8.3", "epaint", @@ -925,9 +925,9 @@ dependencies = [ [[package]] name = "egui_extras" -version = "0.21.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f051342e97dfa2445107cb7d2e720617f5c840199b5cb4fe0ffcf481fcf5cce" +checksum = "9278f4337b526f0d57e5375e5a7340a311fa6ee8f9fcc75721ac50af13face02" dependencies = [ "egui", "resvg 0.28.0", @@ -938,15 +938,15 @@ dependencies = [ [[package]] name = "egui_glow" -version = "0.21.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8257332fb168a965b3dca81d6a344e053153773c889cabdba0b3b76f1629ae81" +checksum = "1f8c2752cdf1b0ef5fcda59a898cacabad974d4f5880e92a420b2c917022da64" dependencies = [ "bytemuck", "egui", "glow 0.12.3", + "log", "memoffset 0.6.5", - "tracing", "wasm-bindgen", "web-sys", ] @@ -959,9 +959,9 @@ checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" [[package]] name = "emath" -version = "0.21.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8ecd80612937e0267909d5351770fe150004e24dab93954f69ca62eecd3f77e" +checksum = "3857d743a6e0741cdd60b622a74c7a36ea75f5f8f11b793b41d905d2c9721a4b" dependencies = [ "bytemuck", ] @@ -1032,9 +1032,9 @@ checksum = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" [[package]] name = "epaint" -version = "0.21.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12e78b5c58a1f7f621f9d546add2adce20636422c9b251e29f749e8a2f713c95" +checksum = "09333964d4d57f40a85338ba3ca5ed4716070ab184dcfed966b35491c5c64f3b" dependencies = [ "ab_glyph", "ahash 0.8.3", @@ -2323,6 +2323,12 @@ dependencies = [ "hashbrown 0.13.2", ] +[[package]] +name = "lz4_flex" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b8c72594ac26bfd34f2d99dfced2edfaddfe8a476e3ff2ca0eb293d925c4f83" + [[package]] name = "malloc_buf" version = "0.0.6" @@ -2383,15 +2389,6 @@ dependencies = [ "autocfg", ] -[[package]] -name = "memoffset" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" -dependencies = [ - "autocfg", -] - [[package]] name = "memoffset" version = "0.9.0" @@ -3178,33 +3175,33 @@ dependencies = [ [[package]] name = "puffin" -version = "0.15.0" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f99b70359a44d98fceb167734e8cc19e232fe885a547f1b622e66d8099931b6" +checksum = "76425abd4e1a0ad4bd6995dd974b52f414fca9974171df8e3708b3e660d05a21" dependencies = [ "anyhow", "bincode", "byteorder", + "cfg-if", "instant", + "lz4_flex", "once_cell", "parking_lot 0.12.1", - "ruzstd", "serde", - "zstd", ] [[package]] name = "puffin_egui" -version = "0.21.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "180408bd5816f172326f52cca2b9cc335ad36db5e40f46210f7d20ed847ce15c" +checksum = "00f0ef87ac588ec9a979ea4952042134ff047407436aa6859ba9e061f55ca55d" dependencies = [ "egui", "indexmap 1.9.3", "instant", "natord", "once_cell", - "puffin 0.15.0", + "puffin 0.16.0", "time", "vec1", ] @@ -3606,17 +3603,6 @@ dependencies = [ "unicode-script", ] -[[package]] -name = "ruzstd" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a15e661f0f9dac21f3494fe5d23a6338c0ac116a2d22c2b63010acd89467ffe" -dependencies = [ - "byteorder", - "thiserror", - "twox-hash", -] - [[package]] name = "ryu" version = "1.0.15" @@ -3846,7 +3832,7 @@ dependencies = [ [[package]] name = "smithay-egui" version = "0.1.0" -source = "git+https://github.com/Smithay/smithay-egui.git?rev=197606f400#197606f40067595438a90129016b1c29941c31ff" +source = "git+https://github.com/Smithay/smithay-egui.git?rev=0a4d573#0a4d57349ad4c9bedb25968b22b7bcb7756dd8cc" dependencies = [ "cgmath", "egui", @@ -3854,7 +3840,7 @@ dependencies = [ "egui_glow", "image", "log", - "memoffset 0.8.0", + "memoffset 0.9.0", "smithay", "xkbcommon 0.5.1", ] @@ -5289,36 +5275,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c110ba09c9b3a43edd4803d570df0da2414fed6e822e22b976a4e3ef50860701" -[[package]] -name = "zstd" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a27595e173641171fc74a1232b7b1c7a7cb6e18222c11e9dfb9888fa424c53c" -dependencies = [ - "zstd-safe", -] - -[[package]] -name = "zstd-safe" -version = "6.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee98ffd0b48ee95e6c5168188e44a54550b1564d9d530ee21d5f0eaed1069581" -dependencies = [ - "libc", - "zstd-sys", -] - -[[package]] -name = "zstd-sys" -version = "2.0.8+zstd.1.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5556e6ee25d32df2586c098bbfa278803692a20d0ab9565e049480d52707ec8c" -dependencies = [ - "cc", - "libc", - "pkg-config", -] - [[package]] name = "zune-inflate" version = "0.2.54" diff --git a/Cargo.toml b/Cargo.toml index 9c786ad0..47432ccd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,7 +14,7 @@ calloop = { version = "0.10.1", features = ["executor"] } serde = { version = "1", features = ["derive"] } serde_json = "1" sendfd = "0.4.1" -egui = { version = "0.21.0", optional = true } +egui = { version = "0.22.0", optional = true } renderdoc = { version = "0.10.1", optional = true } edid-rs = { version = "0.1" } png = "0.17.5" @@ -40,7 +40,7 @@ tracing-subscriber = { version = "0.3.16", features = ["env-filter", "tracing-lo tracing-journald = "0.3.0" tracing = { version = "0.1.37", features = ["max_level_debug", "release_max_level_info"] } puffin = { version = "0.14.3", optional = true } -puffin_egui = { version = "0.21.0", optional = true } +puffin_egui = { version = "0.22.0", optional = true } keyframe = "1.1.1" once_cell = "1.18.0" i18n-embed = { version = "0.13", features = ["fluent-system", "desktop-requester"] } @@ -60,7 +60,7 @@ features = ["backend_drm", "backend_gbm", "backend_egl", "backend_libinput", "ba [dependencies.smithay-egui] git = "https://github.com/Smithay/smithay-egui.git" -rev = "197606f400" +rev = "0a4d573" features = ["svg"] optional = true diff --git a/src/backend/render/element.rs b/src/backend/render/element.rs index 25ef71a3..d1e51b9d 100644 --- a/src/backend/render/element.rs +++ b/src/backend/render/element.rs @@ -178,7 +178,7 @@ impl<'a, 'b> RenderElement> for CosmicElement::draw(elem, glow_frame, src, dst, damage) - .map_err(|err| MultiError::Render(err)) + .map_err(|err| GlMultiError::Render(err)) }; elem } diff --git a/src/backend/render/mod.rs b/src/backend/render/mod.rs index 4998c9f0..f4a2d6dd 100644 --- a/src/backend/render/mod.rs +++ b/src/backend/render/mod.rs @@ -8,6 +8,8 @@ use std::{ time::Instant, }; +#[cfg(feature = "debug")] +use crate::debug::{fps_ui, profiler_ui}; use crate::{ config::WorkspaceLayout, shell::{ @@ -29,11 +31,6 @@ use crate::{ }, }, }; -#[cfg(feature = "debug")] -use crate::{ - debug::{fps_ui, profiler_ui}, - utils::prelude::*, -}; use cosmic_protocols::screencopy::v1::server::zcosmic_screencopy_session_v1::FailureReason; use keyframe::{ease, functions::EaseInOutCubic}; diff --git a/src/debug.rs b/src/debug.rs index 4bd5f037..04564dda 100644 --- a/src/debug.rs +++ b/src/debug.rs @@ -337,6 +337,7 @@ fn format_pointer_focus(focus: Option) -> String { Some(LayerSurface(x)) => format!("LayerSurface {}", x.wl_surface().id().protocol_id()), Some(Popup(x)) => format!("Popup {}", x.wl_surface().id().protocol_id()), Some(OverrideRedirect(x)) => format!("Override Redirect {}", x.window_id()), + Some(PointerFocusTarget::ResizeFork(x)) => format!("Resize Fork {:?}", x.node), None => format!("None"), } } diff --git a/src/input/mod.rs b/src/input/mod.rs index f28015cd..0c647243 100644 --- a/src/input/mod.rs +++ b/src/input/mod.rs @@ -371,7 +371,7 @@ impl State { userdata .get::() .unwrap() - .add(&handle); + .add(&handle, None); return FilterResult::Intercept(None); } } diff --git a/src/shell/element/mod.rs b/src/shell/element/mod.rs index e5d7539c..075d1a3b 100644 --- a/src/shell/element/mod.rs +++ b/src/shell/element/mod.rs @@ -569,7 +569,7 @@ impl CosmicMapped { C: From>, { #[cfg(feature = "debug")] - let mut debug_elements = if let Some(debug) = self.debug.lock().unwrap().as_mut() { + let debug_elements = if let Some(debug) = self.debug.lock().unwrap().as_mut() { let window = self.active_window(); let window_geo = window.geometry(); let (min_size, max_size, size) = @@ -609,16 +609,16 @@ impl CosmicMapped { }); ui.horizontal(|ui| { ui.label("States: "); - if window.is_maximized() { + if window.is_maximized(true) { ui.label("🗖"); } - if window.is_fullscreen() { + if window.is_fullscreen(true) { ui.label("⬜"); } - if window.is_activated() { + if window.is_activated(true) { ui.label("🖱"); } - if window.is_resizing().is_some() { + if window.is_resizing(true).is_some() { ui.label("↔"); } }); diff --git a/src/state.rs b/src/state.rs index c7952038..e87030eb 100644 --- a/src/state.rs +++ b/src/state.rs @@ -681,6 +681,7 @@ impl Common { } #[cfg(feature = "debug")] +#[derive(Debug)] pub struct Egui { pub active: bool, pub state: smithay_egui::EguiState,