From: Biswapriyo Nath nathbappai@gmail.com
Required for https://github.com/mingw-w64/mingw-w64/issues/84 --- include/windows.applicationmodel.core.idl | 5 + include/windows.applicationmodel.idl | 9 + include/windows.storage.idl | 5 + include/windows.system.idl | 294 ++++++++++++++++++++++ include/windows.ui.core.idl | 6 + 5 files changed, 319 insertions(+)
diff --git a/include/windows.applicationmodel.core.idl b/include/windows.applicationmodel.core.idl index 4d3504ede68..a97f6c1cb6f 100644 --- a/include/windows.applicationmodel.core.idl +++ b/include/windows.applicationmodel.core.idl @@ -61,6 +61,11 @@ namespace Windows.Foundation { interface IGetActivationFactory; }
+namespace Windows.System { + runtimeclass DispatcherQueue; + runtimeclass User; +} + namespace Windows.UI.Core { runtimeclass CoreDispatcher; runtimeclass CoreWindow; diff --git a/include/windows.applicationmodel.idl b/include/windows.applicationmodel.idl index 387a77ebef4..305d4d32b9c 100644 --- a/include/windows.applicationmodel.idl +++ b/include/windows.applicationmodel.idl @@ -32,6 +32,15 @@ namespace Windows.ApplicationModel.Core { runtimeclass AppListEntry; }
+namespace Windows.Storage { + runtimeclass StorageFolder; +} + +namespace Windows.System { + typedef enum ProcessorArchitecture ProcessorArchitecture; + runtimeclass User; +} + namespace Windows.ApplicationModel { typedef enum AppExecutionContext AppExecutionContext; typedef struct PackageVersion PackageVersion; diff --git a/include/windows.storage.idl b/include/windows.storage.idl index 483fc5a957e..7f07f2312f3 100644 --- a/include/windows.storage.idl +++ b/include/windows.storage.idl @@ -31,6 +31,10 @@ import "windows.storage.search.idl"; import "windows.storage.streams.idl"; import "windows.system.idl";
+namespace Windows.System { + runtimeclass User; +} + namespace Windows.Storage { typedef enum ApplicationDataCreateDisposition ApplicationDataCreateDisposition; typedef enum ApplicationDataLocality ApplicationDataLocality; @@ -84,6 +88,7 @@ namespace Windows.Storage { interface Windows.Foundation.Collections.IVectorView<Windows.Storage.IStorageItem *>; interface Windows.Foundation.Collections.IVectorView<Windows.Storage.StorageFile *>; interface Windows.Foundation.Collections.IVectorView<Windows.Storage.StorageFolder *>; + interface Windows.Foundation.Collections.IVector<Windows.Storage.IStorageItem *>; interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Foundation.Collections.IVectorView<Windows.Storage.IStorageItem *> *>; interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Foundation.Collections.IVectorView<Windows.Storage.StorageFile *> *>; interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Foundation.Collections.IVectorView<Windows.Storage.StorageFolder *> *>; diff --git a/include/windows.system.idl b/include/windows.system.idl index 3a349edd4f8..af775795d61 100644 --- a/include/windows.system.idl +++ b/include/windows.system.idl @@ -25,10 +25,21 @@ import "asyncinfo.idl"; import "eventtoken.idl"; import "windowscontracts.idl"; import "windows.foundation.idl"; +import "windows.applicationmodel.idl"; +import "windows.storage.idl"; + +namespace Windows.Storage { + interface IStorageFile; + interface IStorageFolder; + interface IStorageItem; +}
namespace Windows.System { typedef enum DispatcherQueuePriority DispatcherQueuePriority; + typedef enum LaunchQuerySupportStatus LaunchQuerySupportStatus; + typedef enum LaunchQuerySupportType LaunchQuerySupportType; + typedef enum LaunchUriStatus LaunchUriStatus; typedef enum ProcessorArchitecture ProcessorArchitecture; typedef enum VirtualKey VirtualKey; typedef enum VirtualKeyModifiers VirtualKeyModifiers; @@ -40,6 +51,17 @@ namespace Windows.System interface IDispatcherQueueShutdownStartingEventArgs; interface IDispatcherQueueStatics; interface IDispatcherQueueTimer; + interface IFolderLauncherOptions; + interface ILaunchUriResult; + interface ILauncherOptions; + interface ILauncherOptions2; + interface ILauncherOptions3; + interface ILauncherOptions4; + interface ILauncherStatics; + interface ILauncherStatics2; + interface ILauncherStatics3; + interface ILauncherStatics4; + interface ILauncherStatics5; interface IUser; interface IUserStatics; interface IUserChangedEventArgs; @@ -49,11 +71,21 @@ namespace Windows.System runtimeclass DispatcherQueueController; runtimeclass DispatcherQueueShutdownStartingEventArgs; runtimeclass DispatcherQueueTimer; + runtimeclass FolderLauncherOptions; + runtimeclass LaunchUriResult; + runtimeclass Launcher; + runtimeclass LauncherOptions; runtimeclass User; runtimeclass UserChangedEventArgs;
declare { + interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.System.LaunchQuerySupportStatus>; + interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.System.LaunchUriResult *>; + interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.System.LaunchUriStatus>; + interface Windows.Foundation.IAsyncOperation<Windows.System.LaunchQuerySupportStatus>; + interface Windows.Foundation.IAsyncOperation<Windows.System.LaunchUriResult *>; + interface Windows.Foundation.IAsyncOperation<Windows.System.LaunchUriStatus>; interface Windows.Foundation.TypedEventHandler<Windows.System.DispatcherQueue *, IInspectable *>; interface Windows.Foundation.TypedEventHandler<Windows.System.DispatcherQueue *, Windows.System.DispatcherQueueShutdownStartingEventArgs *>; interface Windows.Foundation.TypedEventHandler<Windows.System.DispatcherQueueTimer *, IInspectable *>; @@ -69,6 +101,38 @@ namespace Windows.System High = 10, };
+ [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum LaunchQuerySupportStatus + { + Available = 0, + AppNotInstalled = 1, + AppUnavailable = 2, + NotSupported = 3, + Unknown = 4, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum LaunchQuerySupportType + { + Uri = 0, + UriForResults = 1, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum LaunchUriStatus + { + Success = 0, + AppUnavailable = 1, + ProtocolUnavailable = 2, + Unknown = 3, + }; + [ contract(Windows.Foundation.UniversalApiContract, 1.0) ] @@ -411,6 +475,186 @@ namespace Windows.System [eventremove] HRESULT Tick([in] EventRegistrationToken token); }
+ [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.System.FolderLauncherOptions), + uuid(bb91c27d-6b87-432a-bd04-776c6f5fb2ab) + ] + interface IFolderLauncherOptions : IInspectable + { + [propget] HRESULT ItemsToSelect( + [out, retval] Windows.Foundation.Collections.IVector<Windows.Storage.IStorageItem *> **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.System.LaunchUriResult), + uuid(ec27a8df-f6d5-45ca-913a-70a40c5c8221) + ] + interface ILaunchUriResult : IInspectable + { + [propget] HRESULT Status([out, retval] Windows.System.LaunchUriStatus *value); + [propget] HRESULT Result([out, retval] Windows.Foundation.Collections.ValueSet **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.System.Launcher), + uuid(277151c3-9e3e-42f6-91a4-5dfdeb232451) + ] + interface ILauncherStatics : IInspectable + { + [overload("LaunchFileAsync")] HRESULT LaunchFileAsync( + [in] Windows.Storage.IStorageFile *file, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("LaunchFileAsync")] HRESULT LaunchFileWithOptionsAsync( + [in] Windows.Storage.IStorageFile *file, + [in] Windows.System.LauncherOptions *options, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("LaunchUriAsync")] HRESULT LaunchUriAsync( + [in] Windows.Foundation.Uri *uri, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("LaunchUriAsync")] HRESULT LaunchUriWithOptionsAsync( + [in] Windows.Foundation.Uri *uri, + [in] Windows.System.LauncherOptions *options, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.System.Launcher), + uuid(59ba2fbb-24cb-4c02-a4c4-8294569d54f1) + ] + interface ILauncherStatics2 : IInspectable + { + [overload("LaunchUriForResultsAsync")] HRESULT LaunchUriForResultsAsync( + [in] Windows.Foundation.Uri *uri, + [in] Windows.System.LauncherOptions *options, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchUriResult *> **operation); + [overload("LaunchUriForResultsAsync")] HRESULT LaunchUriForResultsWithDataAsync( + [in] Windows.Foundation.Uri *uri, + [in] Windows.System.LauncherOptions *options, + [in] Windows.Foundation.Collections.ValueSet *input_data, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchUriResult *> **operation); + [overload("LaunchUriAsync")] HRESULT LaunchUriWithDataAsync( + [in] Windows.Foundation.Uri *uri, + [in] Windows.System.LauncherOptions *options, + [in] Windows.Foundation.Collections.ValueSet *input_data, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("QueryUriSupportAsync")] HRESULT QueryUriSupportAsync( + [in] Windows.Foundation.Uri *uri, + [in] Windows.System.LaunchQuerySupportType launch_query_support_type, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchQuerySupportStatus> **operation); + [overload("QueryUriSupportAsync")] HRESULT QueryUriSupportWithPackageFamilyNameAsync( + [in] Windows.Foundation.Uri *uri, + [in] Windows.System.LaunchQuerySupportType launch_query_support_type, + [in] HSTRING package_family_name, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchQuerySupportStatus> **operation); + [overload("QueryFileSupportAsync")] HRESULT QueryFileSupportAsync( + [in] Windows.Storage.StorageFile *file, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchQuerySupportStatus> **operation); + [overload("QueryFileSupportAsync")] HRESULT QueryFileSupportWithPackageFamilyNameAsync( + [in] Windows.Storage.StorageFile *file, + [in] HSTRING package_family_name, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchQuerySupportStatus> **operation); + [overload("FindUriSchemeHandlersAsync")] HRESULT FindUriSchemeHandlersAsync( + [in] HSTRING scheme, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.AppInfo *> *> **operation); + [overload("FindUriSchemeHandlersAsync")] HRESULT FindUriSchemeHandlersWithLaunchUriTypeAsync( + [in] HSTRING scheme, + [in] Windows.System.LaunchQuerySupportType launch_query_support_type, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.AppInfo *> *> **operation); + HRESULT FindFileHandlersAsync( + [in] HSTRING extension, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.AppInfo *> *> **operation); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.System.Launcher), + uuid(234261a8-9db3-4683-aa42-dc6f51d33847) + ] + interface ILauncherStatics3 : IInspectable + { + [overload("LaunchFolderAsync")] HRESULT LaunchFolderAsync( + [in] Windows.Storage.IStorageFolder *folder, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("LaunchFolderAsync")] HRESULT LaunchFolderWithOptionsAsync( + [in] Windows.Storage.IStorageFolder *folder, + [in] Windows.System.FolderLauncherOptions *options, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 3.0), + exclusiveto(Windows.System.Launcher), + uuid(b9ec819f-b5a5-41c6-b3b3-dd1b3178bcf2) + ] + interface ILauncherStatics4 : IInspectable + { + [overload("QueryAppUriSupportAsync")] HRESULT QueryAppUriSupportAsync( + [in] Windows.Foundation.Uri *uri, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchQuerySupportStatus> **operation); + [overload("QueryAppUriSupportAsync")] HRESULT QueryAppUriSupportWithPackageFamilyNameAsync( + [in] Windows.Foundation.Uri *uri, + [in] HSTRING package_family_name, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchQuerySupportStatus> **operation); + HRESULT FindAppUriHandlersAsync( + [in] Windows.Foundation.Uri *uri, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.AppInfo *> *> **operation); + [overload("LaunchUriForUserAsync")] HRESULT LaunchUriForUserAsync( + [in] Windows.System.User *user, + [in] Windows.Foundation.Uri *uri, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchUriStatus> **operation); + [overload("LaunchUriForUserAsync")] HRESULT LaunchUriWithOptionsForUserAsync( + [in] Windows.System.User *user, + [in] Windows.Foundation.Uri *uri, + [in] Windows.System.LauncherOptions *options, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchUriStatus> **operation); + [overload("LaunchUriForUserAsync")] HRESULT LaunchUriWithDataForUserAsync( + [in] Windows.System.User *user, + [in] Windows.Foundation.Uri *uri, + [in] Windows.System.LauncherOptions *options, + [in] Windows.Foundation.Collections.ValueSet *input_data, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchUriStatus> **operation); + [overload("LaunchUriForResultsForUserAsync")] HRESULT LaunchUriForResultsForUserAsync( + [in] Windows.System.User *user, + [in] Windows.Foundation.Uri *uri, + [in] Windows.System.LauncherOptions *options, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchUriResult *> **operation); + [overload("LaunchUriForResultsForUserAsync")] HRESULT LaunchUriForResultsWithDataForUserAsync( + [in] Windows.System.User *user, + [in] Windows.Foundation.Uri *uri, + [in] Windows.System.LauncherOptions *options, + [in] Windows.Foundation.Collections.ValueSet *input_data, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.System.LaunchUriResult *> **operation); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 7.0), + exclusiveto(Windows.System.Launcher), + uuid(5b24ef84-d895-5fea-9153-1ac49aed9ba9) + ] + interface ILauncherStatics5 : IInspectable + { + [overload("LaunchFolderPathAsync")] HRESULT LaunchFolderPathAsync( + [in] HSTRING path, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("LaunchFolderPathAsync")] HRESULT LaunchFolderPathWithOptionsAsync( + [in] HSTRING path, + [in] Windows.System.FolderLauncherOptions *options, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("LaunchFolderPathForUserAsync")] HRESULT LaunchFolderPathForUserAsync( + [in] Windows.System.User *user, + [in] HSTRING path, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("LaunchFolderPathForUserAsync")] HRESULT LaunchFolderPathWithOptionsForUserAsync( + [in] Windows.System.User *user, + [in] HSTRING path, + [in] Windows.System.FolderLauncherOptions *options, + [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + } + [ contract(Windows.Foundation.UniversalApiContract, 1.0), exclusiveto(Windows.System.UserChangedEventArgs), @@ -462,6 +706,56 @@ namespace Windows.System [default] interface Windows.System.IDispatcherQueueTimer; }
+ [ + activatable(Windows.Foundation.UniversalApiContract, 1.0), + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass FolderLauncherOptions + { + [default] interface Windows.System.IFolderLauncherOptions; + interface Windows.System.ILauncherViewOptions; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile) + ] + runtimeclass LaunchUriResult + { + [default] interface Windows.System.ILaunchUriResult; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(standard), + static(Windows.System.ILauncherStatics, Windows.Foundation.UniversalApiContract, 1.0), + static(Windows.System.ILauncherStatics2, Windows.Foundation.UniversalApiContract, 1.0), + static(Windows.System.ILauncherStatics3, Windows.Foundation.UniversalApiContract, 1.0), + static(Windows.System.ILauncherStatics4, Windows.Foundation.UniversalApiContract, 3.0), + static(Windows.System.ILauncherStatics5, Windows.Foundation.UniversalApiContract, 7.0), + threading(both) + ] + runtimeclass Launcher + { + } + + [ + activatable(Windows.Foundation.UniversalApiContract, 1.0), + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass LauncherOptions + { + interface Windows.System.ILauncherOptions2; + [default] interface Windows.System.ILauncherOptions; + [contract(Windows.Foundation.UniversalApiContract, 3.0)] interface Windows.System.ILauncherOptions3; + [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.System.ILauncherOptions4; + interface Windows.System.ILauncherViewOptions; + } + [ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), diff --git a/include/windows.ui.core.idl b/include/windows.ui.core.idl index e6b4ec5007d..51e21ed8641 100644 --- a/include/windows.ui.core.idl +++ b/include/windows.ui.core.idl @@ -35,6 +35,12 @@ import "windows.ui.input.idl"; /* import "windows.ui.popups.idl"; */ #endif
+namespace Windows.System { + runtimeclass DispatcherQueue; + typedef enum VirtualKey VirtualKey; + typedef enum VirtualKeyModifiers VirtualKeyModifiers; +} + namespace Windows.UI.Input { runtimeclass PointerPoint;
@rbernon could you provide any hint to troubleshoot the issue?