mirror of
https://gitlab.winehq.org/wine/wine.git
synced 2025-08-28 10:13:55 +02:00
292 lines
13 KiB
Text
292 lines
13 KiB
Text
/*
|
|
* 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.ui.idl";
|
|
#endif
|
|
|
|
namespace Windows.UI.ViewManagement.Core
|
|
{
|
|
typedef enum CoreInputViewKind CoreInputViewKind;
|
|
typedef enum CoreInputViewOcclusionKind CoreInputViewOcclusionKind;
|
|
typedef enum CoreInputViewXYFocusTransferDirection CoreInputViewXYFocusTransferDirection;
|
|
|
|
interface ICoreInputView;
|
|
interface ICoreInputView2;
|
|
interface ICoreInputView3;
|
|
interface ICoreInputView4;
|
|
interface ICoreInputViewHidingEventArgs;
|
|
interface ICoreInputViewOcclusion;
|
|
interface ICoreInputViewOcclusionsChangedEventArgs;
|
|
interface ICoreInputViewShowingEventArgs;
|
|
interface ICoreInputViewStatics;
|
|
interface ICoreInputViewStatics2;
|
|
interface ICoreInputViewTransferringXYFocusEventArgs;
|
|
|
|
runtimeclass CoreInputView;
|
|
runtimeclass CoreInputViewHidingEventArgs;
|
|
runtimeclass CoreInputViewOcclusion;
|
|
runtimeclass CoreInputViewOcclusionsChangedEventArgs;
|
|
runtimeclass CoreInputViewShowingEventArgs;
|
|
runtimeclass CoreInputViewTransferringXYFocusEventArgs;
|
|
|
|
declare
|
|
{
|
|
interface Windows.Foundation.Collections.IIterable<Windows.UI.ViewManagement.Core.CoreInputViewOcclusion *>;
|
|
interface Windows.Foundation.Collections.IIterator<Windows.UI.ViewManagement.Core.CoreInputViewOcclusion *>;
|
|
interface Windows.Foundation.Collections.IVectorView<Windows.UI.ViewManagement.Core.CoreInputViewOcclusion *>;
|
|
interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.Core.CoreInputView *, IInspectable *>;
|
|
interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.Core.CoreInputView *, Windows.UI.ViewManagement.Core.CoreInputViewHidingEventArgs *>;
|
|
interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.Core.CoreInputView *, Windows.UI.ViewManagement.Core.CoreInputViewOcclusionsChangedEventArgs *>;
|
|
interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.Core.CoreInputView *, Windows.UI.ViewManagement.Core.CoreInputViewShowingEventArgs *>;
|
|
interface Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.Core.CoreInputView *, Windows.UI.ViewManagement.Core.CoreInputViewTransferringXYFocusEventArgs *>;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 7.0)
|
|
]
|
|
enum CoreInputViewKind
|
|
{
|
|
Default = 0,
|
|
Keyboard = 1,
|
|
Handwriting = 2,
|
|
Emoji = 3,
|
|
[contract(Windows.Foundation.UniversalApiContract, 10.0)] Symbols = 4
|
|
};
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 5.0)
|
|
]
|
|
enum CoreInputViewOcclusionKind
|
|
{
|
|
Docked = 0,
|
|
Floating = 1,
|
|
Overlay = 2
|
|
};
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 6.0)
|
|
]
|
|
enum CoreInputViewXYFocusTransferDirection
|
|
{
|
|
Up = 0,
|
|
Right = 1,
|
|
Down = 2,
|
|
Left = 3
|
|
};
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 5.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputView),
|
|
uuid(c770cd7a-7001-4c32-bf94-25c1f554cbf1)
|
|
]
|
|
interface ICoreInputView : IInspectable
|
|
{
|
|
[eventadd] HRESULT OcclusionsChanged([in] Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.Core.CoreInputView *, Windows.UI.ViewManagement.Core.CoreInputViewOcclusionsChangedEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
|
|
[eventremove] HRESULT OcclusionsChanged([in] EventRegistrationToken token);
|
|
HRESULT GetCoreInputViewOcclusions([out, retval] Windows.Foundation.Collections.IVectorView<Windows.UI.ViewManagement.Core.CoreInputViewOcclusion *> **result);
|
|
HRESULT TryShowPrimaryView([out, retval] boolean *result);
|
|
HRESULT TryHidePrimaryView([out, retval] boolean *result);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 6.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputView),
|
|
uuid(0ed726c1-e09a-4ae8-aedf-dfa4857d1a01)
|
|
]
|
|
interface ICoreInputView2 : IInspectable
|
|
{
|
|
[eventadd] HRESULT XYFocusTransferringFromPrimaryView([in] Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.Core.CoreInputView *, Windows.UI.ViewManagement.Core.CoreInputViewTransferringXYFocusEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
|
|
[eventremove] HRESULT XYFocusTransferringFromPrimaryView([in] EventRegistrationToken token);
|
|
[eventadd] HRESULT XYFocusTransferredToPrimaryView([in] Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.Core.CoreInputView *, IInspectable *> *handler, [out, retval] EventRegistrationToken *token);
|
|
[eventremove] HRESULT XYFocusTransferredToPrimaryView([in] EventRegistrationToken token);
|
|
HRESULT TryTransferXYFocusToPrimaryView([in] Windows.Foundation.Rect origin, [in] Windows.UI.ViewManagement.Core.CoreInputViewXYFocusTransferDirection direction, [out, retval] boolean *result);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 7.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputView),
|
|
uuid(bc941653-3ab9-4849-8f58-46e7f0353cfc)
|
|
]
|
|
interface ICoreInputView3 : IInspectable
|
|
{
|
|
[overload("TryShow")] HRESULT TryShow([out, retval] boolean *result);
|
|
[overload("TryShow")] HRESULT TryShowWithKind([in] Windows.UI.ViewManagement.Core.CoreInputViewKind type, [out, retval] boolean *result);
|
|
HRESULT TryHide([out, retval] boolean *result);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 10.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputView),
|
|
uuid(002863d6-d9ef-57eb-8cef-77f6ce1b7ee7)
|
|
]
|
|
interface ICoreInputView4 : IInspectable
|
|
{
|
|
[eventadd] HRESULT PrimaryViewShowing([in] Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.Core.CoreInputView *, Windows.UI.ViewManagement.Core.CoreInputViewShowingEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
|
|
[eventremove] HRESULT PrimaryViewShowing([in] EventRegistrationToken token);
|
|
[eventadd] HRESULT PrimaryViewHiding([in] Windows.Foundation.TypedEventHandler<Windows.UI.ViewManagement.Core.CoreInputView *, Windows.UI.ViewManagement.Core.CoreInputViewHidingEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
|
|
[eventremove] HRESULT PrimaryViewHiding([in] EventRegistrationToken token);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 10.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputViewHidingEventArgs),
|
|
uuid(eada47bd-bac5-5336-848d-41083584daad)
|
|
]
|
|
interface ICoreInputViewHidingEventArgs : IInspectable
|
|
{
|
|
HRESULT TryCancel([out, retval] boolean *result);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 5.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputViewOcclusion),
|
|
uuid(cc36ce06-3865-4177-b5f5-8b65e0b9ce84)
|
|
]
|
|
interface ICoreInputViewOcclusion : IInspectable
|
|
{
|
|
[propget] HRESULT OccludingRect([out, retval] Windows.Foundation.Rect *rect);
|
|
[propget] HRESULT OcclusionKind([out, retval] Windows.UI.ViewManagement.Core.CoreInputViewOcclusionKind *kind);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 5.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputViewOcclusionsChangedEventArgs),
|
|
uuid(be1027e8-b3ee-4df7-9554-89cdc66082c2)
|
|
]
|
|
interface ICoreInputViewOcclusionsChangedEventArgs : IInspectable
|
|
{
|
|
[propget] HRESULT Occlusions([out, retval] Windows.Foundation.Collections.IVectorView<Windows.UI.ViewManagement.Core.CoreInputViewOcclusion *> **value);
|
|
[propget] HRESULT Handled([out, retval] boolean *value);
|
|
[propput] HRESULT Handled([in] boolean value);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 10.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputViewShowingEventArgs),
|
|
uuid(ca52261b-fb9e-5daf-a98c-262b8b76af50)
|
|
]
|
|
interface ICoreInputViewShowingEventArgs : IInspectable
|
|
{
|
|
HRESULT TryCancel([out, retval] boolean *result);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 5.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputView),
|
|
uuid(7d9b97cd-edbe-49cf-a54f-337de052907f)
|
|
]
|
|
interface ICoreInputViewStatics : IInspectable
|
|
{
|
|
HRESULT GetForCurrentView([out, retval] Windows.UI.ViewManagement.Core.CoreInputView **result);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputView),
|
|
uuid(7ebc0862-d049-4e52-87b0-1e90e98c49ed)
|
|
]
|
|
interface ICoreInputViewStatics2 : IInspectable
|
|
{
|
|
HRESULT GetForUIContext([in] Windows.UI.UIContext *context, [out, retval] Windows.UI.ViewManagement.Core.CoreInputView **result);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 6.0),
|
|
exclusiveto(Windows.UI.ViewManagement.Core.CoreInputViewTransferringXYFocusEventArgs),
|
|
uuid(04de169f-ba02-4850-8b55-d82d03ba6d7f)
|
|
]
|
|
interface ICoreInputViewTransferringXYFocusEventArgs : IInspectable
|
|
{
|
|
[propget] HRESULT Origin([out, retval] Windows.Foundation.Rect *value);
|
|
[propget] HRESULT Direction([out, retval] Windows.UI.ViewManagement.Core.CoreInputViewXYFocusTransferDirection *value);
|
|
[propput] HRESULT TransferHandled([in] boolean value);
|
|
[propget] HRESULT TransferHandled([out, retval] boolean *value);
|
|
[propput] HRESULT KeepPrimaryViewVisible([in] boolean value);
|
|
[propget] HRESULT KeepPrimaryViewVisible([out, retval] boolean *value);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 5.0),
|
|
marshaling_behavior(agile),
|
|
static(Windows.UI.ViewManagement.Core.ICoreInputViewStatics, Windows.Foundation.UniversalApiContract, 5.0),
|
|
static(Windows.UI.ViewManagement.Core.ICoreInputViewStatics2, Windows.Foundation.UniversalApiContract, 8.0),
|
|
threading(both)
|
|
]
|
|
runtimeclass CoreInputView
|
|
{
|
|
[default] interface Windows.UI.ViewManagement.Core.ICoreInputView;
|
|
[contract(Windows.Foundation.UniversalApiContract, 6.0)] interface Windows.UI.ViewManagement.Core.ICoreInputView2;
|
|
[contract(Windows.Foundation.UniversalApiContract, 7.0)] interface Windows.UI.ViewManagement.Core.ICoreInputView3;
|
|
[contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.UI.ViewManagement.Core.ICoreInputView4;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 10.0),
|
|
marshaling_behavior(agile)
|
|
]
|
|
runtimeclass CoreInputViewHidingEventArgs
|
|
{
|
|
[default] interface Windows.UI.ViewManagement.Core.ICoreInputViewHidingEventArgs;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 5.0),
|
|
marshaling_behavior(agile)
|
|
]
|
|
runtimeclass CoreInputViewOcclusion
|
|
{
|
|
[default] interface Windows.UI.ViewManagement.Core.ICoreInputViewOcclusion;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 5.0),
|
|
marshaling_behavior(agile)
|
|
]
|
|
runtimeclass CoreInputViewOcclusionsChangedEventArgs
|
|
{
|
|
[default] interface Windows.UI.ViewManagement.Core.ICoreInputViewOcclusionsChangedEventArgs;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 10.0),
|
|
marshaling_behavior(agile)
|
|
]
|
|
runtimeclass CoreInputViewShowingEventArgs
|
|
{
|
|
[default] interface Windows.UI.ViewManagement.Core.ICoreInputViewShowingEventArgs;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 6.0),
|
|
marshaling_behavior(agile)
|
|
]
|
|
runtimeclass CoreInputViewTransferringXYFocusEventArgs
|
|
{
|
|
[default] interface Windows.UI.ViewManagement.Core.ICoreInputViewTransferringXYFocusEventArgs;
|
|
}
|
|
}
|