diff --git a/app/Cargo.lock b/app/Cargo.lock index aa87800..4f8bfce 100644 --- a/app/Cargo.lock +++ b/app/Cargo.lock @@ -1,6 +1,6 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "ab_glyph" @@ -87,9 +87,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.71" +version = "1.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8" +checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100" [[package]] name = "arc-swap" @@ -405,15 +405,14 @@ dependencies = [ [[package]] name = "cocoa-foundation" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "931d3837c286f56e3c58423ce4eba12d08db2374461a785c86f672b08b5650d6" +checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7" dependencies = [ "bitflags 1.3.2", "block", "core-foundation", "core-graphics-types", - "foreign-types", "libc", "objc", ] @@ -788,7 +787,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.106", ] [[package]] @@ -1192,6 +1191,7 @@ name = "jarvis-app" version = "0.0.3" dependencies = [ "atomic_enum", + "gtk", "hound", "image", "kira", @@ -1936,7 +1936,7 @@ checksum = "39407670928234ebc5e6e580247dd567ad73a3578460c5990f9503df207e8f07" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.106", ] [[package]] @@ -2042,9 +2042,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.60" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406" +checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" dependencies = [ "unicode-ident", ] @@ -2086,9 +2086,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.28" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488" +checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" dependencies = [ "proc-macro2", ] @@ -2369,7 +2369,7 @@ checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.106", ] [[package]] @@ -2641,9 +2641,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.18" +version = "2.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e" +checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" dependencies = [ "proc-macro2", "quote", @@ -2686,7 +2686,7 @@ checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.106", ] [[package]] @@ -2776,9 +2776,9 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a76a9312f5ba4c2dec6b9161fdf25d87ad8a09256ccea5a556fef03c706a10f" +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" dependencies = [ "serde", ] @@ -2808,9 +2808,9 @@ dependencies = [ [[package]] name = "tray-icon" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a1ba93b51da357afb4064093d925ded565154aca52f60d5a088b826150d7a8" +checksum = "55fbbc14ea5f192218597f3cc252c4ea787c8493bae4115fd42ccbaab5704131" dependencies = [ "cocoa", "core-graphics", @@ -2927,7 +2927,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.106", "wasm-bindgen-shared", ] @@ -2961,7 +2961,7 @@ checksum = "e128beba882dd1eb6200e1dc92ae6c5dbaa4311aa7bb211ca035779e5efc39f8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.106", "wasm-bindgen-backend", "wasm-bindgen-shared", ] diff --git a/app/Cargo.toml b/app/Cargo.toml index 47bdd5a..99bfe10 100644 --- a/app/Cargo.toml +++ b/app/Cargo.toml @@ -26,10 +26,11 @@ atomic_enum = "0.2.0" portaudio = "0.7.0" platform-dirs = "0.3.0" simple-log = "1.6.0" -tray-icon = { version = "0.5.1" } +tray-icon = "0.5.1" winit = "0.28.6" image = "0.24.6" serde_yaml = "0.9.21" kira = "0.8.3" +gtk = "0.16.0" [features] diff --git a/app/src/tray.rs b/app/src/tray.rs index 87c3fc1..7ec4925 100644 --- a/app/src/tray.rs +++ b/app/src/tray.rs @@ -6,6 +6,8 @@ use tray_icon::{ }; use winit::event_loop::{ControlFlow, EventLoopBuilder}; use image; + +#[cfg(target_os="windows")] use winit::platform::windows::EventLoopBuilderExtWindows; use crate::config; @@ -42,8 +44,9 @@ pub fn init() { #[cfg(target_os = "linux")] { use tray_icon::menu::Menu; - + gtk::init().unwrap(); + let _tray_icon = TrayIconBuilder::new() .with_menu(Box::new(tray_menu)) .with_tooltip(config::TRAY_TOOLTIP) @@ -55,7 +58,7 @@ pub fn init() { } // run the event loop - let event_loop = EventLoopBuilder::new().with_any_thread(true).build(); + let event_loop = EventLoopBuilder::new().build(); let menu_channel = MenuEvent::receiver(); let tray_channel = TrayEvent::receiver();