headers: Import Wine version 7dcdd7a6549793e8 Signed-off-by: Jacek Caban <jacek@codeweavers.com>
diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am index 888c20a..9207568 100644 --- a/mingw-w64-headers/Makefile.am +++ b/mingw-w64-headers/Makefile.am
@@ -297,6 +297,7 @@ include/windows.applicationmodel.idl \ include/windows.data.json.idl \ include/windows.data.xml.dom.idl \ + include/windows.devices.bluetooth.advertisement.idl \ include/windows.devices.bluetooth.genericattributeprofile.idl \ include/windows.devices.bluetooth.idl \ include/windows.devices.bluetooth.rfcomm.idl \ @@ -327,13 +328,16 @@ include/windows.management.deployment.idl \ include/windows.media.capture.idl \ include/windows.media.closedcaptioning.idl \ + include/windows.media.core.idl \ include/windows.media.devices.idl \ include/windows.media.effects.idl \ include/windows.media.faceanalysis.idl \ include/windows.media.idl \ + include/windows.media.mediaproperties.idl \ include/windows.media.render.idl \ include/windows.media.speechrecognition.idl \ include/windows.media.speechsynthesis.idl \ + include/windows.media.transcoding.idl \ include/windows.networking.connectivity.idl \ include/windows.networking.idl \ include/windows.networking.sockets.idl \ @@ -365,6 +369,7 @@ include/windows.ui.notifications.idl \ include/windows.ui.viewmanagement.core.idl \ include/windows.ui.viewmanagement.idl \ + include/windows.ui.windowmanagement.idl \ include/windows.ui.xaml.hosting.desktopwindowxamlsource.idl \ include/windows.ui.xaml.idl \ include/windows.ui.xaml.interop.idl \
diff --git a/mingw-w64-headers/include/dmusicf.h b/mingw-w64-headers/include/dmusicf.h index 4e22b1b..624803a 100644 --- a/mingw-w64-headers/include/dmusicf.h +++ b/mingw-w64-headers/include/dmusicf.h
@@ -429,7 +429,7 @@ MUSIC_TIME mtTime; MUSIC_TIME mtDuration; DWORD dwPChannel; - short nOffset; + short nOffset; BYTE bStatus; BYTE bByte1; BYTE bByte2; @@ -489,7 +489,7 @@ struct _DMUS_IO_STYLE { DMUS_IO_TIMESIG timeSig; - double dblTempo; + double dblTempo; }; struct _DMUS_IO_VERSION { @@ -503,6 +503,7 @@ BYTE bGrooveTop; WORD wEmbellishment; WORD wNbrMeasures; + /* DX8 */ BYTE bDestGrooveBottom; BYTE bDestGrooveTop; DWORD dwFlags; @@ -516,6 +517,7 @@ BYTE bPlayModeFlags; BYTE bInvertUpper; BYTE bInvertLower; + /* DX8 */ BYTE bPad[3]; DWORD dwFlags; }; @@ -527,8 +529,9 @@ BYTE bSubChordLevel; BYTE bPriority; BYTE bRandomVariation; + /* DX8 */ WORD wPad; - DWORD dwPChannel; + DWORD dwPChannel; /* Replaces wLogicalPartID */ }; @@ -600,6 +603,7 @@ MUSIC_TIME mtTime; WORD wMeasure; BYTE bBeat; + /* DX8 */ BYTE bFlags; }; @@ -619,6 +623,7 @@ BYTE bCommand; BYTE bGrooveLevel; BYTE bGrooveRange; + /* DX8 */ BYTE bRepeatMode; }; @@ -673,6 +678,7 @@ BYTE bVolume; short nTranspose; DWORD dwChannelPriority; + /* DX8 */ short nPitchBendRange; }; @@ -707,6 +713,7 @@ DWORD dwLoopStart; DWORD dwLoopEnd; DWORD dwFlags; + /* DX9 */ WORD wVolumeRange; WORD wPitchRange; };
diff --git a/mingw-w64-headers/include/windows.data.json.idl b/mingw-w64-headers/include/windows.data.json.idl index c37c0a5..c38e592 100644 --- a/mingw-w64-headers/include/windows.data.json.idl +++ b/mingw-w64-headers/include/windows.data.json.idl
@@ -132,7 +132,7 @@ activatable(Windows.Foundation.UniversalApiContract, 1.0), contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), - static(Windows.Data.Json.IJsonArrayStatics, Windows.Foundation.UniversalApiContract, 1.0), + /* static(Windows.Data.Json.IJsonArrayStatics, Windows.Foundation.UniversalApiContract, 1.0), */ threading(both) ] runtimeclass JsonArray @@ -148,7 +148,7 @@ activatable(Windows.Foundation.UniversalApiContract, 1.0), contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), - static(Windows.Data.Json.IJsonObjectStatics, Windows.Foundation.UniversalApiContract, 1.0), + /* static(Windows.Data.Json.IJsonObjectStatics, Windows.Foundation.UniversalApiContract, 1.0), */ threading(both) ] runtimeclass JsonObject @@ -165,7 +165,7 @@ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), static(Windows.Data.Json.IJsonValueStatics, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Data.Json.IJsonValueStatics2, Windows.Foundation.UniversalApiContract, 1.0), + /* static(Windows.Data.Json.IJsonValueStatics2, Windows.Foundation.UniversalApiContract, 1.0), */ threading(both) ] runtimeclass JsonValue
diff --git a/mingw-w64-headers/include/windows.devices.bluetooth.advertisement.idl b/mingw-w64-headers/include/windows.devices.bluetooth.advertisement.idl new file mode 100644 index 0000000..a150ea9 --- /dev/null +++ b/mingw-w64-headers/include/windows.devices.bluetooth.advertisement.idl
@@ -0,0 +1,522 @@ +/* + * Copyright 2025 Vibhav Pant + * + * 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.storage.streams.idl"; +import "windows.devices.bluetooth.idl"; +#endif + +namespace Windows.Devices.Bluetooth { + typedef enum BluetoothAddressType BluetoothAddressType; + typedef enum BluetoothError BluetoothError; + + runtimeclass BluetoothSignalStrengthFilter; +} + +namespace Windows.Devices.Bluetooth.Advertisement { + typedef enum BluetoothLEAdvertisementFlags BluetoothLEAdvertisementFlags; + typedef enum BluetoothLEAdvertisementWatcherStatus BluetoothLEAdvertisementWatcherStatus; + typedef enum BluetoothLEScanningMode BluetoothLEScanningMode; + typedef enum BluetoothLEAdvertisementType BluetoothLEAdvertisementType; + typedef enum BluetoothLEAdvertisementPhyType BluetoothLEAdvertisementPhyType; + + interface IBluetoothLEManufacturerData; + interface IBluetoothLEAdvertisementDataSection; + interface IBluetoothLEAdvertisementDataSectionFactory; + interface IBluetoothLEManufacturerData; + interface IBluetoothLEManufacturerDataFactory; + interface IBluetoothLEAdvertisementWatcher; + interface IBluetoothLEAdvertisementWatcher2; + interface IBluetoothLEAdvertisementWatcher3; + interface IBluetoothLEAdvertisementFilter; + interface IBluetoothLEAdvertisementReceivedEventArgs; + interface IBluetoothLEAdvertisementReceivedEventArgs2; + interface IBluetoothLEAdvertisementReceivedEventArgs3; + interface IBluetoothLEAdvertisementWatcherStoppedEventArgs; + interface IBluetoothLEAdvertisementBytePattern; + interface IBluetoothLEAdvertisementBytePatternFactory; + interface IBluetoothLEAdvertisementScanParameters; + interface IBluetoothLEAdvertisementScanParametersStatics; + + + runtimeclass BluetoothLEAdvertisement; + runtimeclass BluetoothLEManufacturerData; + runtimeclass BluetoothLEAdvertisementDataSection; + runtimeclass BluetoothLEManufacturerData; + runtimeclass BluetoothLEAdvertisementWatcher; + runtimeclass BluetoothLEAdvertisementFilter; + runtimeclass BluetoothLEAdvertisementReceivedEventArgs; + runtimeclass BluetoothLEAdvertisementWatcherStoppedEventArgs; + runtimeclass BluetoothLEAdvertisementBytePattern; + runtimeclass BluetoothLEAdvertisementScanParameters; + + declare { + interface Windows.Foundation.IReference<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementFlags>; + interface Windows.Foundation.Collections.IVector<GUID>; + interface Windows.Foundation.Collections.IVector<Windows.Devices.Bluetooth.Advertisement.BluetoothLEManufacturerData *>; + interface Windows.Foundation.Collections.IVector<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementDataSection *>; + interface Windows.Foundation.Collections.IVector<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementBytePattern *>; + interface Windows.Foundation.Collections.IVectorView<GUID>; + interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.Advertisement.BluetoothLEManufacturerData *>; + interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementDataSection *>; + interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementBytePattern *>; + interface Windows.Foundation.Collections.IIterable<GUID>; + interface Windows.Foundation.Collections.IIterable<Windows.Devices.Bluetooth.Advertisement.BluetoothLEManufacturerData *>; + interface Windows.Foundation.Collections.IIterable<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementDataSection *>; + interface Windows.Foundation.Collections.IIterable<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementBytePattern *>; + interface Windows.Foundation.Collections.IIterator<GUID>; + interface Windows.Foundation.Collections.IIterator<Windows.Devices.Bluetooth.Advertisement.BluetoothLEManufacturerData *>; + interface Windows.Foundation.Collections.IIterator<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementDataSection *>; + interface Windows.Foundation.Collections.IIterator<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementBytePattern *>; + interface Windows.Foundation.TypedEventHandler<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcher *, Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementReceivedEventArgs *>; + interface Windows.Foundation.TypedEventHandler<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcher *, Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcherStoppedEventArgs *>; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + flags + ] + enum BluetoothLEAdvertisementFlags + { + None = 0x00, + LimitedDiscoverableMode = 0x01, + GeneralDiscoverableMode = 0x02, + ClassicNotSupported = 0x04, + DualModeControllerCapable = 0x08, + DualModeHostCapable = 0x10, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + ] + enum BluetoothLEAdvertisementPublisherStatus + { + Created = 0, + Waiting = 1, + Started = 2, + Stopping = 3, + Stopped = 4, + Aborted = 5, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + ] + enum BluetoothLEAdvertisementType + { + ConnectableUndirected = 0, + ConnectableDirected = 1, + ScannableUndirected = 2, + NonConnectableUndirected = 3, + ScanResponse = 4, + [contract(Windows.Foundation.UniversalApiContract, 10.0)] + Extended = 5, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + ] + enum BluetoothLEAdvertisementWatcherStatus + { + Created = 0, + Started = 1, + Stopping = 2, + Stopped = 3, + Aborted = 4, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + ] + enum BluetoothLEScanningMode + { + Passive = 0, + Active = 1, + [contract(Windows.Foundation.UniversalApiContract, 10.0)] + None = 2, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 19.0), + ] + enum BluetoothLEAdvertisementPhyType + { + Unspecified = 0, + Uncoded1MPhy = 1, + Uncoded2MPhy = 2, + CodedPhy = 3, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisement), + uuid(066fb2b7-33d1-4e7d-8367-cf81d0f79653) + ] + interface IBluetoothLEAdvertisement : IInspectable + { + [propget] HRESULT Flags([out, retval] Windows.Foundation.IReference<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementFlags> **value); + [propput] HRESULT Flags([in] Windows.Foundation.IReference<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementFlags> *value); + [propget] HRESULT LocalName([out, retval] HSTRING *value); + [propput] HRESULT LocalName([in] HSTRING value); + [propget] HRESULT ServiceUuids([out, retval] Windows.Foundation.Collections.IVector<GUID> **value); + [propget] HRESULT ManufacturerData([out, retval] Windows.Foundation.Collections.IVector<Windows.Devices.Bluetooth.Advertisement.BluetoothLEManufacturerData *> **value); + [propget] HRESULT DataSections([out, retval] Windows.Foundation.Collections.IVector<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementDataSection *> **value); + HRESULT GetManufacturerDataByCompanyId([in] UINT16 id, [out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.Advertisement.BluetoothLEManufacturerData *> **value); + HRESULT GetSectionsByType([in] BYTE type, [out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementDataSection *> **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass BluetoothLEAdvertisement + { + [default] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisement; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementDataSection), + uuid(d7213314-3a43-40f9-b6f0-92bfefc34ae3) + ] + interface IBluetoothLEAdvertisementDataSection : IInspectable + { + [propget] HRESULT DataType([out, retval] BYTE *value); + [propput] HRESULT DataType([in] BYTE value); + [propget] HRESULT Data([out, retval] Windows.Storage.Streams.IBuffer **value); + [propput] HRESULT Data([in] Windows.Storage.Streams.IBuffer *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementDataSection), + uuid(e7a40942-a845-4045-bf7e-3e9971db8a6b) + ] + interface IBluetoothLEAdvertisementDataSectionFactory : IInspectable + { + HRESULT Create([in] BYTE type, [in] Windows.Storage.Streams.IBuffer *data, + [out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementDataSection **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementDataSectionFactory, Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass BluetoothLEAdvertisementDataSection + { + [default] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementDataSection; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEManufacturerData), + uuid(912dba18-6963-4533-b061-4694dafb34e5) + ] + interface IBluetoothLEManufacturerData : IInspectable + { + [propget] HRESULT CompanyId([out, retval] UINT16 *value); + [propput] HRESULT CompanyId([in] UINT16 value); + [propget] HRESULT Data([out, retval] Windows.Storage.Streams.IBuffer **value); + [propput] HRESULT Data([in] Windows.Storage.Streams.IBuffer *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEManufacturerData), + uuid(c09b39f8-319a-441e-8de5-66a81e877a6c) + ] + interface IBluetoothLEManufacturerDataFactory : IInspectable + { + HRESULT Create([in] UINT16 id, [in] Windows.Storage.Streams.IBuffer *data, + [out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEManufacturerData **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Devices.Bluetooth.Advertisement.IBluetoothLEManufacturerDataFactory, Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass BluetoothLEManufacturerData + { + [default] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEManufacturerData; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcher), + uuid(a6ac336f-f3d3-4297-8d6c-c81ea6623f40) + ] + interface IBluetoothLEAdvertisementWatcher : IInspectable + { + [propget] HRESULT MinSamplingInterval([out, retval] Windows.Foundation.TimeSpan *value); + [propget] HRESULT MaxSamplingInterval([out, retval] Windows.Foundation.TimeSpan *value); + [propget] HRESULT MinOutOfRangeTimeout([out, retval] Windows.Foundation.TimeSpan *value); + [propget] HRESULT MaxOutOfRangeTimeout([out, retval] Windows.Foundation.TimeSpan *value); + [propget] HRESULT Status([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcherStatus *value); + [propget] HRESULT ScanningMode([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEScanningMode *value); + [propput] HRESULT ScanningMode([in] Windows.Devices.Bluetooth.Advertisement.BluetoothLEScanningMode value); + [propget] HRESULT SignalStrengthFilter([out, retval] Windows.Devices.Bluetooth.BluetoothSignalStrengthFilter **value); + [propput] HRESULT SignalStrengthFilter([in] Windows.Devices.Bluetooth.BluetoothSignalStrengthFilter *value); + [propget] HRESULT AdvertisementFilter([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementFilter **value); + [propput] HRESULT AdvertisementFilter([in] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementFilter *value); + HRESULT Start(); + HRESULT Stop(); + [eventadd] HRESULT Received([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcher *, Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementReceivedEventArgs *> *handler, + [out, retval] EventRegistrationToken *token); + [eventremove] HRESULT Received([in] EventRegistrationToken token); + [eventadd] HRESULT Stopped([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcher *, Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcherStoppedEventArgs *> *handler, + [out, retval] EventRegistrationToken *token); + [eventremove] HRESULT Stopped([in] EventRegistrationToken token); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 10.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcher), + uuid(01bf26bc-b164-5805-90a3-e8a7997ff225) + ] + interface IBluetoothLEAdvertisementWatcher2 : IInspectable + { + [propget] HRESULT AllowExtendedAdvertisements([out, retval] boolean *value); + [propput] HRESULT AllowExtendedAdvertisements([in] boolean value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 19.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcher), + uuid(14d980be-4002-5dbe-8519-ffca6ca389f0) + ] + interface IBluetoothLEAdvertisementWatcher3 : IInspectable + { + [propget] HRESULT UseUncoded1MPhy([out, retval] boolean *value); + [propput] HRESULT UseUncoded1MPhy([in] boolean value); + [propget] HRESULT UseCodedPhy([out, retval] boolean *value); + [propput] HRESULT UseCodedPhy([in] boolean value); + [propget] HRESULT ScanParameters([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementScanParameters **value); + [propput] HRESULT ScanParameters([in] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementScanParameters *value); + [propget] HRESULT UseHardwareFilter([out, retval] boolean *value); + [propput] HRESULT UseHardwareFilter([in] boolean value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcher), + uuid(9aaf2d56-39ac-453e-b32a-85c657e017f1) + ] + interface IBluetoothLEAdvertisementWatcherFactory : IInspectable + { + HRESULT Create([in] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementFilter *filter, + [out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcher **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementWatcherFactory, Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass BluetoothLEAdvertisementWatcher + { + [default] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementWatcher; + [contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementWatcher2; + [contract(Windows.Foundation.UniversalApiContract, 19.0)] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementWatcher3; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementFilter), + uuid(131eb0d3-d04e-47b1-837e-49405bf6f80f) + ] + interface IBluetoothLEAdvertisementFilter : IInspectable + { + [propget] HRESULT Advertisement([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisement **value); + [propput] HRESULT Advertisement([in] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisement *value); + [propget] HRESULT BytePatterns([out, retval] Windows.Foundation.Collections.IVector<Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementBytePattern *> **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass BluetoothLEAdvertisementFilter + { + [default] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementFilter; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 10.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementReceivedEventArgs), + uuid(27987ddf-e596-41be-8d43-9e6731d4a913) + ] + interface IBluetoothLEAdvertisementReceivedEventArgs : IInspectable + { + [propget] HRESULT RawSignalStrengthInDBm([out, retval] INT16 *value); + [propget] HRESULT BluetoothAddress([out, retval] UINT64 *value); + [propget] HRESULT AdvertisementType([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementType *value); + [propget] HRESULT Timestamp([out, retval] Windows.Foundation.DateTime *value); + [propget] HRESULT Advertisement([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisement **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 10.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementReceivedEventArgs), + uuid(12d9c87b-0399-5f0e-a348-53b02b6b162e) + ] + interface IBluetoothLEAdvertisementReceivedEventArgs2 : IInspectable + { + [propget] HRESULT BluetoothAddressType([out, retval] Windows.Devices.Bluetooth.BluetoothAddressType *value); + [propget] HRESULT TransmitPowerLevelInDBm([out, retval] Windows.Foundation.IReference<INT16> **value); + [propget] HRESULT IsAnonymous([out, retval] boolean *value); + [propget] HRESULT IsConnectable([out, retval] boolean *value); + [propget] HRESULT IsScannable([out, retval] boolean *value); + [propget] HRESULT IsDirected([out, retval] boolean *value); + [propget] HRESULT IsScanResponse([out, retval] boolean *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 19.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementReceivedEventArgs), + uuid(8d204b54-ff86-5d84-a25a-137dccd96f7a) + ] + interface IBluetoothLEAdvertisementReceivedEventArgs3 : IInspectable + { + [propget] HRESULT PrimaryPhy([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementPhyType *value); + [propget] HRESULT SecondaryPhy([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementPhyType *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass BluetoothLEAdvertisementReceivedEventArgs + { + [default] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementReceivedEventArgs; + [contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementReceivedEventArgs2; + [contract(Windows.Foundation.UniversalApiContract, 19.0)] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementReceivedEventArgs3; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementWatcherStoppedEventArgs), + uuid(dd40f84d-e7b9-43e3-9c04-0685d085fd8c) + ] + interface IBluetoothLEAdvertisementWatcherStoppedEventArgs : IInspectable + { + [propget] HRESULT Error([out, retval] Windows.Devices.Bluetooth.BluetoothError *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass BluetoothLEAdvertisementWatcherStoppedEventArgs + { + [default] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementWatcherStoppedEventArgs; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementBytePattern), + uuid(fbfad7f2-b9c5-4a08-bc51-502f8ef68a79) + ] + interface IBluetoothLEAdvertisementBytePattern : IInspectable + { + [propget] HRESULT DataType([out, retval] BYTE *value); + [propput] HRESULT DataType([in] BYTE value); + [propget] HRESULT Offset([out, retval] INT16 *value); + [propput] HRESULT Offset([in] INT16 value); + [propget] HRESULT Data([out, retval] Windows.Storage.Streams.IBuffer **value); + [propput] HRESULT Data([in] Windows.Storage.Streams.IBuffer *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementBytePattern), + uuid(c2e24d73-fd5c-4ec3-be2a-9ca6fa11b7bd) + ] + interface IBluetoothLEAdvertisementBytePatternFactory : IInspectable + { + HRESULT Create([in] BYTE type, [in] INT16 offset, [in] Windows.Storage.Streams.IBuffer *data, + [out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementBytePattern **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementBytePatternFactory, Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass BluetoothLEAdvertisementBytePattern + { + [default] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementBytePattern; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 19.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementScanParameters), + uuid(94f91413-63d9-53bd-af4c-e6b1a6514595) + ] + interface IBluetoothLEAdvertisementScanParameters : IInspectable + { + [propget] HRESULT ScanWindow([out, retval] UINT16 *value); + [propget] HRESULT ScanInterval([out, retval] UINT16 *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 19.0), + exclusiveto(Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementScanParameters), + uuid(548e39cd-3c9e-5f8d-b5e1-adebed5c357c) + ] + interface IBluetoothLEAdvertisementScanParametersStatics : IInspectable + { + HRESULT CoexistenceOptimized([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementScanParameters **value); + HRESULT LowLatency([out, retval] Windows.Devices.Bluetooth.Advertisement.BluetoothLEAdvertisementScanParameters **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 19.0), + static(Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementScanParametersStatics, Windows.Foundation.UniversalApiContract, 19.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass BluetoothLEAdvertisementScanParameters + { + [default] interface Windows.Devices.Bluetooth.Advertisement.IBluetoothLEAdvertisementScanParameters; + } +}
diff --git a/mingw-w64-headers/include/windows.devices.bluetooth.genericattributeprofile.idl b/mingw-w64-headers/include/windows.devices.bluetooth.genericattributeprofile.idl index e716454..b545bcc 100644 --- a/mingw-w64-headers/include/windows.devices.bluetooth.genericattributeprofile.idl +++ b/mingw-w64-headers/include/windows.devices.bluetooth.genericattributeprofile.idl
@@ -753,8 +753,8 @@ [ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), - static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattPresentationFormatStatics, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattPresentationFormatStatics2, Windows.Foundation.UniversalApiContract, 4.0), + /* static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattPresentationFormatStatics, Windows.Foundation.UniversalApiContract, 1.0), */ + /* static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattPresentationFormatStatics2, Windows.Foundation.UniversalApiContract, 4.0), */ threading(both) ] runtimeclass GattPresentationFormat
diff --git a/mingw-w64-headers/include/windows.devices.bluetooth.idl b/mingw-w64-headers/include/windows.devices.bluetooth.idl index ef14b25..bca654d 100644 --- a/mingw-w64-headers/include/windows.devices.bluetooth.idl +++ b/mingw-w64-headers/include/windows.devices.bluetooth.idl
@@ -41,6 +41,7 @@ typedef enum BluetoothMinorClass BluetoothMinorClass; typedef enum BluetoothServiceCapabilities BluetoothServiceCapabilities; typedef enum BluetoothError BluetoothError; + typedef enum BluetoothAddressType BluetoothAddressType; interface IBluetoothAdapter; interface IBluetoothAdapter2; @@ -65,12 +66,14 @@ interface IBluetoothLEDevice6; interface IBluetoothLEDeviceStatics; interface IBluetoothLEDeviceStatics2; + interface IBluetoothSignalStrengthFilter; runtimeclass BluetoothAdapter; runtimeclass BluetoothClassOfDevice; runtimeclass BluetoothDevice; runtimeclass BluetoothDeviceId; runtimeclass BluetoothLEDevice; + runtimeclass BluetoothSignalStrengthFilter; namespace Rfcomm { runtimeclass RfcommDeviceService; @@ -246,6 +249,17 @@ }; [ + contract(Windows.Foundation.UniversalApiContract, 2.0) + ] + enum BluetoothAddressType + { + Public = 0, + Random = 1, + [contract(Windows.Foundation.UniversalApiContract, 4.0)] + Unspecified = 2, + }; + + [ contract(Windows.Foundation.UniversalApiContract, 4.0), exclusiveto(Windows.Devices.Bluetooth.BluetoothAdapter), uuid(7974f04c-5f7a-4a34-9225-a855f84b1a8b) @@ -370,7 +384,7 @@ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), static(Windows.Devices.Bluetooth.IBluetoothDeviceStatics, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Devices.Bluetooth.IBluetoothDeviceStatics2, Windows.Foundation.UniversalApiContract, 2.0), + /* static(Windows.Devices.Bluetooth.IBluetoothDeviceStatics2, Windows.Foundation.UniversalApiContract, 2.0), */ threading(both) ] runtimeclass BluetoothDevice @@ -460,7 +474,7 @@ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), static(Windows.Devices.Bluetooth.IBluetoothLEDeviceStatics, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Devices.Bluetooth.IBluetoothLEDeviceStatics2, Windows.Foundation.UniversalApiContract, 2.0), + /* static(Windows.Devices.Bluetooth.IBluetoothLEDeviceStatics2, Windows.Foundation.UniversalApiContract, 2.0), */ threading(both) ] runtimeclass BluetoothLEDevice @@ -473,4 +487,32 @@ [contract(Windows.Foundation.UniversalApiContract, 13.0)] interface Windows.Devices.Bluetooth.IBluetoothLEDevice6; interface Windows.Foundation.IClosable; } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Devices.Bluetooth.BluetoothSignalStrengthFilter), + uuid(df7b7391-6bb5-4cfe-90b1-5d7324edcf7f) + ] + interface IBluetoothSignalStrengthFilter : IInspectable + { + [propget] HRESULT InRangeThresholdInDBm([out, retval] Windows.Foundation.IReference<INT16> **value); + [propput] HRESULT InRangeThresholdInDBm([in] Windows.Foundation.IReference<INT16> *value); + [propget] HRESULT OutOfRangeThresholdInDBm([out, retval] Windows.Foundation.IReference<INT16> **value); + [propput] HRESULT OutOfRangeThresholdInDBm([in] Windows.Foundation.IReference<INT16> *value); + [propget] HRESULT OutOfRangeTimeout([out, retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan> **value); + [propput] HRESULT OutOfRangeTimeout([in] Windows.Foundation.IReference<Windows.Foundation.TimeSpan> *value); + [propget] HRESULT SamplingInterval([out, retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan> **value); + [propput] HRESULT SamplingInterval([in] Windows.Foundation.IReference<Windows.Foundation.TimeSpan> *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + activatable(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass BluetoothSignalStrengthFilter + { + [default] interface Windows.Devices.Bluetooth.IBluetoothSignalStrengthFilter; + } }
diff --git a/mingw-w64-headers/include/windows.devices.bluetooth.rfcomm.idl b/mingw-w64-headers/include/windows.devices.bluetooth.rfcomm.idl index 14f9aca..ed56864 100644 --- a/mingw-w64-headers/include/windows.devices.bluetooth.rfcomm.idl +++ b/mingw-w64-headers/include/windows.devices.bluetooth.rfcomm.idl
@@ -88,7 +88,7 @@ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), static(Windows.Devices.Bluetooth.Rfcomm.IRfcommDeviceServiceStatics, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Devices.Bluetooth.Rfcomm.IRfcommDeviceServiceStatics2, Windows.Foundation.UniversalApiContract, 3.0), + /* static(Windows.Devices.Bluetooth.Rfcomm.IRfcommDeviceServiceStatics2, Windows.Foundation.UniversalApiContract, 3.0), */ threading(both) ] runtimeclass RfcommDeviceService @@ -102,7 +102,7 @@ [ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), - static(Windows.Devices.Bluetooth.Rfcomm.IRfcommServiceIdStatics, Windows.Foundation.UniversalApiContract, 1.0), + /* static(Windows.Devices.Bluetooth.Rfcomm.IRfcommServiceIdStatics, Windows.Foundation.UniversalApiContract, 1.0), */ threading(both) ] runtimeclass RfcommServiceId
diff --git a/mingw-w64-headers/include/windows.devices.enumeration.idl b/mingw-w64-headers/include/windows.devices.enumeration.idl index 4f15ac8..555b07d 100644 --- a/mingw-w64-headers/include/windows.devices.enumeration.idl +++ b/mingw-w64-headers/include/windows.devices.enumeration.idl
@@ -324,6 +324,7 @@ } [ + contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), ] runtimeclass DeviceInformationUpdate @@ -333,6 +334,7 @@ } [ + contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), ] runtimeclass DeviceThumbnail @@ -346,6 +348,7 @@ } [ + contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), ] runtimeclass DeviceWatcher @@ -355,6 +358,7 @@ } [ + contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile) ] runtimeclass EnclosureLocation
diff --git a/mingw-w64-headers/include/windows.devices.geolocation.idl b/mingw-w64-headers/include/windows.devices.geolocation.idl index ce4853f..054c795 100644 --- a/mingw-w64-headers/include/windows.devices.geolocation.idl +++ b/mingw-w64-headers/include/windows.devices.geolocation.idl
@@ -208,6 +208,7 @@ } [ + contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile) ] runtimeclass StatusChangedEventArgs
diff --git a/mingw-w64-headers/include/windows.devices.usb.idl b/mingw-w64-headers/include/windows.devices.usb.idl index 40d4312..abd0360 100644 --- a/mingw-w64-headers/include/windows.devices.usb.idl +++ b/mingw-w64-headers/include/windows.devices.usb.idl
@@ -165,7 +165,7 @@ } [ - activatable(Windows.Devices.Usb.IUsbSetupPacketFactory, Windows.Foundation.UniversalApiContract, 1.0), + /* activatable(Windows.Devices.Usb.IUsbSetupPacketFactory, Windows.Foundation.UniversalApiContract, 1.0), */ activatable(Windows.Foundation.UniversalApiContract, 1.0), contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile)
diff --git a/mingw-w64-headers/include/windows.foundation.idl b/mingw-w64-headers/include/windows.foundation.idl index 5d08662..d6b9617 100644 --- a/mingw-w64-headers/include/windows.foundation.idl +++ b/mingw-w64-headers/include/windows.foundation.idl
@@ -30,6 +30,8 @@ namespace Windows.Foundation.Collections { interface IPropertySet; + runtimeclass PropertySet; + declare { interface Windows.Foundation.Collections.IKeyValuePair<HSTRING, HSTRING>; interface Windows.Foundation.Collections.IKeyValuePair<HSTRING, IInspectable *>; @@ -63,6 +65,20 @@ marshaling_behavior(agile), threading(both) ] + runtimeclass PropertySet + { + [default] interface Windows.Foundation.Collections.IPropertySet; + interface Windows.Foundation.Collections.IObservableMap<HSTRING, IInspectable *>; + interface Windows.Foundation.Collections.IMap<HSTRING, IInspectable *>; + interface Windows.Foundation.Collections.IIterable<Windows.Foundation.Collections.IKeyValuePair<HSTRING, IInspectable *> *>; + } + + [ + activatable(Windows.Foundation.FoundationContract, 1.0), + contract(Windows.Foundation.FoundationContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] runtimeclass ValueSet { [default] interface Windows.Foundation.Collections.IPropertySet;
diff --git a/mingw-w64-headers/include/windows.graphics.holographic.idl b/mingw-w64-headers/include/windows.graphics.holographic.idl index 88a7aa9..204b1fd 100644 --- a/mingw-w64-headers/include/windows.graphics.holographic.idl +++ b/mingw-w64-headers/include/windows.graphics.holographic.idl
@@ -153,7 +153,7 @@ [ contract(Windows.Foundation.UniversalApiContract, 2.0), marshaling_behavior(agile), - static(Windows.Graphics.Holographic.IHolographicSpaceStatics, Windows.Foundation.UniversalApiContract, 2.0), + /* static(Windows.Graphics.Holographic.IHolographicSpaceStatics, Windows.Foundation.UniversalApiContract, 2.0), */ static(Windows.Graphics.Holographic.IHolographicSpaceStatics2, Windows.Foundation.UniversalApiContract, 4.0), static(Windows.Graphics.Holographic.IHolographicSpaceStatics3, Windows.Foundation.UniversalApiContract, 5.0), threading(both)
diff --git a/mingw-w64-headers/include/windows.media.core.idl b/mingw-w64-headers/include/windows.media.core.idl new file mode 100644 index 0000000..7eb30ca --- /dev/null +++ b/mingw-w64-headers/include/windows.media.core.idl
@@ -0,0 +1,58 @@ +/* + * Copyright (C) 2025 Mohamad Al-Jaf + * + * 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 + +import "inspectable.idl"; +import "asyncinfo.idl"; +import "eventtoken.idl"; +import "windowscontracts.idl"; +import "windows.foundation.idl"; +/* import "windows.applicationmodel.appservice.idl"; */ +import "windows.graphics.directx.direct3d11.idl"; +import "windows.graphics.imaging.idl"; +import "windows.media.idl"; +import "windows.media.capture.idl"; +/* import "windows.media.capture.frames.idl"; */ +import "windows.media.devices.idl"; +/* import "windows.media.devices.core.idl"; */ +import "windows.media.effects.idl"; +import "windows.media.faceanalysis.idl"; +import "windows.media.mediaproperties.idl"; +/* import "windows.media.playback.idl"; */ +/* import "windows.media.protection.idl"; */ +/* import "windows.media.streaming.adaptive.idl"; */ +/* import "windows.networking.backgroundtransfer.idl"; */ +import "windows.storage.idl"; +import "windows.storage.fileproperties.idl"; +import "windows.storage.streams.idl"; +import "windows.ui.idl"; + +namespace Windows.Media.Core { + interface IMediaSource; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + uuid(e7bfb599-a09d-4c21-bcdf-20af4f86b3d9) + ] + interface IMediaSource : IInspectable + { + } +}
diff --git a/mingw-w64-headers/include/windows.media.devices.idl b/mingw-w64-headers/include/windows.media.devices.idl index d0b3fce..e538e71 100644 --- a/mingw-w64-headers/include/windows.media.devices.idl +++ b/mingw-w64-headers/include/windows.media.devices.idl
@@ -98,6 +98,7 @@ } [ + contract(Windows.Foundation.UniversalApiContract, 1.0), activatable(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), static(Windows.Media.Devices.IMediaDeviceStatics, Windows.Foundation.UniversalApiContract, 1.0), @@ -107,6 +108,7 @@ } [ + contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile) ] runtimeclass DefaultAudioRenderDeviceChangedEventArgs @@ -115,6 +117,7 @@ } [ + contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile) ] runtimeclass DefaultAudioCaptureDeviceChangedEventArgs
diff --git a/mingw-w64-headers/include/windows.media.idl b/mingw-w64-headers/include/windows.media.idl index 87ccc75..d908ede 100644 --- a/mingw-w64-headers/include/windows.media.idl +++ b/mingw-w64-headers/include/windows.media.idl
@@ -363,6 +363,16 @@ [ contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Media.SystemMediaTransportControls), + uuid(43ba380a-eca4-4832-91ab-d415fae484c6) + ] + interface ISystemMediaTransportControlsStatics : IInspectable + { + HRESULT GetForCurrentView([out, retval] Windows.Media.SystemMediaTransportControls **controls); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), exclusiveto(Windows.Media.SystemMediaTransportControlsTimelineProperties), uuid(5125316a-c3a2-475b-8507-93534dc88f15) ]
diff --git a/mingw-w64-headers/include/windows.media.mediaproperties.idl b/mingw-w64-headers/include/windows.media.mediaproperties.idl new file mode 100644 index 0000000..9fa810f --- /dev/null +++ b/mingw-w64-headers/include/windows.media.mediaproperties.idl
@@ -0,0 +1,210 @@ +/* + * Copyright (C) 2025 Mohamad Al-Jaf + * + * 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 + +import "inspectable.idl"; +import "asyncinfo.idl"; +import "eventtoken.idl"; +import "windowscontracts.idl"; +import "windows.foundation.idl"; +import "windows.media.core.idl"; +import "windows.storage.idl"; +import "windows.storage.streams.idl"; + +namespace Windows.Media.MediaProperties { + interface IAudioEncodingProperties; + interface IAudioEncodingProperties2; + interface IAudioEncodingProperties3; + interface IAudioEncodingPropertiesStatics; + interface IAudioEncodingPropertiesStatics2; + interface IAudioEncodingPropertiesWithFormatUserData; + interface IContainerEncodingProperties; + interface IContainerEncodingProperties2; + interface IMediaEncodingProfile; + interface IMediaEncodingProfile2; + interface IMediaEncodingProfile3; + interface IMediaEncodingProfileStatics; + interface IMediaEncodingProfileStatics2; + interface IMediaEncodingProfileStatics3; + interface IMediaEncodingProperties; + interface IMediaRatio; + interface IVideoEncodingProperties; + interface IVideoEncodingProperties2; + interface IVideoEncodingProperties3; + interface IVideoEncodingProperties4; + interface IVideoEncodingProperties5; + interface IVideoEncodingPropertiesStatics; + interface IVideoEncodingPropertiesStatics2; + + runtimeclass AudioEncodingProperties; + runtimeclass ContainerEncodingProperties; + runtimeclass MediaEncodingProfile; + runtimeclass MediaRatio; + runtimeclass VideoEncodingProperties; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Media.MediaProperties.AudioEncodingProperties), + uuid(62bc7a16-005c-4b3b-8a0b-0a090e9687f3) + ] + interface IAudioEncodingProperties : IInspectable + requires Windows.Media.MediaProperties.IMediaEncodingProperties + { + [propput] HRESULT Bitrate([in] UINT32 value); + [propget] HRESULT Bitrate([out, retval] UINT32 *value); + [propput] HRESULT ChannelCount([in] UINT32 value); + [propget] HRESULT ChannelCount([out, retval] UINT32 *value); + [propput] HRESULT SampleRate([in] UINT32 value); + [propget] HRESULT SampleRate([out, retval] UINT32 *value); + [propput] HRESULT BitsPerSample([in] UINT32 value); + [propget] HRESULT BitsPerSample([out, retval] UINT32 *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Media.MediaProperties.ContainerEncodingProperties), + uuid(59ac2a57-b32a-479e-8a61-4b7f2e9e7ea0) + ] + interface IContainerEncodingProperties : IInspectable + requires Windows.Media.MediaProperties.IMediaEncodingProperties + { + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Media.MediaProperties.MediaEncodingProfile), + uuid(e7dbf5a8-1db9-4783-876b-3dfe12acfdb3) + ] + interface IMediaEncodingProfile : IInspectable + { + [propput] HRESULT Audio([in] Windows.Media.MediaProperties.AudioEncodingProperties *value); + [propget] HRESULT Audio([out, retval] Windows.Media.MediaProperties.AudioEncodingProperties **value); + [propput] HRESULT Video([in] Windows.Media.MediaProperties.VideoEncodingProperties *value); + [propget] HRESULT Video([out, retval] Windows.Media.MediaProperties.VideoEncodingProperties **value); + [propput] HRESULT Container([in] Windows.Media.MediaProperties.ContainerEncodingProperties *value); + [propget] HRESULT Container([out, retval] Windows.Media.MediaProperties.ContainerEncodingProperties **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Media.MediaProperties.MediaRatio), + uuid(d2d0fee5-8929-401d-ac78-7d357e378163) + ] + interface IMediaRatio : IInspectable + { + [propput] HRESULT Numerator([in] UINT32 value); + [propget] HRESULT Numerator([out, retval] UINT32 *value); + [propput] HRESULT Denominator([in] UINT32 value); + [propget] HRESULT Denominator([out, retval] UINT32 *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Media.MediaProperties.VideoEncodingProperties), + uuid(76ee6c9a-37c2-4f2a-880a-1282bbb4373d) + ] + interface IVideoEncodingProperties : IInspectable + requires Windows.Media.MediaProperties.IMediaEncodingProperties + { + [propput] HRESULT Bitrate([in] UINT32 value); + [propget] HRESULT Bitrate([out, retval] UINT32 *value); + [propput] HRESULT Width([in] UINT32 value); + [propget] HRESULT Width([out, retval] UINT32 *value); + [propput] HRESULT Height([in] UINT32 value); + [propget] HRESULT Height([out, retval] UINT32 *value); + [propget] HRESULT FrameRate([out, retval] Windows.Media.MediaProperties.MediaRatio **value); + [propget] HRESULT PixelAspectRatio([out, retval] Windows.Media.MediaProperties.MediaRatio **value); + } + + [ + activatable(Windows.Foundation.UniversalApiContract, 1.0), + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + /* static(Windows.Media.MediaProperties.IAudioEncodingPropertiesStatics, Windows.Foundation.UniversalApiContract, 1.0), */ + /* static(Windows.Media.MediaProperties.IAudioEncodingPropertiesStatics2, Windows.Foundation.UniversalApiContract, 4.0), */ + threading(both) + ] + runtimeclass AudioEncodingProperties + { + [default] interface Windows.Media.MediaProperties.IAudioEncodingProperties; + interface Windows.Media.MediaProperties.IMediaEncodingProperties; + [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Media.MediaProperties.IAudioEncodingPropertiesWithFormatUserData; + [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Media.MediaProperties.IAudioEncodingProperties2; + [contract(Windows.Foundation.UniversalApiContract, 6.0)] interface Windows.Media.MediaProperties.IAudioEncodingProperties3; + } + + [ + activatable(Windows.Foundation.UniversalApiContract, 1.0), + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass ContainerEncodingProperties + { + [default] interface Windows.Media.MediaProperties.IContainerEncodingProperties; + interface Windows.Media.MediaProperties.IMediaEncodingProperties; + [contract(Windows.Foundation.UniversalApiContract, 6.0)] interface Windows.Media.MediaProperties.IContainerEncodingProperties2; + } + + [ + activatable(Windows.Foundation.UniversalApiContract, 1.0), + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + /* static(Windows.Media.MediaProperties.IMediaEncodingProfileStatics, Windows.Foundation.UniversalApiContract, 1.0), */ + /* static(Windows.Media.MediaProperties.IMediaEncodingProfileStatics2, Windows.Foundation.UniversalApiContract, 1.0), */ + /* static(Windows.Media.MediaProperties.IMediaEncodingProfileStatics3, Windows.Foundation.UniversalApiContract, 4.0), */ + threading(mta) + ] + runtimeclass MediaEncodingProfile + { + [default] interface Windows.Media.MediaProperties.IMediaEncodingProfile; + [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Media.MediaProperties.IMediaEncodingProfile2; + [contract(Windows.Foundation.UniversalApiContract, 6.0)] interface Windows.Media.MediaProperties.IMediaEncodingProfile3; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass MediaRatio + { + [default] interface Windows.Media.MediaProperties.IMediaRatio; + } + + [ + activatable(Windows.Foundation.UniversalApiContract, 1.0), + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + /* static(Windows.Media.MediaProperties.IVideoEncodingPropertiesStatics, Windows.Foundation.UniversalApiContract, 1.0), */ + /* static(Windows.Media.MediaProperties.IVideoEncodingPropertiesStatics2, Windows.Foundation.UniversalApiContract, 4.0), */ + threading(both) + ] + runtimeclass VideoEncodingProperties + { + [default] interface Windows.Media.MediaProperties.IVideoEncodingProperties; + interface Windows.Media.MediaProperties.IMediaEncodingProperties; + [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Media.MediaProperties.IVideoEncodingProperties2; + [contract(Windows.Foundation.UniversalApiContract, 3.0)] interface Windows.Media.MediaProperties.IVideoEncodingProperties3; + [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Media.MediaProperties.IVideoEncodingProperties4; + [contract(Windows.Foundation.UniversalApiContract, 6.0)] interface Windows.Media.MediaProperties.IVideoEncodingProperties5; + } +}
diff --git a/mingw-w64-headers/include/windows.media.speechsynthesis.idl b/mingw-w64-headers/include/windows.media.speechsynthesis.idl index 135cc8f..3800fe4 100644 --- a/mingw-w64-headers/include/windows.media.speechsynthesis.idl +++ b/mingw-w64-headers/include/windows.media.speechsynthesis.idl
@@ -226,7 +226,7 @@ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), static(Windows.Media.SpeechSynthesis.IInstalledVoicesStatic, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Media.SpeechSynthesis.IInstalledVoicesStatic2, Windows.Foundation.UniversalApiContract, 5.0) + /* static(Windows.Media.SpeechSynthesis.IInstalledVoicesStatic2, Windows.Foundation.UniversalApiContract, 5.0) */ ] runtimeclass SpeechSynthesizer {
diff --git a/mingw-w64-headers/include/windows.media.transcoding.idl b/mingw-w64-headers/include/windows.media.transcoding.idl new file mode 100644 index 0000000..f97c730 --- /dev/null +++ b/mingw-w64-headers/include/windows.media.transcoding.idl
@@ -0,0 +1,152 @@ +/* + * Copyright (C) 2025 Mohamad Al-Jaf + * + * 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 + +import "inspectable.idl"; +import "asyncinfo.idl"; +import "eventtoken.idl"; +import "windowscontracts.idl"; +import "windows.foundation.idl"; +import "windows.media.core.idl"; +import "windows.media.mediaproperties.idl"; +import "windows.storage.idl"; +import "windows.storage.streams.idl"; + +namespace Windows.Media.Transcoding { + typedef enum MediaVideoProcessingAlgorithm MediaVideoProcessingAlgorithm; + typedef enum TranscodeFailureReason TranscodeFailureReason; + + interface IMediaTranscoder; + interface IMediaTranscoder2; + interface IPrepareTranscodeResult; + + runtimeclass MediaTranscoder; + runtimeclass PrepareTranscodeResult; + + declare { + interface Windows.Foundation.IAsyncActionWithProgress<DOUBLE>; + interface Windows.Foundation.AsyncActionProgressHandler<DOUBLE>; + interface Windows.Foundation.AsyncActionWithProgressCompletedHandler<DOUBLE>; + interface Windows.Foundation.IAsyncOperation<Windows.Media.Transcoding.PrepareTranscodeResult *>; + interface Windows.Foundation.IAsyncOperation<Windows.Media.Transcoding.TranscodeFailureReason>; + interface Windows.Foundation.IAsyncOperationWithProgress<Windows.Media.Transcoding.TranscodeFailureReason, DOUBLE>; + interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Media.Transcoding.PrepareTranscodeResult *>; + interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Media.Transcoding.TranscodeFailureReason>; + interface Windows.Foundation.AsyncOperationWithProgressCompletedHandler<Windows.Media.Transcoding.TranscodeFailureReason, DOUBLE>; + interface Windows.Foundation.AsyncOperationProgressHandler<Windows.Media.Transcoding.TranscodeFailureReason, DOUBLE>; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum MediaVideoProcessingAlgorithm + { + Default = 0, + MrfCrf444 = 1, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum TranscodeFailureReason + { + None = 0, + Unknown = 1, + InvalidProfile = 2, + CodecNotFound = 3, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Media.Transcoding.MediaTranscoder), + uuid(190c99d2-a0aa-4d34-86bc-eed1b12c2f5b) + ] + interface IMediaTranscoder : IInspectable + { + [propput] HRESULT TrimStartTime([in] Windows.Foundation.TimeSpan value); + [propget] HRESULT TrimStartTime([out, retval] Windows.Foundation.TimeSpan *value); + [propput] HRESULT TrimStopTime([in] Windows.Foundation.TimeSpan value); + [propget] HRESULT TrimStopTime([out, retval] Windows.Foundation.TimeSpan *value); + [propput] HRESULT AlwaysReencode([in] boolean value); + [propget] HRESULT AlwaysReencode([out, retval] boolean *value); + [propput] HRESULT HardwareAccelerationEnabled([in] boolean value); + [propget] HRESULT HardwareAccelerationEnabled([out, retval] boolean *value); + [overload("AddAudioEffect")] HRESULT AddAudioEffect([in] HSTRING activatable_class_id); + [overload("AddAudioEffect")] HRESULT AddAudioEffectWithSettings([in] HSTRING activatable_class_id, [in] boolean effect_required, [in] Windows.Foundation.Collections.IPropertySet *configuration); + [overload("AddVideoEffect")] HRESULT AddVideoEffect([in] HSTRING activatable_class_id); + [overload("AddVideoEffect")] HRESULT AddVideoEffectWithSettings([in] HSTRING activatable_class_id, [in] boolean effect_required, [in] Windows.Foundation.Collections.IPropertySet *configuration); + HRESULT ClearEffects(); + HRESULT PrepareFileTranscodeAsync([in] Windows.Storage.IStorageFile *source, [in] Windows.Storage.IStorageFile *destination, + [in] Windows.Media.MediaProperties.MediaEncodingProfile *profile, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.Media.Transcoding.PrepareTranscodeResult *> **operation); + HRESULT PrepareStreamTranscodeAsync([in] Windows.Storage.Streams.IRandomAccessStream *source, [in] Windows.Storage.Streams.IRandomAccessStream *destination, + [in] Windows.Media.MediaProperties.MediaEncodingProfile *profile, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.Media.Transcoding.PrepareTranscodeResult *> **operation); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Media.Transcoding.MediaTranscoder), + uuid(40531d74-35e0-4f04-8574-ca8bc4e5a082) + ] + interface IMediaTranscoder2 : IInspectable + { + HRESULT PrepareMediaStreamSourceTranscodeAsync([in] Windows.Media.Core.IMediaSource *source, [in] Windows.Storage.Streams.IRandomAccessStream *destination, + [in] Windows.Media.MediaProperties.MediaEncodingProfile *profile, + [out, retval] Windows.Foundation.IAsyncOperation<Windows.Media.Transcoding.PrepareTranscodeResult *> **operation); + [propput] HRESULT VideoProcessingAlgorithm([in] Windows.Media.Transcoding.MediaVideoProcessingAlgorithm value); + [propget] HRESULT VideoProcessingAlgorithm([out, retval] Windows.Media.Transcoding.MediaVideoProcessingAlgorithm *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Media.Transcoding.PrepareTranscodeResult), + uuid(05f25dce-994f-4a34-9d68-97ccce1730d6) + ] + interface IPrepareTranscodeResult : IInspectable + { + [propget] HRESULT CanTranscode([out, retval] boolean *value); + [propget] HRESULT FailureReason([out, retval] Windows.Media.Transcoding.TranscodeFailureReason *value); + HRESULT TranscodeAsync([out, retval] Windows.Foundation.IAsyncActionWithProgress<DOUBLE> **operation); + } + + [ + activatable(Windows.Foundation.UniversalApiContract, 1.0), + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass MediaTranscoder + { + [default] interface Windows.Media.Transcoding.IMediaTranscoder; + [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Media.Transcoding.IMediaTranscoder2; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + threading(both) + ] + runtimeclass PrepareTranscodeResult + { + [default] interface Windows.Media.Transcoding.IPrepareTranscodeResult; + } +}
diff --git a/mingw-w64-headers/include/windows.storage.fileproperties.idl b/mingw-w64-headers/include/windows.storage.fileproperties.idl index 9426d02..8469e6c 100644 --- a/mingw-w64-headers/include/windows.storage.fileproperties.idl +++ b/mingw-w64-headers/include/windows.storage.fileproperties.idl
@@ -20,6 +20,7 @@ #pragma winrt ns_prefix #endif +#ifndef DO_NO_IMPORTS import "inspectable.idl"; import "asyncinfo.idl"; import "eventtoken.idl"; @@ -28,6 +29,7 @@ import "windows.devices.geolocation.idl"; /* import "windows.storage.idl"; */ import "windows.storage.streams.idl"; +#endif namespace Windows.Storage.FileProperties { interface IBasicProperties;
diff --git a/mingw-w64-headers/include/windows.storage.idl b/mingw-w64-headers/include/windows.storage.idl index 483fc5a..1f4741a 100644 --- a/mingw-w64-headers/include/windows.storage.idl +++ b/mingw-w64-headers/include/windows.storage.idl
@@ -20,6 +20,7 @@ #pragma winrt ns_prefix #endif +#ifndef DO_NO_IMPORTS import "inspectable.idl"; import "asyncinfo.idl"; import "eventtoken.idl"; @@ -30,6 +31,7 @@ import "windows.storage.search.idl"; import "windows.storage.streams.idl"; import "windows.system.idl"; +#endif namespace Windows.Storage { typedef enum ApplicationDataCreateDisposition ApplicationDataCreateDisposition; @@ -58,11 +60,11 @@ interface IKnownFoldersStatics4; interface ISetVersionDeferral; interface ISetVersionRequest; + interface IStorageFileStatics; + interface IStorageFileStatics2; interface IStorageFolder; interface IStorageFolderStatics; interface IStorageFolderStatics2; - interface IStorageFileStatics; - interface IStorageFileStatics2; interface IStorageItem; runtimeclass ApplicationData; @@ -77,17 +79,20 @@ declare { interface Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.Storage.ApplicationDataContainer *>; interface Windows.Foundation.Collections.IIterable<Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.Storage.ApplicationDataContainer *> *>; - interface Windows.Foundation.Collections.IIterable<Windows.Storage.IStorageItem *>; interface Windows.Foundation.Collections.IIterator<Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.Storage.ApplicationDataContainer *> *>; - interface Windows.Foundation.Collections.IIterator<Windows.Storage.IStorageItem *>; interface Windows.Foundation.Collections.IMapView<HSTRING, Windows.Storage.ApplicationDataContainer *>; + interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Storage.ApplicationData *>; + interface Windows.Foundation.IAsyncOperation<Windows.Storage.ApplicationData *>; + interface Windows.Foundation.TypedEventHandler<Windows.Storage.ApplicationData *, IInspectable *>; +#ifndef _WINDOWS_APPLICATIONDATA + interface Windows.Foundation.Collections.IIterable<Windows.Storage.IStorageItem *>; + interface Windows.Foundation.Collections.IIterator<Windows.Storage.IStorageItem *>; 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.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 *> *>; - interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Storage.ApplicationData *>; interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Storage.KnownFoldersAccessStatus>; interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Storage.IStorageItem *>; interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Storage.StorageFile *>; @@ -96,13 +101,12 @@ interface Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Storage.IStorageItem *> *>; interface Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Storage.StorageFile *> *>; interface Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Storage.StorageFolder *> *>; - interface Windows.Foundation.IAsyncOperation<Windows.Storage.ApplicationData *>; interface Windows.Foundation.IAsyncOperation<Windows.Storage.KnownFoldersAccessStatus>; interface Windows.Foundation.IAsyncOperation<Windows.Storage.IStorageItem *>; interface Windows.Foundation.IAsyncOperation<Windows.Storage.StorageFile *>; interface Windows.Foundation.IAsyncOperation<Windows.Storage.StorageFolder *>; interface Windows.Foundation.IAsyncOperation<Windows.Storage.StorageStreamTransaction *>; - interface Windows.Foundation.TypedEventHandler<Windows.Storage.ApplicationData *, IInspectable *>; +#endif } [ @@ -127,6 +131,7 @@ SharedLocal = 4, }; +#ifndef _WINDOWS_APPLICATIONDATA [ contract(Windows.Foundation.UniversalApiContract, 1.0) ] @@ -232,6 +237,7 @@ File = 0x1, Folder = 0x2, }; +#endif [ contract(Windows.Foundation.UniversalApiContract, 1.0), @@ -345,6 +351,7 @@ ); } +#ifndef _WINDOWS_APPLICATIONDATA [ contract(Windows.Foundation.UniversalApiContract, 1.0), exclusiveto(Windows.Storage.KnownFolders), @@ -438,6 +445,7 @@ [out, retval] Windows.Foundation.IAsyncOperation<Windows.Storage.StorageFolder *> **operation ); } +#endif [ contract(Windows.Foundation.UniversalApiContract, 1.0), @@ -461,6 +469,7 @@ HRESULT GetDeferral([out, retval] Windows.Storage.SetVersionDeferral **deferral); } +#ifndef _WINDOWS_APPLICATIONDATA [ contract(Windows.Foundation.UniversalApiContract, 1.0), uuid(fa3f6186-4214-428c-a64c-14c9ac7315ea) @@ -591,6 +600,7 @@ [propget] HRESULT Stream([out, retval] Windows.Storage.Streams.IRandomAccessStream **value); HRESULT CommitAsync([out, retval] Windows.Foundation.IAsyncAction **operation); } +#endif [ contract(Windows.Foundation.UniversalApiContract, 1.0), @@ -617,6 +627,7 @@ [contract(Windows.Foundation.UniversalApiContract, 12.0)] interface Windows.Foundation.IClosable; } +#ifndef _WINDOWS_APPLICATIONDATA [ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), @@ -652,8 +663,8 @@ [ contract(Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Storage.IStorageFileStatics, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Storage.IStorageFileStatics2, Windows.Foundation.UniversalApiContract, 10.0) + /* static(Windows.Storage.IStorageFileStatics, Windows.Foundation.UniversalApiContract, 1.0), */ + /* static(Windows.Storage.IStorageFileStatics2, Windows.Foundation.UniversalApiContract, 10.0) */ ] runtimeclass StorageFile { @@ -671,8 +682,8 @@ [ contract(Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Storage.IStorageFolderStatics, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Storage.IStorageFolderStatics2, Windows.Foundation.UniversalApiContract, 10.0) + /* static(Windows.Storage.IStorageFolderStatics, Windows.Foundation.UniversalApiContract, 1.0), */ + /* static(Windows.Storage.IStorageFolderStatics2, Windows.Foundation.UniversalApiContract, 10.0) */ ] runtimeclass StorageFolder { @@ -695,4 +706,5 @@ [default] interface Windows.Storage.IStorageStreamTransaction; interface Windows.Foundation.IClosable; } +#endif }
diff --git a/mingw-w64-headers/include/windows.storage.search.idl b/mingw-w64-headers/include/windows.storage.search.idl index 093b083..217889c 100644 --- a/mingw-w64-headers/include/windows.storage.search.idl +++ b/mingw-w64-headers/include/windows.storage.search.idl
@@ -20,6 +20,7 @@ #pragma winrt ns_prefix #endif +#ifndef DO_NO_IMPORTS import "inspectable.idl"; import "asyncinfo.idl"; import "eventtoken.idl"; @@ -29,6 +30,7 @@ /* import "windows.storage.idl"; */ import "windows.storage.fileproperties.idl"; import "windows.storage.streams.idl"; +#endif namespace Windows.Storage.Search { interface IStorageFolderQueryOperations;
diff --git a/mingw-w64-headers/include/windows.storage.streams.idl b/mingw-w64-headers/include/windows.storage.streams.idl index 6c0dde0..3534089 100644 --- a/mingw-w64-headers/include/windows.storage.streams.idl +++ b/mingw-w64-headers/include/windows.storage.streams.idl
@@ -73,11 +73,14 @@ interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Storage.Streams.IRandomAccessStreamReference *>; interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Storage.Streams.IRandomAccessStreamWithContentType *>; interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Storage.Streams.RandomAccessStreamReference *>; + interface Windows.Foundation.AsyncOperationProgressHandler<UINT64,UINT64>; + interface Windows.Foundation.AsyncOperationWithProgressCompletedHandler<UINT64,UINT64>; interface Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IMapView<HSTRING, Windows.Storage.Streams.RandomAccessStreamReference *> *>; interface Windows.Foundation.IAsyncOperation<Windows.Storage.Streams.IRandomAccessStream *>; interface Windows.Foundation.IAsyncOperation<Windows.Storage.Streams.IRandomAccessStreamReference *>; interface Windows.Foundation.IAsyncOperation<Windows.Storage.Streams.IRandomAccessStreamWithContentType *>; interface Windows.Foundation.IAsyncOperation<Windows.Storage.Streams.RandomAccessStreamReference *>; + interface Windows.Foundation.IAsyncOperationWithProgress<UINT64,UINT64>; #endif } @@ -198,6 +201,18 @@ #ifndef _WINTYPES [ contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Storage.Streams.RandomAccessStream), + uuid(524cedcf-6e29-4ce5-9573-6b753db66c3a) + ] + interface IRandomAccessStreamStatics : IInspectable + { + [overload("CopyAsync")] HRESULT CopyAsync([in] Windows.Storage.Streams.IInputStream *source, [in] Windows.Storage.Streams.IOutputStream *dest, [out, retval] Windows.Foundation.IAsyncOperationWithProgress<UINT64, UINT64> **operation); + [overload("CopyAsync")] HRESULT CopySizeAsync([in] Windows.Storage.Streams.IInputStream *source, [in] Windows.Storage.Streams.IOutputStream *dest, [in] UINT64 bytesToCopy, [out, retval] Windows.Foundation.IAsyncOperationWithProgress<UINT64, UINT64> **operation); + HRESULT CopyAndCloseAsync([in] Windows.Storage.Streams.IInputStream *source, [in] Windows.Storage.Streams.IOutputStream *dest, [out, retval] Windows.Foundation.IAsyncOperationWithProgress<UINT64, UINT64> **operation); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), uuid(905a0fe1-bc53-11df-8c49-001e4fc686da), ] interface IRandomAccessStream : IInspectable
diff --git a/mingw-w64-headers/include/windows.system.idl b/mingw-w64-headers/include/windows.system.idl index 152d4b6..954fe5f 100644 --- a/mingw-w64-headers/include/windows.system.idl +++ b/mingw-w64-headers/include/windows.system.idl
@@ -466,7 +466,7 @@ [ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), - static(Windows.System.IUserStatics, Windows.Foundation.UniversalApiContract, 1.0), + /* static(Windows.System.IUserStatics, Windows.Foundation.UniversalApiContract, 1.0), */ threading(both), ] runtimeclass User
diff --git a/mingw-w64-headers/include/windows.system.profile.idl b/mingw-w64-headers/include/windows.system.profile.idl index 9e0b0ed..7032274 100644 --- a/mingw-w64-headers/include/windows.system.profile.idl +++ b/mingw-w64-headers/include/windows.system.profile.idl
@@ -113,7 +113,7 @@ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), static(Windows.System.Profile.IAnalyticsInfoStatics, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.System.Profile.IAnalyticsInfoStatics2, Windows.Foundation.UniversalApiContract, 6.0), + /* static(Windows.System.Profile.IAnalyticsInfoStatics2, Windows.Foundation.UniversalApiContract, 6.0), */ threading(both) ] runtimeclass AnalyticsInfo
diff --git a/mingw-w64-headers/include/windows.system.userprofile.idl b/mingw-w64-headers/include/windows.system.userprofile.idl index 756302d..41b3797 100644 --- a/mingw-w64-headers/include/windows.system.userprofile.idl +++ b/mingw-w64-headers/include/windows.system.userprofile.idl
@@ -69,8 +69,8 @@ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile), static(Windows.System.UserProfile.IGlobalizationPreferencesStatics, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.System.UserProfile.IGlobalizationPreferencesStatics2, Windows.Foundation.UniversalApiContract, 5.0), - static(Windows.System.UserProfile.IGlobalizationPreferencesStatics3, Windows.Foundation.UniversalApiContract, 6.0), + /* static(Windows.System.UserProfile.IGlobalizationPreferencesStatics2, Windows.Foundation.UniversalApiContract, 5.0), */ + /* static(Windows.System.UserProfile.IGlobalizationPreferencesStatics3, Windows.Foundation.UniversalApiContract, 6.0), */ ] runtimeclass GlobalizationPreferences { @@ -82,7 +82,7 @@ contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(standard), static(Windows.System.UserProfile.IAdvertisingManagerStatics, Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.System.UserProfile.IAdvertisingManagerStatics2, Windows.Foundation.UniversalApiContract, 3.0), + /* static(Windows.System.UserProfile.IAdvertisingManagerStatics2, Windows.Foundation.UniversalApiContract, 3.0), */ ] runtimeclass AdvertisingManager {
diff --git a/mingw-w64-headers/include/windows.ui.composition.idl b/mingw-w64-headers/include/windows.ui.composition.idl index 92ca136..a8a8594 100644 --- a/mingw-w64-headers/include/windows.ui.composition.idl +++ b/mingw-w64-headers/include/windows.ui.composition.idl
@@ -994,7 +994,7 @@ composable(Windows.UI.Composition.ICompositionEasingFunctionFactory, public, Windows.Foundation.UniversalApiContract, 2.0), contract(Windows.Foundation.UniversalApiContract, 2.0), marshaling_behavior(agile), - static(Windows.UI.Composition.ICompositionEasingFunctionStatics, Windows.Foundation.UniversalApiContract, 12.0), + /* static(Windows.UI.Composition.ICompositionEasingFunctionStatics, Windows.Foundation.UniversalApiContract, 12.0), */ threading(both) ] runtimeclass CompositionEasingFunction : Windows.UI.Composition.CompositionObject @@ -1039,7 +1039,7 @@ composable(Windows.UI.Composition.ICompositionObjectFactory, public, Windows.Foundation.UniversalApiContract, 2.0), contract(Windows.Foundation.UniversalApiContract, 2.0), marshaling_behavior(agile), - static(Windows.UI.Composition.ICompositionObjectStatics, Windows.Foundation.UniversalApiContract, 7.0), + /* static(Windows.UI.Composition.ICompositionObjectStatics, Windows.Foundation.UniversalApiContract, 7.0), */ threading(both) ] runtimeclass CompositionObject @@ -1100,7 +1100,7 @@ activatable(Windows.Foundation.UniversalApiContract, 2.0), contract(Windows.Foundation.UniversalApiContract, 2.0), marshaling_behavior(agile), - static(Windows.UI.Composition.ICompositorStatics, Windows.Foundation.UniversalApiContract, 6.0), + /* static(Windows.UI.Composition.ICompositorStatics, Windows.Foundation.UniversalApiContract, 6.0), */ threading(both) ] runtimeclass Compositor
diff --git a/mingw-w64-headers/include/windows.ui.viewmanagement.idl b/mingw-w64-headers/include/windows.ui.viewmanagement.idl index 1be8fac..cfb63c5 100644 --- a/mingw-w64-headers/include/windows.ui.viewmanagement.idl +++ b/mingw-w64-headers/include/windows.ui.viewmanagement.idl
@@ -31,15 +31,50 @@ import "windows.ui.idl"; import "windows.ui.core.idl"; /* import "windows.ui.popups.idl"; */ -/* import "windows.ui.windowmanagement.idl"; */ +import "windows.ui.windowmanagement.idl"; #endif namespace Windows.UI.ViewManagement { + apicontract ViewManagementViewScalingContract; + + typedef enum ApplicationViewBoundsMode ApplicationViewBoundsMode; + typedef enum ApplicationViewMode ApplicationViewMode; + typedef enum ApplicationViewOrientation ApplicationViewOrientation; + typedef enum ApplicationViewState ApplicationViewState; + typedef enum ApplicationViewSwitchingOptions ApplicationViewSwitchingOptions; + typedef enum ApplicationViewWindowingMode ApplicationViewWindowingMode; + typedef enum FullScreenSystemOverlayMode FullScreenSystemOverlayMode; typedef enum HandPreference HandPreference; typedef enum UIColorType UIColorType; typedef enum UIElementType UIElementType; typedef enum UserInteractionMode UserInteractionMode; + typedef enum ViewSizePreference ViewSizePreference; + + interface IAccessibilitySettings; + interface IApplicationView; + interface IApplicationView2; + interface IApplicationView3; + interface IApplicationView4; + interface IApplicationView7; + interface IApplicationView9; + interface IApplicationViewConsolidatedEventArgs; + interface IApplicationViewConsolidatedEventArgs2; + interface IApplicationViewFullscreenStatics; + interface IApplicationViewInteropStatics; + interface IApplicationViewScaling; + interface IApplicationViewScalingStatics; + interface IApplicationViewStatics; + interface IApplicationViewStatics2; + interface IApplicationViewStatics3; + interface IApplicationViewStatics4; + interface IApplicationViewSwitcherStatics; + interface IApplicationViewSwitcherStatics2; + interface IApplicationViewSwitcherStatics3; + interface IApplicationViewTitleBar; + interface IApplicationViewTransferContext; + interface IApplicationViewTransferContextStatics; + interface IApplicationViewWithContext; interface IUISettings; interface IUISettings2; @@ -53,6 +88,8 @@ interface IUIViewSettings; interface IUIViewSettingsStatics; + interface IViewModePreferences; + interface IViewModePreferencesStatics; interface IInputPane; interface IInputPane2; @@ -61,6 +98,17 @@ interface IInputPaneStatics; interface IInputPaneStatics2; + runtimeclass AccessibilitySettings; +#ifndef _WINDOWS_UI + runtimeclass ApplicationView; +#endif + runtimeclass ApplicationViewConsolidatedEventArgs; + runtimeclass ApplicationViewScaling; +#ifndef _WINDOWS_UI + runtimeclass ApplicationViewSwitcher; + runtimeclass ApplicationViewTitleBar; + runtimeclass ApplicationViewTransferContext; +#endif runtimeclass UISettings; runtimeclass UISettingsAnimationsEnabledChangedEventArgs; runtimeclass UISettingsAutoHideScrollBarsChangedEventArgs; @@ -68,8 +116,14 @@ runtimeclass UIViewSettings; runtimeclass InputPane; runtimeclass InputPaneVisibilityEventArgs; + runtimeclass ViewModePreferences; declare { + interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.AccessibilitySettings *, IInspectable *>; +#ifndef _WINDOWS_UI + interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.ApplicationView *, IInspectable *>; + interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.ApplicationView *, Windows.UI.ViewManagement.ApplicationViewConsolidatedEventArgs *>; +#endif interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.UISettings *, IInspectable *>; interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.UISettings *, Windows.UI.ViewManagement.UISettingsAnimationsEnabledChangedEventArgs *>; interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.UISettings *, Windows.UI.ViewManagement.UISettingsAutoHideScrollBarsChangedEventArgs *>; @@ -78,6 +132,89 @@ } [ + contractversion(1.0) + ] + apicontract ViewManagementViewScalingContract + { + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum ApplicationViewBoundsMode + { + UseVisible = 0, + UseCoreWindow = 1, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 4.0) + ] + enum ApplicationViewMode + { + Default = 0, + CompactOverlay = 1, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum ApplicationViewOrientation + { + Landscape = 0, + Portrait = 1, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum ApplicationViewState + { + FullScreenLandscape = 0, + Filled = 1, + Snapped = 2, + FullScreenPortrait = 3, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + flags + ] + enum ApplicationViewSwitchingOptions + { + Default = 0x0, + SkipAnimation = 0x1, + ConsolidateViews = 0x2, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum ApplicationViewWindowingMode + { + Auto = 0, + PreferredLaunchViewSize = 1, + FullScreen = 2, + [ + contract(Windows.Foundation.UniversalApiContract, 7.0) + ] + CompactOverlay = 3, + [ + contract(Windows.Foundation.UniversalApiContract, 7.0) + ] + Maximized = 4, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum FullScreenSystemOverlayMode + { + Standard = 0, + Minimal = 1, + }; + + [ contract(Windows.Foundation.UniversalApiContract, 1.0) ] enum HandPreference @@ -159,6 +296,342 @@ }; [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + enum ViewSizePreference + { + Default = 0, + UseLess = 1, + UseHalf = 2, + UseMore = 3, + UseMinimum = 4, + UseNone = 5, + [ + contract(Windows.Foundation.UniversalApiContract, 4.0) + ] + Custom = 6, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.AccessibilitySettings), + uuid(fe0e8147-c4c0-4562-b962-1327b52ad5b9) + ] + interface IAccessibilitySettings : IInspectable + { + [propget] HRESULT HighContrast([out, retval] boolean *value); + [propget] HRESULT HighContrastScheme([out, retval] HSTRING *value); + [eventadd] HRESULT HighContrastChanged([in] Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.AccessibilitySettings *, IInspectable *> *handler, [out, retval] EventRegistrationToken *cookie); + [eventremove] HRESULT HighContrastChanged([in] EventRegistrationToken cookie); + } + +#ifndef _WINDOWS_UI + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(d222d519-4361-451e-96c4-60f4f9742db0) + ] + interface IApplicationView : IInspectable + { + [propget] HRESULT Orientation([out, retval] Windows.UI.ViewManagement.ApplicationViewOrientation *value); + [propget] HRESULT AdjacentToLeftDisplayEdge([out, retval] boolean *value); + [propget] HRESULT AdjacentToRightDisplayEdge([out, retval] boolean *value); + [propget] HRESULT IsFullScreen([out, retval] boolean *value); + [propget] HRESULT IsOnLockScreen([out, retval] boolean *value); + [propget] HRESULT IsScreenCaptureEnabled([out, retval] boolean *value); + [propput] HRESULT IsScreenCaptureEnabled([in] boolean value); + [propput] HRESULT Title([in] HSTRING value); + [propget] HRESULT Title([out, retval] HSTRING *value); + [propget] HRESULT Id([out, retval] INT32 *value); + [eventadd] HRESULT Consolidated([in] Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.ApplicationView *, Windows.UI.ViewManagement.ApplicationViewConsolidatedEventArgs *> *handler, [out, retval] EventRegistrationToken *token); + [eventremove] HRESULT Consolidated([in] EventRegistrationToken token); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(e876b196-a545-40dc-b594-450cba68cc00) + ] + interface IApplicationView2 : IInspectable + { + [propget] HRESULT SuppressSystemOverlays([out, retval] boolean *value); + [propput] HRESULT SuppressSystemOverlays([in] boolean value); + [propget] HRESULT VisibleBounds([out, retval] Windows.Foundation.Rect *value); + [eventadd] HRESULT VisibleBoundsChanged([in] Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.ApplicationView *, IInspectable *> *handler, [out, retval] EventRegistrationToken *token); + [eventremove] HRESULT VisibleBoundsChanged([in] EventRegistrationToken token); + HRESULT SetDesiredBoundsMode([in] Windows.UI.ViewManagement.ApplicationViewBoundsMode mode, [out, retval] boolean *success); + [propget] HRESULT DesiredBoundsMode([out, retval] Windows.UI.ViewManagement.ApplicationViewBoundsMode *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(903c9ce5-793a-4fdf-a2b2-af1ac21e3108) + ] + interface IApplicationView3 : IInspectable + { + [propget] HRESULT TitleBar([out, retval] Windows.UI.ViewManagement.ApplicationViewTitleBar **value); + [propget] HRESULT FullScreenSystemOverlayMode([out, retval] Windows.UI.ViewManagement.FullScreenSystemOverlayMode *value); + [propput] HRESULT FullScreenSystemOverlayMode([in] Windows.UI.ViewManagement.FullScreenSystemOverlayMode value); + [propget] HRESULT IsFullScreenMode([out, retval] boolean *value); + HRESULT TryEnterFullScreenMode([out, retval] boolean *success); + HRESULT ExitFullScreenMode(); + HRESULT ShowStandardSystemOverlays(); + HRESULT TryResizeView([in] Windows.Foundation.Size value, [out, retval] boolean *success); + HRESULT SetPreferredMinSize([in] Windows.Foundation.Size size); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 4.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(15e5cbec-9e0f-46b5-bc3f-9bf653e74b5e) + ] + interface IApplicationView4 : IInspectable + { + [propget] HRESULT ViewMode([out, retval] Windows.UI.ViewManagement.ApplicationViewMode *value); + HRESULT IsViewModeSupported([in] Windows.UI.ViewManagement.ApplicationViewMode mode, [out, retval] boolean *is_mode_supported); + [overload("TryEnterViewModeAsync")] HRESULT TryEnterViewModeAsync([in] Windows.UI.ViewManagement.ApplicationViewMode mode, [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("TryEnterViewModeAsync")] HRESULT TryEnterViewModeWithPreferencesAsync([in] Windows.UI.ViewManagement.ApplicationViewMode mode, [in] Windows.UI.ViewManagement.ViewModePreferences *preferences, [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + HRESULT TryConsolidateAsync([out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(a0369647-5faf-5aa6-9c38-befbb12a071e) + ] + interface IApplicationView7 : IInspectable + { + [propget] HRESULT PersistedStateId([out, retval] HSTRING *value); + [propput] HRESULT PersistedStateId([in] HSTRING value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(9c6516f9-021a-5f01-93e5-9bdad2647574) + ] + interface IApplicationView9 : IInspectable + { + [propget] HRESULT WindowingEnvironment([out, retval] Windows.UI.WindowManagement.WindowingEnvironment **value); + HRESULT GetDisplayRegions([out, retval] Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.DisplayRegion *> **result); + } +#endif + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationViewConsolidatedEventArgs), + uuid(514449ec-7ea2-4de7-a6a6-7dfbaaebb6fb) + ] + interface IApplicationViewConsolidatedEventArgs : IInspectable + { + [propget] HRESULT IsUserInitiated([out, retval] boolean *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 4.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationViewConsolidatedEventArgs), + uuid(1c199ecc-6dc1-40f4-afee-07d9ea296430) + ] + interface IApplicationViewConsolidatedEventArgs2 : IInspectable + { + [propget] HRESULT IsAppInitiated([out, retval] boolean *value); + } + +#ifndef _WINDOWS_UI + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(bc792ebd-64fe-4b65-a0c0-901ce2b68636) + ] + interface IApplicationViewFullscreenStatics : IInspectable + { + HRESULT TryUnsnapToFullscreen([out, retval] boolean *success); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(c446fb5d-4793-4896-a8e2-be57a8bb0f50) + ] + interface IApplicationViewInteropStatics : IInspectable + { + HRESULT GetApplicationViewIdForWindow([in] Windows.UI.Core.ICoreWindow *window, [out, retval] INT32 *id); + } +#endif + + [ + contract(Windows.UI.ViewManagement.ViewManagementViewScalingContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationViewScaling), + uuid(1d0ddc23-23f3-4b2d-84fe-74bf37b48b66) + ] + interface IApplicationViewScaling : IInspectable + { + } + + [ + contract(Windows.UI.ViewManagement.ViewManagementViewScalingContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationViewScaling), + uuid(b08fecf0-b946-45c8-a5e3-71f5aa78f861) + ] + interface IApplicationViewScalingStatics : IInspectable + { + [propget] HRESULT DisableLayoutScaling([out, retval] boolean *value); + HRESULT TrySetDisableLayoutScaling([in] boolean disabled, [out, retval] boolean *success); + } + +#ifndef _WINDOWS_UI + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(010a6306-c433-44e5-a9f2-bd84d4030a95) + ] + interface IApplicationViewStatics : IInspectable + { + [propget] HRESULT Value([out, retval] Windows.UI.ViewManagement.ApplicationViewState *value); + HRESULT TryUnsnap([out, retval] boolean *success); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(af338ae5-cf64-423c-85e5-f3e72448fb23) + ] + interface IApplicationViewStatics2 : IInspectable + { + HRESULT GetForCurrentView([out, retval] Windows.UI.ViewManagement.ApplicationView **current); + [propget] HRESULT TerminateAppOnFinalViewClose([out, retval] boolean *value); + [propput] HRESULT TerminateAppOnFinalViewClose([in] boolean value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(a28d7594-8c41-4e13-9719-5164796fe4c7) + ] + interface IApplicationViewStatics3 : IInspectable + { + [propget] HRESULT PreferredLaunchWindowingMode([out, retval] Windows.UI.ViewManagement.ApplicationViewWindowingMode *value); + [propput] HRESULT PreferredLaunchWindowingMode([in] Windows.UI.ViewManagement.ApplicationViewWindowingMode value); + [propget] HRESULT PreferredLaunchViewSize([out, retval] Windows.Foundation.Size *value); + [propput] HRESULT PreferredLaunchViewSize([in] Windows.Foundation.Size value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(08fd8d33-2611-5336-a315-d98e6366c9db) + ] + interface IApplicationViewStatics4 : IInspectable + { + HRESULT ClearAllPersistedState(); + HRESULT ClearPersistedState([in] HSTRING key); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationViewSwitcher), + uuid(975f2f1e-e656-4c5e-a0a1-717c6ffa7d64) + ] + interface IApplicationViewSwitcherStatics : IInspectable + { + HRESULT DisableShowingMainViewOnActivation(); + [overload("TryShowAsStandaloneAsync")] HRESULT TryShowAsStandaloneAsync([in] INT32 view_id, [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("TryShowAsStandaloneAsync")] HRESULT TryShowAsStandaloneWithSizePreferenceAsync([in] INT32 view_id, [in] Windows.UI.ViewManagement.ViewSizePreference preference, [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("TryShowAsStandaloneAsync")] HRESULT TryShowAsStandaloneWithAnchorViewAndSizePreferenceAsync([in] INT32 view_id, [in] Windows.UI.ViewManagement.ViewSizePreference size_preference, [in] INT32 anchor_view_id, [in] Windows.UI.ViewManagement.ViewSizePreference anchor_size_preference, [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("SwitchAsync")] HRESULT SwitchAsync([in] INT32 view_id, [out, retval] Windows.Foundation.IAsyncAction **operation); + [overload("SwitchAsync")] HRESULT SwitchFromViewAsync([in] INT32 to_view_id, [in] INT32 from_view_id, [out, retval] Windows.Foundation.IAsyncAction **operation); + [overload("SwitchAsync")] HRESULT SwitchFromViewWithOptionsAsync([in] INT32 to_view_id, [in] INT32 from_view_id, [in] Windows.UI.ViewManagement.ApplicationViewSwitchingOptions options, [out, retval] Windows.Foundation.IAsyncAction **operation); + HRESULT PrepareForCustomAnimatedSwitchAsync([in] INT32 to_view_id, [in] INT32 from_view_id, [in] Windows.UI.ViewManagement.ApplicationViewSwitchingOptions options, [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationViewSwitcher), + uuid(60e995cd-4fc2-48c4-b8e3-395f2b9f0fc1) + ] + interface IApplicationViewSwitcherStatics2 : IInspectable + { + HRESULT DisableSystemViewActivationPolicy(); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 4.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationViewSwitcher), + uuid(92059420-80a7-486d-b21f-c7a4a242a383) + ] + interface IApplicationViewSwitcherStatics3 : IInspectable + { + [overload("TryShowAsViewModeAsync")] HRESULT TryShowAsViewModeAsync([in] INT32 view_id, [in] Windows.UI.ViewManagement.ApplicationViewMode mode, [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + [overload("TryShowAsViewModeAsync")] HRESULT TryShowAsViewModeWithPreferencesAsync([in] INT32 view_id, [in] Windows.UI.ViewManagement.ApplicationViewMode mode, [in] Windows.UI.ViewManagement.ViewModePreferences *preferences, [out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationViewTitleBar), + uuid(00924ac0-932b-4a6b-9c4b-dc38c82478ce) + ] + interface IApplicationViewTitleBar : IInspectable + { + [propput] HRESULT ForegroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT ForegroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT BackgroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT BackgroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT ButtonForegroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT ButtonForegroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT ButtonBackgroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT ButtonBackgroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT ButtonHoverForegroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT ButtonHoverForegroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT ButtonHoverBackgroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT ButtonHoverBackgroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT ButtonPressedForegroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT ButtonPressedForegroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT ButtonPressedBackgroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT ButtonPressedBackgroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT InactiveForegroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT InactiveForegroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT InactiveBackgroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT InactiveBackgroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT ButtonInactiveForegroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT ButtonInactiveForegroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + [propput] HRESULT ButtonInactiveBackgroundColor([in] Windows.Foundation.IReference<Windows.UI.Color> *value); + [propget] HRESULT ButtonInactiveBackgroundColor([out, retval] Windows.Foundation.IReference<Windows.UI.Color> **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 2.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationViewTransferContext), + uuid(8574bc63-3c17-408e-9408-8a1a9ea81bfa) + ] + interface IApplicationViewTransferContext : IInspectable + { + [propget] HRESULT ViewId([out, retval] INT32 *value); + [propput] HRESULT ViewId([in] INT32 value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 2.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationViewTransferContext), + uuid(15a89d92-dd79-4b0b-bc47-d5f195f14661) + ] + interface IApplicationViewTransferContextStatics : IInspectable + { + [propget] HRESULT DataPackageFormatId([out, retval] HSTRING *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + exclusiveto(Windows.UI.ViewManagement.ApplicationView), + uuid(bd55d512-9dc1-44fc-8501-666625df60dc) + ] + interface IApplicationViewWithContext : IInspectable + { + [propget] HRESULT UIContext([out, retval] Windows.UI.UIContext **value); + } +#endif + + [ contract(Windows.Foundation.UniversalApiContract, 1.0), exclusiveto(Windows.UI.ViewManagement.UISettings), uuid(85361600-1c63-4627-bcb1-3a89e0bc9c55) @@ -367,6 +840,115 @@ } [ + contract(Windows.Foundation.UniversalApiContract, 4.0), + exclusiveto(Windows.UI.ViewManagement.ViewModePreferences), + uuid(878fcd3a-0b99-42c9-84d0-d3f1d403554b) + ] + interface IViewModePreferences : IInspectable + { + [propget] HRESULT ViewSizePreference([out, retval] Windows.UI.ViewManagement.ViewSizePreference *value); + [propput] HRESULT ViewSizePreference([in] Windows.UI.ViewManagement.ViewSizePreference value); + [propget] HRESULT CustomSize([out, retval] Windows.Foundation.Size *value); + [propput] HRESULT CustomSize([in] Windows.Foundation.Size value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 4.0), + exclusiveto(Windows.UI.ViewManagement.ViewModePreferences), + uuid(69b60a65-5de5-40d8-8306-3833df7a2274) + ] + interface IViewModePreferencesStatics : IInspectable + { + HRESULT CreateDefault([in] Windows.UI.ViewManagement.ApplicationViewMode mode, [out, retval] Windows.UI.ViewManagement.ViewModePreferences **result); + } + + [ + activatable(Windows.Foundation.UniversalApiContract, 1.0), + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile) + ] + runtimeclass AccessibilitySettings + { + [default] interface Windows.UI.ViewManagement.IAccessibilitySettings; + } + +#ifndef _WINDOWS_UI + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + static(Windows.UI.ViewManagement.IApplicationViewFullscreenStatics, Windows.Foundation.UniversalApiContract, 1.0), + static(Windows.UI.ViewManagement.IApplicationViewInteropStatics, Windows.Foundation.UniversalApiContract, 1.0), + static(Windows.UI.ViewManagement.IApplicationViewStatics, Windows.Foundation.UniversalApiContract, 1.0), + static(Windows.UI.ViewManagement.IApplicationViewStatics2, Windows.Foundation.UniversalApiContract, 1.0), + static(Windows.UI.ViewManagement.IApplicationViewStatics3, Windows.Foundation.UniversalApiContract, 1.0), + static(Windows.UI.ViewManagement.IApplicationViewStatics4, Windows.Foundation.UniversalApiContract, 8.0), + threading(both) + ] + runtimeclass ApplicationView + { + [contract(Windows.Foundation.UniversalApiContract, 1.0)] [default] interface Windows.UI.ViewManagement.IApplicationView; + [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.UI.ViewManagement.IApplicationView2; + [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.UI.ViewManagement.IApplicationView3; + [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.UI.ViewManagement.IApplicationView4; + [contract(Windows.Foundation.UniversalApiContract, 8.0)] interface Windows.UI.ViewManagement.IApplicationView7; + [contract(Windows.Foundation.UniversalApiContract, 8.0)] interface Windows.UI.ViewManagement.IApplicationView9; + [contract(Windows.Foundation.UniversalApiContract, 8.0)] interface Windows.UI.ViewManagement.IApplicationViewWithContext; + } +#endif + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile) + ] + runtimeclass ApplicationViewConsolidatedEventArgs + { + [default] interface Windows.UI.ViewManagement.IApplicationViewConsolidatedEventArgs; + [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.UI.ViewManagement.IApplicationViewConsolidatedEventArgs2; + } + + [ + contract(Windows.UI.ViewManagement.ViewManagementViewScalingContract, 1.0), + static(Windows.UI.ViewManagement.IApplicationViewScalingStatics, Windows.UI.ViewManagement.ViewManagementViewScalingContract, 1.0) + ] + runtimeclass ApplicationViewScaling + { + [default] interface Windows.UI.ViewManagement.IApplicationViewScaling; + } + +#ifndef _WINDOWS_UI + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile), + static(Windows.UI.ViewManagement.IApplicationViewSwitcherStatics, Windows.Foundation.UniversalApiContract, 1.0), + static(Windows.UI.ViewManagement.IApplicationViewSwitcherStatics2, Windows.Foundation.UniversalApiContract, 1.0), + static(Windows.UI.ViewManagement.IApplicationViewSwitcherStatics3, Windows.Foundation.UniversalApiContract, 4.0), + threading(both) + ] + runtimeclass ApplicationViewSwitcher + { + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + marshaling_behavior(agile) + ] + runtimeclass ApplicationViewTitleBar + { + [contract(Windows.Foundation.UniversalApiContract, 1.0), default] interface Windows.UI.ViewManagement.IApplicationViewTitleBar; + } + + [ + activatable(Windows.Foundation.UniversalApiContract, 2.0), + contract(Windows.Foundation.UniversalApiContract, 2.0), + static(Windows.UI.ViewManagement.IApplicationViewTransferContextStatics, Windows.Foundation.UniversalApiContract, 2.0) + ] + runtimeclass ApplicationViewTransferContext + { + [contract(Windows.Foundation.UniversalApiContract, 2.0), default] interface Windows.UI.ViewManagement.IApplicationViewTransferContext; + } +#endif + + [ activatable(Windows.Foundation.UniversalApiContract, 1.0), contract(Windows.Foundation.UniversalApiContract, 1.0), marshaling_behavior(agile) @@ -408,6 +990,7 @@ [default] interface Windows.UI.ViewManagement.IUISettingsMessageDurationChangedEventArgs; } +#ifndef _WINDOWS_UI [ static(Windows.UI.ViewManagement.IUIViewSettingsStatics, Windows.Foundation.UniversalApiContract, 1.0), contract(Windows.Foundation.UniversalApiContract, 1.0), @@ -417,6 +1000,7 @@ { [default] interface Windows.UI.ViewManagement.IUIViewSettings; } +#endif [ static(Windows.UI.ViewManagement.IInputPaneStatics, Windows.Foundation.UniversalApiContract, 1.0), @@ -439,4 +1023,15 @@ { [default] interface Windows.UI.ViewManagement.IInputPaneVisibilityEventArgs; } + +#ifndef _WINDOWS_UI + [ + contract(Windows.Foundation.UniversalApiContract, 4.0), + static(Windows.UI.ViewManagement.IViewModePreferencesStatics, Windows.Foundation.UniversalApiContract, 4.0) + ] + runtimeclass ViewModePreferences + { + [contract(Windows.Foundation.UniversalApiContract, 4.0), default] interface Windows.UI.ViewManagement.IViewModePreferences; + } +#endif }
diff --git a/mingw-w64-headers/include/windows.ui.windowmanagement.idl b/mingw-w64-headers/include/windows.ui.windowmanagement.idl new file mode 100644 index 0000000..b6ca12c --- /dev/null +++ b/mingw-w64-headers/include/windows.ui.windowmanagement.idl
@@ -0,0 +1,188 @@ +/* + * Copyright 2025 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.system.idl"; +import "windows.ui.idl"; +import "windows.ui.composition.idl"; +#endif + +namespace Windows.UI.WindowManagement +{ + typedef enum WindowingEnvironmentKind WindowingEnvironmentKind; + + interface IDisplayRegion; + interface IWindowingEnvironment; + interface IWindowingEnvironmentAddedEventArgs; + interface IWindowingEnvironmentChangedEventArgs; + interface IWindowingEnvironmentRemovedEventArgs; + interface IWindowingEnvironmentStatics; + + runtimeclass DisplayRegion; + runtimeclass WindowingEnvironment; + runtimeclass WindowingEnvironmentAddedEventArgs; + runtimeclass WindowingEnvironmentChangedEventArgs; + runtimeclass WindowingEnvironmentRemovedEventArgs; + + declare { + interface Windows.Foundation.Collections.IIterable<Windows.UI.WindowManagement.DisplayRegion *>; + interface Windows.Foundation.Collections.IIterable<Windows.UI.WindowManagement.WindowingEnvironment *>; + interface Windows.Foundation.Collections.IIterator<Windows.UI.WindowManagement.DisplayRegion *>; + interface Windows.Foundation.Collections.IIterator<Windows.UI.WindowManagement.WindowingEnvironment *>; + interface Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.DisplayRegion *>; + interface Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.WindowingEnvironment *>; + interface Windows.Foundation.TypedEventHandler<Windows.UI.WindowManagement.DisplayRegion *, IInspectable *>; + interface Windows.Foundation.TypedEventHandler<Windows.UI.WindowManagement.WindowingEnvironment *, Windows.UI.WindowManagement.WindowingEnvironmentChangedEventArgs *>; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0) + ] + enum WindowingEnvironmentKind + { + Unknown = 0, + Overlapped = 1, + Tiled = 2, + }; + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + exclusiveto(Windows.UI.WindowManagement.DisplayRegion), + uuid(db50c3a2-4094-5f47-8cb1-ea01ddafaa94) + ] + interface IDisplayRegion : IInspectable + { + [propget] HRESULT DisplayMonitorDeviceId([out, retval] HSTRING *value); + [propget] HRESULT IsVisible([out, retval] boolean *value); + [propget] HRESULT WorkAreaOffset([out, retval] Windows.Foundation.Point *value); + [propget] HRESULT WorkAreaSize([out, retval] Windows.Foundation.Size *value); + [propget] HRESULT WindowingEnvironment([out, retval] Windows.UI.WindowManagement.WindowingEnvironment **value); + [eventadd] HRESULT Changed([in] Windows.Foundation.TypedEventHandler<Windows.UI.WindowManagement.DisplayRegion *, IInspectable *> *handler, [out, retval] EventRegistrationToken *token); + [eventremove] HRESULT Changed([in] EventRegistrationToken token); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + exclusiveto(Windows.UI.WindowManagement.WindowingEnvironment), + uuid(264363c0-2a49-5417-b3ae-48a71c63a3bd) + ] + interface IWindowingEnvironment : IInspectable + { + [propget] HRESULT IsEnabled([out, retval] boolean *value); + [propget] HRESULT Kind([out, retval] Windows.UI.WindowManagement.WindowingEnvironmentKind *value); + HRESULT GetDisplayRegions([out, retval] Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.DisplayRegion *> **result); + [eventadd] HRESULT Changed([in] Windows.Foundation.TypedEventHandler<Windows.UI.WindowManagement.WindowingEnvironment *, Windows.UI.WindowManagement.WindowingEnvironmentChangedEventArgs *> *handler, [out, retval] EventRegistrationToken *token); + [eventremove] HRESULT Changed([in] EventRegistrationToken token); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + exclusiveto(Windows.UI.WindowManagement.WindowingEnvironmentAddedEventArgs), + uuid(ff2a5b7f-f183-5c66-99b2-429082069299) + ] + interface IWindowingEnvironmentAddedEventArgs : IInspectable + { + [propget] HRESULT WindowingEnvironment([out, retval] Windows.UI.WindowManagement.WindowingEnvironment **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + exclusiveto(Windows.UI.WindowManagement.WindowingEnvironmentChangedEventArgs), + uuid(4160cfc6-023d-5e9a-b431-350e67dc978a) + ] + interface IWindowingEnvironmentChangedEventArgs : IInspectable + { + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + exclusiveto(Windows.UI.WindowManagement.WindowingEnvironmentRemovedEventArgs), + uuid(2e5b5473-beff-5e53-9316-7e775fe568b3) + ] + interface IWindowingEnvironmentRemovedEventArgs : IInspectable + { + [propget] HRESULT WindowingEnvironment([out, retval] Windows.UI.WindowManagement.WindowingEnvironment **value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + exclusiveto(Windows.UI.WindowManagement.WindowingEnvironment), + uuid(874e9fb7-c642-55ab-8aa2-162f734a9a72) + ] + interface IWindowingEnvironmentStatics : IInspectable + { + [overload("FindAll")] HRESULT FindAll([out, retval] Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.WindowingEnvironment *> **result); + [overload("FindAll")] HRESULT FindAllWithKind([in] Windows.UI.WindowManagement.WindowingEnvironmentKind kind, [out, retval] Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.WindowingEnvironment *> **result); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + marshaling_behavior(agile) + ] + runtimeclass DisplayRegion + { + [default] interface Windows.UI.WindowManagement.IDisplayRegion; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + marshaling_behavior(agile), + static(Windows.UI.WindowManagement.IWindowingEnvironmentStatics, Windows.Foundation.UniversalApiContract, 8.0), + threading(both) + ] + runtimeclass WindowingEnvironment + { + [default] interface Windows.UI.WindowManagement.IWindowingEnvironment; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + marshaling_behavior(agile) + ] + runtimeclass WindowingEnvironmentAddedEventArgs + { + [default] interface Windows.UI.WindowManagement.IWindowingEnvironmentAddedEventArgs; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + marshaling_behavior(agile) + ] + runtimeclass WindowingEnvironmentChangedEventArgs + { + [default] interface Windows.UI.WindowManagement.IWindowingEnvironmentChangedEventArgs; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 8.0), + marshaling_behavior(agile) + ] + runtimeclass WindowingEnvironmentRemovedEventArgs + { + [default] interface Windows.UI.WindowManagement.IWindowingEnvironmentRemovedEventArgs; + } +}