1
0
Fork 0
mirror of synced 2025-03-07 03:53:26 +01:00

include: Add ISystemMediaTransportControlsDisplayUpdater interface definition.

This commit is contained in:
Mohamad Al-Jaf 2023-09-28 03:05:08 -04:00 committed by Alexandre Julliard
parent 3cb90b60a5
commit 9a4dbd9a17
2 changed files with 81 additions and 1 deletions

View file

@ -215,7 +215,7 @@ static HRESULT WINAPI media_control_put_PlaybackStatus( ISystemMediaTransportCon
return S_OK;
}
static HRESULT WINAPI media_control_get_DisplayUpdater( ISystemMediaTransportControls *iface, __x_ABI_CWindows_CMedia_CISystemMediaTransportControlsDisplayUpdater **value )
static HRESULT WINAPI media_control_get_DisplayUpdater( ISystemMediaTransportControls *iface, ISystemMediaTransportControlsDisplayUpdater **value )
{
FIXME( "iface %p, value %p stub!\n", iface, value );
return E_NOTIMPL;

View file

@ -22,28 +22,40 @@
import "inspectable.idl";
import "windows.foundation.idl";
import "windows.storage.idl";
import "windows.storage.streams.idl";
namespace Windows.Media
{
typedef enum AudioProcessing AudioProcessing;
typedef enum MediaPlaybackStatus MediaPlaybackStatus;
typedef enum MediaPlaybackType MediaPlaybackType;
typedef enum SoundLevel SoundLevel;
typedef enum SystemMediaTransportControlsButton SystemMediaTransportControlsButton;
typedef enum SystemMediaTransportControlsProperty SystemMediaTransportControlsProperty;
interface IImageDisplayProperties;
interface IMediaControl;
interface IMediaMarker;
interface IMusicDisplayProperties;
interface IMusicDisplayProperties2;
interface IMusicDisplayProperties3;
interface ISystemMediaTransportControls;
interface ISystemMediaTransportControls2;
interface ISystemMediaTransportControlsButtonPressedEventArgs;
interface ISystemMediaTransportControlsDisplayUpdater;
interface ISystemMediaTransportControlsPropertyChangedEventArgs;
interface ISystemMediaTransportControlsStatics;
interface IVideoDisplayProperties;
interface IVideoDisplayProperties2;
runtimeclass ImageDisplayProperties;
runtimeclass MusicDisplayProperties;
runtimeclass SystemMediaTransportControls;
runtimeclass SystemMediaTransportControlsButtonPressedEventArgs;
runtimeclass SystemMediaTransportControlsDisplayUpdater;
runtimeclass SystemMediaTransportControlsPropertyChangedEventArgs;
runtimeclass VideoDisplayProperties;
declare
{
@ -76,6 +88,17 @@ namespace Windows.Media
Paused = 4,
};
[
contract(Windows.Foundation.UniversalApiContract, 1.0)
]
enum MediaPlaybackType
{
Unknown = 0,
Music = 1,
Video = 2,
Image = 3,
};
[
contract(Windows.Foundation.UniversalApiContract, 1.0)
]
@ -167,6 +190,30 @@ namespace Windows.Media
[eventremove] HRESULT PropertyChanged([in] EventRegistrationToken token);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.Media.SystemMediaTransportControlsDisplayUpdater),
uuid(8abbc53e-fa55-4ecf-ad8e-c984e5dd1550)
]
interface ISystemMediaTransportControlsDisplayUpdater : IInspectable
{
[propget] HRESULT Type([out, retval] Windows.Media.MediaPlaybackType *value);
[propput] HRESULT Type([in] Windows.Media.MediaPlaybackType value);
[propget] HRESULT AppMediaId([out, retval] HSTRING *value);
[propput] HRESULT AppMediaId([in] HSTRING value);
[propget] HRESULT Thumbnail([out, retval] Windows.Storage.Streams.RandomAccessStreamReference **value);
[propput] HRESULT Thumbnail([in] Windows.Storage.Streams.RandomAccessStreamReference *value);
[propget] HRESULT MusicProperties([out, retval] Windows.Media.MusicDisplayProperties **value);
[propget] HRESULT VideoProperties([out, retval] Windows.Media.VideoDisplayProperties **value);
[propget] HRESULT ImageProperties([out, retval] Windows.Media.ImageDisplayProperties **value);
HRESULT CopyFromFileAsync(
[in] Windows.Media.MediaPlaybackType type, [in] Windows.Storage.StorageFile *source,
[out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation
);
HRESULT ClearAll();
HRESULT Update();
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.Media.SystemMediaTransportControlsButtonPressedEventArgs),
@ -187,6 +234,28 @@ namespace Windows.Media
[propget] HRESULT Property([out, retval] Windows.Media.SystemMediaTransportControlsProperty *value);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(agile),
threading(both)
]
runtimeclass ImageDisplayProperties
{
[default] interface Windows.Media.IImageDisplayProperties;
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(agile),
threading(both)
]
runtimeclass MusicDisplayProperties
{
[default] interface Windows.Media.IMusicDisplayProperties;
[contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Media.IMusicDisplayProperties2;
[contract(Windows.Foundation.UniversalApiContract, 3.0)] interface Windows.Media.IMusicDisplayProperties3;
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(agile),
@ -226,4 +295,15 @@ namespace Windows.Media
{
[default] interface Windows.Media.ISystemMediaTransportControlsPropertyChangedEventArgs;
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(agile),
threading(both)
]
runtimeclass VideoDisplayProperties
{
[default] interface Windows.Media.IVideoDisplayProperties;
[contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Media.IVideoDisplayProperties2;
}
}