| /* | |
| * 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 | |
| import "inspectable.idl"; | |
| import "asyncinfo.idl"; | |
| import "eventtoken.idl"; | |
| import "windowscontracts.idl"; | |
| import "windows.foundation.idl"; | |
| import "windows.ui.idl"; | |
| 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.IVector<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; | |
| } | |
| } |