Hi Bernhard,
On 1/19/22 14:28, Bernhard Kölbl wrote:
+namespace Windows {
- namespace Media {
namespace SpeechRecognition {
declare {
interface Windows.Foundation.TypedEventHandler<Windows.Media.SpeechRecognition.SpeechContinuousRecognitionSession*, Windows.Media.SpeechRecognition.SpeechContinuousRecognitionCompletedEventArgs*>;
interface Windows.Foundation.TypedEventHandler<Windows.Media.SpeechRecognition.SpeechContinuousRecognitionSession*, Windows.Media.SpeechRecognition.SpeechContinuousRecognitionResultGeneratedEventArgs*>;
interface Windows.Foundation.Collections.IVector<HSTRING>;
interface Windows.Foundation.Collections.IIterable<HSTRING>;
interface Windows.Foundation.Collections.IIterator<HSTRING>;
interface Windows.Foundation.Collections.IIterable<HSTRING>;
interface Windows.Foundation.Collections.IVectorView<Windows.Media.SpeechRecognition.SpeechRecognitionResult*>;
interface Windows.Foundation.Collections.IVectorView<Windows.Media.SpeechRecognition.ISpeechRecognitionConstraint*>;
/* FIXME - This is broken in Widl.:
interface Windows.Foundation.Collections.IVectorView<HSTRING>;
interface Windows.Foundation.Collections.IMapView<HSTRING, Windows.Foundation.Collections.IVectorView<HSTRING>*>;
*/
Would be better to fix widl first then, I think.
Also note that for basic types we have the declare blocks in windows.foundation.idl in order to avoid having to declare them in every other idl. I'm not completely sure to remember how it's done in the windows sdk headers, looks like they have generated interfaces in every header.
Note that I haven't looked at the rest in detail, it's quite long and would be nice to split first. If some parts can be implemented progressively (even if it's just stubs) it's also probably better to interleave the IDL additions with some tests and implementation.