From 87950f623bccf4756a6d52c82c4443f6beda15dc Mon Sep 17 00:00:00 2001 From: Jared Vititoe Date: Thu, 2 Jul 2026 08:49:07 -0400 Subject: [PATCH] fix(native): jump list IObjectArray/IObjectCollection are in Shell::Common Repairs the CI Windows compile (first build to reach the Rust after the web/ case-collision failures cleared): these two COM interfaces live in windows::Win32::UI::Shell::Common (feature Win32_UI_Shell_Common), not System::Com nor Shell. Added the feature; corrected the import. Co-Authored-By: Claude Opus 4.8 --- src-tauri/Cargo.toml | 1 + src-tauri/src/native/jumplist.rs | 8 +++++--- 2 files changed, 6 insertions(+), 3 deletions(-) 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, },