diff --git a/Cargo.lock b/Cargo.lock index a8eb92c..37a15ff 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -215,6 +215,12 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "const-sha1" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb58b6451e8c2a812ad979ed1d83378caa5e927eef2622017a45f251457c2c9d" + [[package]] name = "const_fn" version = "0.4.5" @@ -714,6 +720,7 @@ version = "0.1.0" dependencies = [ "anyhow", "cc", + "lazy_static", "lazycell", "log", "notify-rust", @@ -721,6 +728,7 @@ dependencies = [ "serde_json", "thiserror", "widestring", + "winrt-notification 0.3.1", ] [[package]] @@ -1258,7 +1266,7 @@ checksum = "95a3a5dd7b4b415b112ce0fae1988f3e6dee90a96918bf3950b5f2289b19a04b" dependencies = [ "dbus", "mac-notification-sys", - "winrt-notification", + "winrt-notification 0.2.2", ] [[package]] @@ -1745,6 +1753,12 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527" +[[package]] +name = "squote" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fccf17fd09e2455ea796d2ad267b64fa2c5cbd8701b2a93b555d2aa73449f7d" + [[package]] name = "string_cache" version = "0.8.1" @@ -1782,6 +1796,15 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ca6e4730f517e041e547ffe23d29daab8de6b73af4b6ae2a002108169f5e7da" +[[package]] +name = "strum" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7318c509b5ba57f18533982607f24070a55d353e90d4cae30c467cdb2ad5ac5c" +dependencies = [ + "strum_macros 0.20.1", +] + [[package]] name = "strum_macros" version = "0.8.0" @@ -1792,6 +1815,18 @@ dependencies = [ "syn 0.11.11", ] +[[package]] +name = "strum_macros" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee8bc6b87a5112aeeab1f4a9f7ab634fe6cbefc4850006df31267f4cfb9e3149" +dependencies = [ + "heck", + "proc-macro2", + "quote 1.0.9", + "syn 1.0.67", +] + [[package]] name = "syn" version = "0.11.11" @@ -2077,6 +2112,77 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "426842497696b65fbfc575691d94ef65befb248ed1a8c4361e293c724e7ebe61" +dependencies = [ + "const-sha1", + "windows_gen", + "windows_macros", + "windows_winmd", +] + +[[package]] +name = "windows_gen" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ac8f0f06b647f42ee5459a8e1ffe41795647582c5926ec3fa363a91aad7d77" +dependencies = [ + "proc-macro2", + "quote 1.0.9", + "squote", + "syn 1.0.67", + "windows_gen_macros", + "windows_winmd", +] + +[[package]] +name = "windows_gen_macros" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23eac2169a20173b890c496f9e0e1149a92ef29fe4ba96026b72eec363b993f9" +dependencies = [ + "proc-macro2", + "quote 1.0.9", + "syn 1.0.67", +] + +[[package]] +name = "windows_macros" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9edc57c944eec106c7823b425ab0fd9f90163489e50a4df747f65fcf9030e1fb" +dependencies = [ + "proc-macro2", + "quote 1.0.9", + "squote", + "syn 1.0.67", + "windows_gen", + "windows_winmd", +] + +[[package]] +name = "windows_winmd" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16d44527d04c9713312ed598f5d6ce3c453754dbfc03ddc376615be4415ffc88" +dependencies = [ + "windows_winmd_macros", +] + +[[package]] +name = "windows_winmd_macros" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2353f43f512938450614a176abf2b6cb31ac3b84fd71c88470fee571303e3f36" +dependencies = [ + "proc-macro2", + "quote 1.0.9", + "syn 1.0.67", +] + [[package]] name = "winreg" version = "0.9.0" @@ -2110,11 +2216,22 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c31a65da50d792c6f9bd2e3216249566c4fb1d2d34f9b7d2d66d2e93f62a242" dependencies = [ - "strum", - "strum_macros", + "strum 0.8.0", + "strum_macros 0.8.0", "winapi 0.3.9", "winrt", - "xml-rs", + "xml-rs 0.6.1", +] + +[[package]] +name = "winrt-notification" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5ee9845acda665033013f93baec4f71ac0e60a391b530a5a83bdb966c1807ca" +dependencies = [ + "strum 0.20.0", + "windows", + "xml-rs 0.8.3", ] [[package]] @@ -2136,6 +2253,12 @@ dependencies = [ "bitflags 0.9.1", ] +[[package]] +name = "xml-rs" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b07db065a5cf61a7e4ba64f29e67db906fb1787316516c4e6e5ff0fea1efcd8a" + [[package]] name = "xml5ever" version = "0.16.1" diff --git a/scripts/resources/windows/setupscript.iss b/scripts/resources/windows/setupscript.iss index 3b4bfaf..776236e 100644 --- a/scripts/resources/windows/setupscript.iss +++ b/scripts/resources/windows/setupscript.iss @@ -6,6 +6,7 @@ #define MyAppPublisher "Federico Terzi" #define MyAppURL "{{{app_url}}}" #define MyAppExeName "espansod.exe" +#define MyAppUserModelID "{{5E3B6C0F-1A4D-45C4-8872-D8174702101A}" [Setup] ; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications. @@ -43,7 +44,7 @@ Source: "{{{cli_helper}}}"; DestDir: "{app}"; Flags: ignoreversion ; NOTE: Don't use "Flags: ignoreversion" on any shared system files [Icons] -Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Parameters: "launcher"; IconFilename: "{app}\icon.ico"; +Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Parameters: "launcher"; AppUserModelID: "{#MyAppUserModelID}"; IconFilename: "{app}\icon.ico"; ;Name: "{userstartup}\espanso"; Filename: "{app}\espansod.exe"; Parameters: "launcher"; Tasks:StartMenuEntry; ;[Tasks]