/* * Copyright (C) 2024 Zhiyi Zhang for CodeWeavers * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifdef __WIDL__ #pragma winrt ns_prefix #endif #ifndef DO_NO_IMPORTS import "inspectable.idl"; import "asyncinfo.idl"; import "eventtoken.idl"; import "windowscontracts.idl"; import "windows.foundation.idl"; import "windows.applicationmodel.background.idl"; import "windows.applicationmodel.core.idl"; import "windows.storage.idl"; import "windows.system.idl"; #endif namespace Windows.ApplicationModel.Background { interface IBackgroundTaskInstance; runtimeclass BackgroundTaskRegistrationGroup; } namespace Windows.ApplicationModel.Core { runtimeclass CoreApplicationView; } namespace Windows.ApplicationModel.Activation { typedef enum ActivationKind ActivationKind; typedef enum ApplicationExecutionState ApplicationExecutionState; interface IActivatedEventArgs; interface IBackgroundActivatedEventArgs; interface ISplashScreen; runtimeclass BackgroundActivatedEventArgs; runtimeclass SplashScreen; declare { interface Windows.Foundation.EventHandler; interface Windows.Foundation.TypedEventHandler; interface Windows.Foundation.TypedEventHandler; interface Windows.Foundation.TypedEventHandler; } [ contract(Windows.Foundation.UniversalApiContract, 1.0) ] enum ActivationKind { Launch = 0, Search = 1, ShareTarget = 2, File = 3, Protocol = 4, FileOpenPicker = 5, FileSavePicker = 6, CachedFileUpdater = 7, ContactPicker = 8, Device = 9, PrintTaskSettings = 10, CameraSettings = 11, [contract(Windows.Foundation.UniversalApiContract, 1.0)] RestrictedLaunch = 12, [contract(Windows.Foundation.UniversalApiContract, 1.0)] AppointmentsProvider = 13, [contract(Windows.Foundation.UniversalApiContract, 1.0)] Contact = 14, [contract(Windows.Foundation.UniversalApiContract, 1.0)] LockScreenCall = 15, [contract(Windows.Foundation.UniversalApiContract, 1.0)] VoiceCommand = 16, [contract(Windows.Foundation.UniversalApiContract, 1.0)] LockScreen = 17, [contract(Windows.Foundation.UniversalApiContract, 1.0)] PickerReturned = 1000, [contract(Windows.Foundation.UniversalApiContract, 1.0)] WalletAction = 1001, [contract(Windows.Foundation.UniversalApiContract, 1.0)] PickFileContinuation = 1002, [contract(Windows.Foundation.UniversalApiContract, 1.0)] PickSaveFileContinuation = 1003, [contract(Windows.Foundation.UniversalApiContract, 1.0)] PickFolderContinuation = 1004, [contract(Windows.Foundation.UniversalApiContract, 1.0)] WebAuthenticationBrokerContinuation = 1005, [contract(Windows.Foundation.UniversalApiContract, 1.0)] WebAccountProvider = 1006, [contract(Windows.Foundation.UniversalApiContract, 1.0)] ComponentUI = 1007, [contract(Windows.Foundation.UniversalApiContract, 1.0)] ProtocolForResults = 1009, [contract(Windows.Foundation.UniversalApiContract, 1.0)] ToastNotification = 1010, [contract(Windows.Foundation.UniversalApiContract, 2.0)] Print3DWorkflow = 1011, [contract(Windows.Foundation.UniversalApiContract, 1.0)] DialReceiver = 1012, [contract(Windows.Foundation.UniversalApiContract, 2.0)] DevicePairing = 1013, [contract(Windows.Foundation.UniversalApiContract, 3.0)] UserDataAccountsProvider = 1014, [contract(Windows.Foundation.UniversalApiContract, 3.0)] FilePickerExperience = 1015, [contract(Windows.Foundation.UniversalApiContract, 4.0)] LockScreenComponent = 1016, [contract(Windows.Foundation.UniversalApiContract, 4.0)] ContactPanel = 1017, [contract(Windows.Foundation.UniversalApiContract, 5.0)] PrintWorkflowForegroundTask = 1018, [contract(Windows.Foundation.UniversalApiContract, 5.0)] GameUIProvider = 1019, [contract(Windows.Foundation.UniversalApiContract, 5.0)] StartupTask = 1020, [contract(Windows.Foundation.UniversalApiContract, 5.0)] CommandLineLaunch = 1021, [contract(Windows.Foundation.UniversalApiContract, 6.0)] BarcodeScannerProvider = 1022 }; [ contract(Windows.Foundation.UniversalApiContract, 1.0) ] enum ApplicationExecutionState { NotRunning = 0, Running = 1, Suspended = 2, Terminated = 3, ClosedByUser = 4 }; [ contract(Windows.Foundation.UniversalApiContract, 1.0), uuid(cf651713-cd08-4fd8-b697-a281b6544e2e) ] interface IActivatedEventArgs : IInspectable { [propget] HRESULT Kind([out, retval] Windows.ApplicationModel.Activation.ActivationKind *value); [propget] HRESULT PreviousExecutionState([out, retval] Windows.ApplicationModel.Activation.ApplicationExecutionState *value); [propget] HRESULT SplashScreen([out, retval] Windows.ApplicationModel.Activation.SplashScreen **value); } [ contract(Windows.Foundation.UniversalApiContract, 3.0), uuid(ab14bee0-e760-440e-a91c-44796de3a92d) ] interface IBackgroundActivatedEventArgs : IInspectable { [propget] HRESULT TaskInstance([out, retval] Windows.ApplicationModel.Background.IBackgroundTaskInstance **value); } [ contract(Windows.Foundation.UniversalApiContract, 1.0), exclusiveto(Windows.ApplicationModel.Activation.SplashScreen), uuid(ca4d975c-d4d6-43f0-97c0-0833c6391c24) ] interface ISplashScreen : IInspectable { [propget] HRESULT ImageLocation([out, retval] Windows.Foundation.Rect *value); [eventadd] HRESULT Dismissed([in] Windows.Foundation.TypedEventHandler *handler, [out, retval] EventRegistrationToken *cookie); [eventremove] HRESULT Dismissed([in] EventRegistrationToken cookie); } [ contract(Windows.Foundation.UniversalApiContract, 3.0), marshaling_behavior(agile) ] runtimeclass BackgroundActivatedEventArgs { [default] interface Windows.ApplicationModel.Activation.IBackgroundActivatedEventArgs; } [ contract(Windows.Foundation.UniversalApiContract, 1.0) ] runtimeclass SplashScreen { [default] interface Windows.ApplicationModel.Activation.ISplashScreen; } }