diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 5469fdf..a6dc43b 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -56,6 +56,7 @@ windows = { version = "0.61", features = [ "Win32_System_Power", # P5-46 no-sleep "Win32_System_WinRT", # P5-43 SMTC interop "Win32_UI_Shell", + "Win32_UI_Shell_Common", # P5-36 jump list (IObjectArray/IObjectCollection) "Win32_UI_Shell_PropertiesSystem", # P5-36 jump list (IPropertyStore/PKEY_Title) "Win32_UI_WindowsAndMessaging", ] } diff --git a/src-tauri/src/native/jumplist.rs b/src-tauri/src/native/jumplist.rs index a062f9a..981c370 100644 --- a/src-tauri/src/native/jumplist.rs +++ b/src-tauri/src/native/jumplist.rs @@ -46,11 +46,13 @@ pub fn set_jump_list(app: AppHandle, items: Vec) -> Result<(), String> Win32::{ Storage::EnhancedStorage::PKEY_Title, System::Com::{ - CoCreateInstance, CoInitializeEx, CoUninitialize, IObjectArray, - IObjectCollection, StructuredStorage::PROPVARIANT, CLSCTX_INPROC_SERVER, - COINIT_APARTMENTTHREADED, + CoCreateInstance, CoInitializeEx, CoUninitialize, + StructuredStorage::PROPVARIANT, CLSCTX_INPROC_SERVER, COINIT_APARTMENTTHREADED, }, UI::Shell::{ + // IObjectArray/IObjectCollection live in Shell::Common + // (feature Win32_UI_Shell_Common), NOT Shell or System::Com. + Common::{IObjectArray, IObjectCollection}, DestinationList, EnumerableObjectCollection, ICustomDestinationList, IShellLinkW, PropertiesSystem::IPropertyStore, ShellLink, },