winrt-Windows.Graphics.Capture 2.1.0__tar.gz → 2.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (20) hide show
  1. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/PKG-INFO +12 -11
  2. winrt_windows_graphics_capture-2.3.0/all-requirements.txt +11 -0
  3. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/py.Windows.Graphics.Capture.cpp +486 -37
  4. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/pyproject.toml +3 -2
  5. winrt_windows_graphics_capture-2.3.0/pywinrt-version.txt +1 -0
  6. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/requirements.txt +2 -2
  7. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/winrt/_winrt_windows_graphics_capture.pyi +19 -2
  8. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/winrt/windows/graphics/capture/__init__.py +6 -1
  9. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/winrt_Windows.Graphics.Capture.egg-info/PKG-INFO +12 -11
  10. winrt_windows_graphics_capture-2.3.0/winrt_Windows.Graphics.Capture.egg-info/requires.txt +12 -0
  11. winrt_windows_graphics_capture-2.1.0/all-requirements.txt +0 -10
  12. winrt_windows_graphics_capture-2.1.0/pywinrt-version.txt +0 -1
  13. winrt_windows_graphics_capture-2.1.0/winrt_Windows.Graphics.Capture.egg-info/requires.txt +0 -11
  14. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/README.md +0 -0
  15. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/setup.cfg +0 -0
  16. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/setup.py +0 -0
  17. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/winrt/windows/graphics/capture/py.typed +0 -0
  18. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/winrt_Windows.Graphics.Capture.egg-info/SOURCES.txt +0 -0
  19. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/winrt_Windows.Graphics.Capture.egg-info/dependency_links.txt +0 -0
  20. {winrt_windows_graphics_capture-2.1.0 → winrt_windows_graphics_capture-2.3.0}/winrt_Windows.Graphics.Capture.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: winrt-Windows.Graphics.Capture
3
- Version: 2.1.0
3
+ Version: 2.3.0
4
4
  Summary: Python projection of Windows Runtime (WinRT) APIs
5
5
  License: MIT
6
6
  Project-URL: Documentation, https://pywinrt.readthedocs.io
@@ -10,18 +10,19 @@ Classifier: Operating System :: Microsoft :: Windows
10
10
  Classifier: Programming Language :: Python :: 3
11
11
  Classifier: Programming Language :: Python :: Implementation :: CPython
12
12
  Classifier: Intended Audience :: Developers
13
- Requires-Python: <3.13,>=3.9
13
+ Requires-Python: <3.14,>=3.9
14
14
  Description-Content-Type: text/markdown
15
- Requires-Dist: winrt-runtime==2.1.0
15
+ Requires-Dist: winrt-runtime==2.3.0
16
16
  Provides-Extra: all
17
- Requires-Dist: winrt-Windows.Foundation[all]==2.1.0; extra == "all"
18
- Requires-Dist: winrt-Windows.Graphics[all]==2.1.0; extra == "all"
19
- Requires-Dist: winrt-Windows.Graphics.DirectX[all]==2.1.0; extra == "all"
20
- Requires-Dist: winrt-Windows.Graphics.DirectX.Direct3D11[all]==2.1.0; extra == "all"
21
- Requires-Dist: winrt-Windows.Security.Authorization.AppCapabilityAccess[all]==2.1.0; extra == "all"
22
- Requires-Dist: winrt-Windows.System[all]==2.1.0; extra == "all"
23
- Requires-Dist: winrt-Windows.UI[all]==2.1.0; extra == "all"
24
- Requires-Dist: winrt-Windows.UI.Composition[all]==2.1.0; extra == "all"
17
+ Requires-Dist: winrt-Windows.Foundation[all]==2.3.0; extra == "all"
18
+ Requires-Dist: winrt-Windows.Foundation.Collections[all]==2.3.0; extra == "all"
19
+ Requires-Dist: winrt-Windows.Graphics[all]==2.3.0; extra == "all"
20
+ Requires-Dist: winrt-Windows.Graphics.DirectX[all]==2.3.0; extra == "all"
21
+ Requires-Dist: winrt-Windows.Graphics.DirectX.Direct3D11[all]==2.3.0; extra == "all"
22
+ Requires-Dist: winrt-Windows.Security.Authorization.AppCapabilityAccess[all]==2.3.0; extra == "all"
23
+ Requires-Dist: winrt-Windows.System[all]==2.3.0; extra == "all"
24
+ Requires-Dist: winrt-Windows.UI[all]==2.3.0; extra == "all"
25
+ Requires-Dist: winrt-Windows.UI.Composition[all]==2.3.0; extra == "all"
25
26
 
26
27
  <!-- warning: Please don't edit this file. It was automatically generated. -->
27
28
 
@@ -0,0 +1,11 @@
1
+ # WARNING: Please don't edit this file. It was generated by Python/WinRT v2.3.0
2
+
3
+ winrt-Windows.Foundation[all]==2.3.0
4
+ winrt-Windows.Foundation.Collections[all]==2.3.0
5
+ winrt-Windows.Graphics[all]==2.3.0
6
+ winrt-Windows.Graphics.DirectX[all]==2.3.0
7
+ winrt-Windows.Graphics.DirectX.Direct3D11[all]==2.3.0
8
+ winrt-Windows.Security.Authorization.AppCapabilityAccess[all]==2.3.0
9
+ winrt-Windows.System[all]==2.3.0
10
+ winrt-Windows.UI[all]==2.3.0
11
+ winrt-Windows.UI.Composition[all]==2.3.0
@@ -1,4 +1,4 @@
1
- // WARNING: Please don't edit this file. It was generated by Python/WinRT v2.1.0
1
+ // WARNING: Please don't edit this file. It was generated by Python/WinRT v2.3.0
2
2
 
3
3
  #include "py.Windows.Graphics.Capture.h"
4
4
 
@@ -29,7 +29,14 @@ namespace py::cpp::Windows::Graphics::Capture
29
29
  {
30
30
  try
31
31
  {
32
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFrame", L"Close", 0))
32
+ static std::optional<bool> is_overload_present{};
33
+
34
+ if (!is_overload_present.has_value())
35
+ {
36
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFrame", L"Close", 0);
37
+ }
38
+
39
+ if (!is_overload_present.value())
33
40
  {
34
41
  py::set_arg_count_version_error(0);
35
42
  return nullptr;
@@ -55,7 +62,14 @@ namespace py::cpp::Windows::Graphics::Capture
55
62
  {
56
63
  try
57
64
  {
58
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFrame", L"ContentSize"))
65
+ static std::optional<bool> is_property_present{};
66
+
67
+ if (!is_property_present.has_value())
68
+ {
69
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFrame", L"ContentSize");
70
+ }
71
+
72
+ if (!is_property_present.value())
59
73
  {
60
74
  PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
61
75
  return nullptr;
@@ -74,7 +88,14 @@ namespace py::cpp::Windows::Graphics::Capture
74
88
  {
75
89
  try
76
90
  {
77
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFrame", L"Surface"))
91
+ static std::optional<bool> is_property_present{};
92
+
93
+ if (!is_property_present.has_value())
94
+ {
95
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFrame", L"Surface");
96
+ }
97
+
98
+ if (!is_property_present.value())
78
99
  {
79
100
  PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
80
101
  return nullptr;
@@ -93,7 +114,14 @@ namespace py::cpp::Windows::Graphics::Capture
93
114
  {
94
115
  try
95
116
  {
96
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFrame", L"SystemRelativeTime"))
117
+ static std::optional<bool> is_property_present{};
118
+
119
+ if (!is_property_present.has_value())
120
+ {
121
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFrame", L"SystemRelativeTime");
122
+ }
123
+
124
+ if (!is_property_present.value())
97
125
  {
98
126
  PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
99
127
  return nullptr;
@@ -108,6 +136,58 @@ namespace py::cpp::Windows::Graphics::Capture
108
136
  }
109
137
  }
110
138
 
139
+ static PyObject* Direct3D11CaptureFrame_get_DirtyRegionMode(py::wrapper::Windows::Graphics::Capture::Direct3D11CaptureFrame* self, void* /*unused*/) noexcept
140
+ {
141
+ try
142
+ {
143
+ static std::optional<bool> is_property_present{};
144
+
145
+ if (!is_property_present.has_value())
146
+ {
147
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFrame", L"DirtyRegionMode");
148
+ }
149
+
150
+ if (!is_property_present.value())
151
+ {
152
+ PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
153
+ return nullptr;
154
+ }
155
+
156
+ return py::convert(self->obj.DirtyRegionMode());
157
+ }
158
+ catch (...)
159
+ {
160
+ py::to_PyErr();
161
+ return nullptr;
162
+ }
163
+ }
164
+
165
+ static PyObject* Direct3D11CaptureFrame_get_DirtyRegions(py::wrapper::Windows::Graphics::Capture::Direct3D11CaptureFrame* self, void* /*unused*/) noexcept
166
+ {
167
+ try
168
+ {
169
+ static std::optional<bool> is_property_present{};
170
+
171
+ if (!is_property_present.has_value())
172
+ {
173
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFrame", L"DirtyRegions");
174
+ }
175
+
176
+ if (!is_property_present.value())
177
+ {
178
+ PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
179
+ return nullptr;
180
+ }
181
+
182
+ return py::convert(self->obj.DirtyRegions());
183
+ }
184
+ catch (...)
185
+ {
186
+ py::to_PyErr();
187
+ return nullptr;
188
+ }
189
+ }
190
+
111
191
  static PyObject* _assign_array_Direct3D11CaptureFrame(PyObject* /*unused*/, PyObject* arg) noexcept
112
192
  {
113
193
  auto array = std::make_unique<py::ComArray<winrt::Windows::Graphics::Capture::Direct3D11CaptureFrame>>();
@@ -164,6 +244,8 @@ namespace py::cpp::Windows::Graphics::Capture
164
244
  { "content_size", reinterpret_cast<getter>(Direct3D11CaptureFrame_get_ContentSize), nullptr, nullptr, nullptr },
165
245
  { "surface", reinterpret_cast<getter>(Direct3D11CaptureFrame_get_Surface), nullptr, nullptr, nullptr },
166
246
  { "system_relative_time", reinterpret_cast<getter>(Direct3D11CaptureFrame_get_SystemRelativeTime), nullptr, nullptr, nullptr },
247
+ { "dirty_region_mode", reinterpret_cast<getter>(Direct3D11CaptureFrame_get_DirtyRegionMode), nullptr, nullptr, nullptr },
248
+ { "dirty_regions", reinterpret_cast<getter>(Direct3D11CaptureFrame_get_DirtyRegions), nullptr, nullptr, nullptr },
167
249
  { }
168
250
  };
169
251
 
@@ -207,7 +289,14 @@ namespace py::cpp::Windows::Graphics::Capture
207
289
  {
208
290
  try
209
291
  {
210
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"Close", 0))
292
+ static std::optional<bool> is_overload_present{};
293
+
294
+ if (!is_overload_present.has_value())
295
+ {
296
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"Close", 0);
297
+ }
298
+
299
+ if (!is_overload_present.value())
211
300
  {
212
301
  py::set_arg_count_version_error(0);
213
302
  return nullptr;
@@ -237,7 +326,14 @@ namespace py::cpp::Windows::Graphics::Capture
237
326
  {
238
327
  try
239
328
  {
240
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"Create", 4))
329
+ static std::optional<bool> is_overload_present{};
330
+
331
+ if (!is_overload_present.has_value())
332
+ {
333
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"Create", 4);
334
+ }
335
+
336
+ if (!is_overload_present.value())
241
337
  {
242
338
  py::set_arg_count_version_error(4);
243
339
  return nullptr;
@@ -271,7 +367,14 @@ namespace py::cpp::Windows::Graphics::Capture
271
367
  {
272
368
  try
273
369
  {
274
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"CreateCaptureSession", 1))
370
+ static std::optional<bool> is_overload_present{};
371
+
372
+ if (!is_overload_present.has_value())
373
+ {
374
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"CreateCaptureSession", 1);
375
+ }
376
+
377
+ if (!is_overload_present.value())
275
378
  {
276
379
  py::set_arg_count_version_error(1);
277
380
  return nullptr;
@@ -302,7 +405,14 @@ namespace py::cpp::Windows::Graphics::Capture
302
405
  {
303
406
  try
304
407
  {
305
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"CreateFreeThreaded", 4))
408
+ static std::optional<bool> is_overload_present{};
409
+
410
+ if (!is_overload_present.has_value())
411
+ {
412
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"CreateFreeThreaded", 4);
413
+ }
414
+
415
+ if (!is_overload_present.value())
306
416
  {
307
417
  py::set_arg_count_version_error(4);
308
418
  return nullptr;
@@ -336,7 +446,14 @@ namespace py::cpp::Windows::Graphics::Capture
336
446
  {
337
447
  try
338
448
  {
339
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"Recreate", 4))
449
+ static std::optional<bool> is_overload_present{};
450
+
451
+ if (!is_overload_present.has_value())
452
+ {
453
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"Recreate", 4);
454
+ }
455
+
456
+ if (!is_overload_present.value())
340
457
  {
341
458
  py::set_arg_count_version_error(4);
342
459
  return nullptr;
@@ -371,7 +488,14 @@ namespace py::cpp::Windows::Graphics::Capture
371
488
  {
372
489
  try
373
490
  {
374
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"TryGetNextFrame", 0))
491
+ static std::optional<bool> is_overload_present{};
492
+
493
+ if (!is_overload_present.has_value())
494
+ {
495
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"TryGetNextFrame", 0);
496
+ }
497
+
498
+ if (!is_overload_present.value())
375
499
  {
376
500
  py::set_arg_count_version_error(0);
377
501
  return nullptr;
@@ -396,7 +520,14 @@ namespace py::cpp::Windows::Graphics::Capture
396
520
  {
397
521
  try
398
522
  {
399
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"DispatcherQueue"))
523
+ static std::optional<bool> is_property_present{};
524
+
525
+ if (!is_property_present.has_value())
526
+ {
527
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"DispatcherQueue");
528
+ }
529
+
530
+ if (!is_property_present.value())
400
531
  {
401
532
  PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
402
533
  return nullptr;
@@ -415,7 +546,14 @@ namespace py::cpp::Windows::Graphics::Capture
415
546
  {
416
547
  try
417
548
  {
418
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsEventPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"FrameArrived"))
549
+ static std::optional<bool> is_event_present{};
550
+
551
+ if (!is_event_present.has_value())
552
+ {
553
+ is_event_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsEventPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"FrameArrived");
554
+ }
555
+
556
+ if (!is_event_present.value())
419
557
  {
420
558
  PyErr_SetString(PyExc_AttributeError, "event is not available in this version of Windows");
421
559
  return nullptr;
@@ -436,7 +574,14 @@ namespace py::cpp::Windows::Graphics::Capture
436
574
  {
437
575
  try
438
576
  {
439
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsEventPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"FrameArrived"))
577
+ static std::optional<bool> is_event_present{};
578
+
579
+ if (!is_event_present.has_value())
580
+ {
581
+ is_event_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsEventPresent(L"Windows.Graphics.Capture.Direct3D11CaptureFramePool", L"FrameArrived");
582
+ }
583
+
584
+ if (!is_event_present.value())
440
585
  {
441
586
  PyErr_SetString(PyExc_AttributeError, "event is not available in this version of Windows");
442
587
  return nullptr;
@@ -575,7 +720,14 @@ namespace py::cpp::Windows::Graphics::Capture
575
720
  {
576
721
  try
577
722
  {
578
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureAccess", L"RequestAccessAsync", 1))
723
+ static std::optional<bool> is_overload_present{};
724
+
725
+ if (!is_overload_present.has_value())
726
+ {
727
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureAccess", L"RequestAccessAsync", 1);
728
+ }
729
+
730
+ if (!is_overload_present.value())
579
731
  {
580
732
  py::set_arg_count_version_error(1);
581
733
  return nullptr;
@@ -671,7 +823,14 @@ namespace py::cpp::Windows::Graphics::Capture
671
823
  {
672
824
  try
673
825
  {
674
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"CreateFromVisual", 1))
826
+ static std::optional<bool> is_overload_present{};
827
+
828
+ if (!is_overload_present.has_value())
829
+ {
830
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"CreateFromVisual", 1);
831
+ }
832
+
833
+ if (!is_overload_present.value())
675
834
  {
676
835
  py::set_arg_count_version_error(1);
677
836
  return nullptr;
@@ -702,7 +861,14 @@ namespace py::cpp::Windows::Graphics::Capture
702
861
  {
703
862
  try
704
863
  {
705
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"TryCreateFromDisplayId", 1))
864
+ static std::optional<bool> is_overload_present{};
865
+
866
+ if (!is_overload_present.has_value())
867
+ {
868
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"TryCreateFromDisplayId", 1);
869
+ }
870
+
871
+ if (!is_overload_present.value())
706
872
  {
707
873
  py::set_arg_count_version_error(1);
708
874
  return nullptr;
@@ -733,7 +899,14 @@ namespace py::cpp::Windows::Graphics::Capture
733
899
  {
734
900
  try
735
901
  {
736
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"TryCreateFromWindowId", 1))
902
+ static std::optional<bool> is_overload_present{};
903
+
904
+ if (!is_overload_present.has_value())
905
+ {
906
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"TryCreateFromWindowId", 1);
907
+ }
908
+
909
+ if (!is_overload_present.value())
737
910
  {
738
911
  py::set_arg_count_version_error(1);
739
912
  return nullptr;
@@ -760,7 +933,14 @@ namespace py::cpp::Windows::Graphics::Capture
760
933
  {
761
934
  try
762
935
  {
763
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"DisplayName"))
936
+ static std::optional<bool> is_property_present{};
937
+
938
+ if (!is_property_present.has_value())
939
+ {
940
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"DisplayName");
941
+ }
942
+
943
+ if (!is_property_present.value())
764
944
  {
765
945
  PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
766
946
  return nullptr;
@@ -779,7 +959,14 @@ namespace py::cpp::Windows::Graphics::Capture
779
959
  {
780
960
  try
781
961
  {
782
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"Size"))
962
+ static std::optional<bool> is_property_present{};
963
+
964
+ if (!is_property_present.has_value())
965
+ {
966
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"Size");
967
+ }
968
+
969
+ if (!is_property_present.value())
783
970
  {
784
971
  PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
785
972
  return nullptr;
@@ -798,7 +985,14 @@ namespace py::cpp::Windows::Graphics::Capture
798
985
  {
799
986
  try
800
987
  {
801
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsEventPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"Closed"))
988
+ static std::optional<bool> is_event_present{};
989
+
990
+ if (!is_event_present.has_value())
991
+ {
992
+ is_event_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsEventPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"Closed");
993
+ }
994
+
995
+ if (!is_event_present.value())
802
996
  {
803
997
  PyErr_SetString(PyExc_AttributeError, "event is not available in this version of Windows");
804
998
  return nullptr;
@@ -819,7 +1013,14 @@ namespace py::cpp::Windows::Graphics::Capture
819
1013
  {
820
1014
  try
821
1015
  {
822
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsEventPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"Closed"))
1016
+ static std::optional<bool> is_event_present{};
1017
+
1018
+ if (!is_event_present.has_value())
1019
+ {
1020
+ is_event_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsEventPresent(L"Windows.Graphics.Capture.GraphicsCaptureItem", L"Closed");
1021
+ }
1022
+
1023
+ if (!is_event_present.value())
823
1024
  {
824
1025
  PyErr_SetString(PyExc_AttributeError, "event is not available in this version of Windows");
825
1026
  return nullptr;
@@ -933,7 +1134,7 @@ namespace py::cpp::Windows::Graphics::Capture
933
1134
  {
934
1135
  try
935
1136
  {
936
- winrt::Windows::Graphics::Capture::GraphicsCapturePicker instance{ };
1137
+ winrt::Windows::Graphics::Capture::GraphicsCapturePicker instance{};
937
1138
  return py::wrap(instance, type);
938
1139
  }
939
1140
  catch (...)
@@ -965,7 +1166,14 @@ namespace py::cpp::Windows::Graphics::Capture
965
1166
  {
966
1167
  try
967
1168
  {
968
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCapturePicker", L"PickSingleItemAsync", 0))
1169
+ static std::optional<bool> is_overload_present{};
1170
+
1171
+ if (!is_overload_present.has_value())
1172
+ {
1173
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCapturePicker", L"PickSingleItemAsync", 0);
1174
+ }
1175
+
1176
+ if (!is_overload_present.value())
969
1177
  {
970
1178
  py::set_arg_count_version_error(0);
971
1179
  return nullptr;
@@ -1061,7 +1269,14 @@ namespace py::cpp::Windows::Graphics::Capture
1061
1269
  {
1062
1270
  try
1063
1271
  {
1064
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"Close", 0))
1272
+ static std::optional<bool> is_overload_present{};
1273
+
1274
+ if (!is_overload_present.has_value())
1275
+ {
1276
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"Close", 0);
1277
+ }
1278
+
1279
+ if (!is_overload_present.value())
1065
1280
  {
1066
1281
  py::set_arg_count_version_error(0);
1067
1282
  return nullptr;
@@ -1091,7 +1306,14 @@ namespace py::cpp::Windows::Graphics::Capture
1091
1306
  {
1092
1307
  try
1093
1308
  {
1094
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IsSupported", 0))
1309
+ static std::optional<bool> is_overload_present{};
1310
+
1311
+ if (!is_overload_present.has_value())
1312
+ {
1313
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IsSupported", 0);
1314
+ }
1315
+
1316
+ if (!is_overload_present.value())
1095
1317
  {
1096
1318
  py::set_arg_count_version_error(0);
1097
1319
  return nullptr;
@@ -1120,7 +1342,14 @@ namespace py::cpp::Windows::Graphics::Capture
1120
1342
  {
1121
1343
  try
1122
1344
  {
1123
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"StartCapture", 0))
1345
+ static std::optional<bool> is_overload_present{};
1346
+
1347
+ if (!is_overload_present.has_value())
1348
+ {
1349
+ is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"StartCapture", 0);
1350
+ }
1351
+
1352
+ if (!is_overload_present.value())
1124
1353
  {
1125
1354
  py::set_arg_count_version_error(0);
1126
1355
  return nullptr;
@@ -1146,7 +1375,14 @@ namespace py::cpp::Windows::Graphics::Capture
1146
1375
  {
1147
1376
  try
1148
1377
  {
1149
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IsCursorCaptureEnabled"))
1378
+ static std::optional<bool> is_property_present{};
1379
+
1380
+ if (!is_property_present.has_value())
1381
+ {
1382
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IsCursorCaptureEnabled");
1383
+ }
1384
+
1385
+ if (!is_property_present.value())
1150
1386
  {
1151
1387
  PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
1152
1388
  return nullptr;
@@ -1171,7 +1407,14 @@ namespace py::cpp::Windows::Graphics::Capture
1171
1407
 
1172
1408
  try
1173
1409
  {
1174
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IsCursorCaptureEnabled"))
1410
+ static std::optional<bool> is_property_present{};
1411
+
1412
+ if (!is_property_present.has_value())
1413
+ {
1414
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IsCursorCaptureEnabled");
1415
+ }
1416
+
1417
+ if (!is_property_present.value())
1175
1418
  {
1176
1419
  PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
1177
1420
  return -1;
@@ -1193,7 +1436,14 @@ namespace py::cpp::Windows::Graphics::Capture
1193
1436
  {
1194
1437
  try
1195
1438
  {
1196
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IsBorderRequired"))
1439
+ static std::optional<bool> is_property_present{};
1440
+
1441
+ if (!is_property_present.has_value())
1442
+ {
1443
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IsBorderRequired");
1444
+ }
1445
+
1446
+ if (!is_property_present.value())
1197
1447
  {
1198
1448
  PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
1199
1449
  return nullptr;
@@ -1218,7 +1468,14 @@ namespace py::cpp::Windows::Graphics::Capture
1218
1468
 
1219
1469
  try
1220
1470
  {
1221
- if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IsBorderRequired"))
1471
+ static std::optional<bool> is_property_present{};
1472
+
1473
+ if (!is_property_present.has_value())
1474
+ {
1475
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IsBorderRequired");
1476
+ }
1477
+
1478
+ if (!is_property_present.value())
1222
1479
  {
1223
1480
  PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
1224
1481
  return -1;
@@ -1236,6 +1493,189 @@ namespace py::cpp::Windows::Graphics::Capture
1236
1493
  }
1237
1494
  }
1238
1495
 
1496
+ static PyObject* GraphicsCaptureSession_get_DirtyRegionMode(py::wrapper::Windows::Graphics::Capture::GraphicsCaptureSession* self, void* /*unused*/) noexcept
1497
+ {
1498
+ try
1499
+ {
1500
+ static std::optional<bool> is_property_present{};
1501
+
1502
+ if (!is_property_present.has_value())
1503
+ {
1504
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"DirtyRegionMode");
1505
+ }
1506
+
1507
+ if (!is_property_present.value())
1508
+ {
1509
+ PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
1510
+ return nullptr;
1511
+ }
1512
+
1513
+ return py::convert(self->obj.DirtyRegionMode());
1514
+ }
1515
+ catch (...)
1516
+ {
1517
+ py::to_PyErr();
1518
+ return nullptr;
1519
+ }
1520
+ }
1521
+
1522
+ static int GraphicsCaptureSession_put_DirtyRegionMode(py::wrapper::Windows::Graphics::Capture::GraphicsCaptureSession* self, PyObject* arg, void* /*unused*/) noexcept
1523
+ {
1524
+ if (arg == nullptr)
1525
+ {
1526
+ PyErr_SetString(PyExc_AttributeError, "can't delete attribute");
1527
+ return -1;
1528
+ }
1529
+
1530
+ try
1531
+ {
1532
+ static std::optional<bool> is_property_present{};
1533
+
1534
+ if (!is_property_present.has_value())
1535
+ {
1536
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"DirtyRegionMode");
1537
+ }
1538
+
1539
+ if (!is_property_present.value())
1540
+ {
1541
+ PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
1542
+ return -1;
1543
+ }
1544
+
1545
+ auto param0 = py::convert_to<winrt::Windows::Graphics::Capture::GraphicsCaptureDirtyRegionMode>(arg);
1546
+
1547
+ self->obj.DirtyRegionMode(param0);
1548
+ return 0;
1549
+ }
1550
+ catch (...)
1551
+ {
1552
+ py::to_PyErr();
1553
+ return -1;
1554
+ }
1555
+ }
1556
+
1557
+ static PyObject* GraphicsCaptureSession_get_MinUpdateInterval(py::wrapper::Windows::Graphics::Capture::GraphicsCaptureSession* self, void* /*unused*/) noexcept
1558
+ {
1559
+ try
1560
+ {
1561
+ static std::optional<bool> is_property_present{};
1562
+
1563
+ if (!is_property_present.has_value())
1564
+ {
1565
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"MinUpdateInterval");
1566
+ }
1567
+
1568
+ if (!is_property_present.value())
1569
+ {
1570
+ PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
1571
+ return nullptr;
1572
+ }
1573
+
1574
+ return py::convert(self->obj.MinUpdateInterval());
1575
+ }
1576
+ catch (...)
1577
+ {
1578
+ py::to_PyErr();
1579
+ return nullptr;
1580
+ }
1581
+ }
1582
+
1583
+ static int GraphicsCaptureSession_put_MinUpdateInterval(py::wrapper::Windows::Graphics::Capture::GraphicsCaptureSession* self, PyObject* arg, void* /*unused*/) noexcept
1584
+ {
1585
+ if (arg == nullptr)
1586
+ {
1587
+ PyErr_SetString(PyExc_AttributeError, "can't delete attribute");
1588
+ return -1;
1589
+ }
1590
+
1591
+ try
1592
+ {
1593
+ static std::optional<bool> is_property_present{};
1594
+
1595
+ if (!is_property_present.has_value())
1596
+ {
1597
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"MinUpdateInterval");
1598
+ }
1599
+
1600
+ if (!is_property_present.value())
1601
+ {
1602
+ PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
1603
+ return -1;
1604
+ }
1605
+
1606
+ auto param0 = py::convert_to<winrt::Windows::Foundation::TimeSpan>(arg);
1607
+
1608
+ self->obj.MinUpdateInterval(param0);
1609
+ return 0;
1610
+ }
1611
+ catch (...)
1612
+ {
1613
+ py::to_PyErr();
1614
+ return -1;
1615
+ }
1616
+ }
1617
+
1618
+ static PyObject* GraphicsCaptureSession_get_IncludeSecondaryWindows(py::wrapper::Windows::Graphics::Capture::GraphicsCaptureSession* self, void* /*unused*/) noexcept
1619
+ {
1620
+ try
1621
+ {
1622
+ static std::optional<bool> is_property_present{};
1623
+
1624
+ if (!is_property_present.has_value())
1625
+ {
1626
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IncludeSecondaryWindows");
1627
+ }
1628
+
1629
+ if (!is_property_present.value())
1630
+ {
1631
+ PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
1632
+ return nullptr;
1633
+ }
1634
+
1635
+ return py::convert(self->obj.IncludeSecondaryWindows());
1636
+ }
1637
+ catch (...)
1638
+ {
1639
+ py::to_PyErr();
1640
+ return nullptr;
1641
+ }
1642
+ }
1643
+
1644
+ static int GraphicsCaptureSession_put_IncludeSecondaryWindows(py::wrapper::Windows::Graphics::Capture::GraphicsCaptureSession* self, PyObject* arg, void* /*unused*/) noexcept
1645
+ {
1646
+ if (arg == nullptr)
1647
+ {
1648
+ PyErr_SetString(PyExc_AttributeError, "can't delete attribute");
1649
+ return -1;
1650
+ }
1651
+
1652
+ try
1653
+ {
1654
+ static std::optional<bool> is_property_present{};
1655
+
1656
+ if (!is_property_present.has_value())
1657
+ {
1658
+ is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Graphics.Capture.GraphicsCaptureSession", L"IncludeSecondaryWindows");
1659
+ }
1660
+
1661
+ if (!is_property_present.value())
1662
+ {
1663
+ PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
1664
+ return -1;
1665
+ }
1666
+
1667
+ auto param0 = py::convert_to<bool>(arg);
1668
+
1669
+ self->obj.IncludeSecondaryWindows(param0);
1670
+ return 0;
1671
+ }
1672
+ catch (...)
1673
+ {
1674
+ py::to_PyErr();
1675
+ return -1;
1676
+ }
1677
+ }
1678
+
1239
1679
  static PyObject* _assign_array_GraphicsCaptureSession(PyObject* /*unused*/, PyObject* arg) noexcept
1240
1680
  {
1241
1681
  auto array = std::make_unique<py::ComArray<winrt::Windows::Graphics::Capture::GraphicsCaptureSession>>();
@@ -1292,6 +1732,9 @@ namespace py::cpp::Windows::Graphics::Capture
1292
1732
  static PyGetSetDef _getset_GraphicsCaptureSession[] = {
1293
1733
  { "is_cursor_capture_enabled", reinterpret_cast<getter>(GraphicsCaptureSession_get_IsCursorCaptureEnabled), reinterpret_cast<setter>(GraphicsCaptureSession_put_IsCursorCaptureEnabled), nullptr, nullptr },
1294
1734
  { "is_border_required", reinterpret_cast<getter>(GraphicsCaptureSession_get_IsBorderRequired), reinterpret_cast<setter>(GraphicsCaptureSession_put_IsBorderRequired), nullptr, nullptr },
1735
+ { "dirty_region_mode", reinterpret_cast<getter>(GraphicsCaptureSession_get_DirtyRegionMode), reinterpret_cast<setter>(GraphicsCaptureSession_put_DirtyRegionMode), nullptr, nullptr },
1736
+ { "min_update_interval", reinterpret_cast<getter>(GraphicsCaptureSession_get_MinUpdateInterval), reinterpret_cast<setter>(GraphicsCaptureSession_put_MinUpdateInterval), nullptr, nullptr },
1737
+ { "include_secondary_windows", reinterpret_cast<getter>(GraphicsCaptureSession_get_IncludeSecondaryWindows), reinterpret_cast<setter>(GraphicsCaptureSession_put_IncludeSecondaryWindows), nullptr, nullptr },
1295
1738
  { }
1296
1739
  };
1297
1740
 
@@ -1381,7 +1824,8 @@ PyMODINIT_FUNC PyInit__winrt_windows_graphics_capture(void) noexcept
1381
1824
  return nullptr;
1382
1825
  }
1383
1826
 
1384
- if (py::register_python_type(module.get(), &type_spec_Direct3D11CaptureFrame, object_bases.get(), nullptr) == -1)
1827
+ py::pytype_handle Direct3D11CaptureFrame_type{py::register_python_type(module.get(), &type_spec_Direct3D11CaptureFrame, object_bases.get(), nullptr)};
1828
+ if (!Direct3D11CaptureFrame_type)
1385
1829
  {
1386
1830
  return nullptr;
1387
1831
  }
@@ -1392,7 +1836,8 @@ PyMODINIT_FUNC PyInit__winrt_windows_graphics_capture(void) noexcept
1392
1836
  return nullptr;
1393
1837
  }
1394
1838
 
1395
- if (py::register_python_type(module.get(), &type_spec_Direct3D11CaptureFramePool, object_bases.get(), reinterpret_cast<PyTypeObject*>(type_Direct3D11CaptureFramePool_Static.get())) == -1)
1839
+ py::pytype_handle Direct3D11CaptureFramePool_type{py::register_python_type(module.get(), &type_spec_Direct3D11CaptureFramePool, object_bases.get(), reinterpret_cast<PyTypeObject*>(type_Direct3D11CaptureFramePool_Static.get()))};
1840
+ if (!Direct3D11CaptureFramePool_type)
1396
1841
  {
1397
1842
  return nullptr;
1398
1843
  }
@@ -1403,7 +1848,8 @@ PyMODINIT_FUNC PyInit__winrt_windows_graphics_capture(void) noexcept
1403
1848
  return nullptr;
1404
1849
  }
1405
1850
 
1406
- if (py::register_python_type(module.get(), &type_spec_GraphicsCaptureAccess, object_bases.get(), reinterpret_cast<PyTypeObject*>(type_GraphicsCaptureAccess_Static.get())) == -1)
1851
+ py::pytype_handle GraphicsCaptureAccess_type{py::register_python_type(module.get(), &type_spec_GraphicsCaptureAccess, object_bases.get(), reinterpret_cast<PyTypeObject*>(type_GraphicsCaptureAccess_Static.get()))};
1852
+ if (!GraphicsCaptureAccess_type)
1407
1853
  {
1408
1854
  return nullptr;
1409
1855
  }
@@ -1414,12 +1860,14 @@ PyMODINIT_FUNC PyInit__winrt_windows_graphics_capture(void) noexcept
1414
1860
  return nullptr;
1415
1861
  }
1416
1862
 
1417
- if (py::register_python_type(module.get(), &type_spec_GraphicsCaptureItem, object_bases.get(), reinterpret_cast<PyTypeObject*>(type_GraphicsCaptureItem_Static.get())) == -1)
1863
+ py::pytype_handle GraphicsCaptureItem_type{py::register_python_type(module.get(), &type_spec_GraphicsCaptureItem, object_bases.get(), reinterpret_cast<PyTypeObject*>(type_GraphicsCaptureItem_Static.get()))};
1864
+ if (!GraphicsCaptureItem_type)
1418
1865
  {
1419
1866
  return nullptr;
1420
1867
  }
1421
1868
 
1422
- if (py::register_python_type(module.get(), &type_spec_GraphicsCapturePicker, object_bases.get(), nullptr) == -1)
1869
+ py::pytype_handle GraphicsCapturePicker_type{py::register_python_type(module.get(), &type_spec_GraphicsCapturePicker, object_bases.get(), nullptr)};
1870
+ if (!GraphicsCapturePicker_type)
1423
1871
  {
1424
1872
  return nullptr;
1425
1873
  }
@@ -1430,7 +1878,8 @@ PyMODINIT_FUNC PyInit__winrt_windows_graphics_capture(void) noexcept
1430
1878
  return nullptr;
1431
1879
  }
1432
1880
 
1433
- if (py::register_python_type(module.get(), &type_spec_GraphicsCaptureSession, object_bases.get(), reinterpret_cast<PyTypeObject*>(type_GraphicsCaptureSession_Static.get())) == -1)
1881
+ py::pytype_handle GraphicsCaptureSession_type{py::register_python_type(module.get(), &type_spec_GraphicsCaptureSession, object_bases.get(), reinterpret_cast<PyTypeObject*>(type_GraphicsCaptureSession_Static.get()))};
1882
+ if (!GraphicsCaptureSession_type)
1434
1883
  {
1435
1884
  return nullptr;
1436
1885
  }
@@ -16,7 +16,7 @@ classifiers = [
16
16
  "Intended Audience :: Developers",
17
17
  ]
18
18
  dynamic = ["version", "dependencies", "optional-dependencies"]
19
- requires-python = ">=3.9,<3.13"
19
+ requires-python = ">=3.9,<3.14"
20
20
 
21
21
  [project.urls]
22
22
  # Homepage = "https://github.com/pywinrt/pywinrt"
@@ -36,7 +36,8 @@ optional-dependencies.all = { file = "all-requirements.txt" }
36
36
  # use local winrt-sdk build dependency
37
37
  environment = { PYTHONPATH="../winrt-sdk/src" }
38
38
  # don't install winrt-sdk from PyPI
39
- build-frontend = { name = "build", args = ["--skip-dependency-check", "--no-isolation"] }
39
+ build-frontend = { name = "build[uv]", args = ["--skip-dependency-check", "--no-isolation"] }
40
+ before-build = "uv pip install setuptools"
40
41
  # don't build for PyPy
41
42
  skip = "pp*"
42
43
  # suppress warnings about ARM64 testing
@@ -1,3 +1,3 @@
1
- # WARNING: Please don't edit this file. It was generated by Python/WinRT v2.1.0
1
+ # WARNING: Please don't edit this file. It was generated by Python/WinRT v2.3.0
2
2
 
3
- winrt-runtime==2.1.0
3
+ winrt-runtime==2.3.0
@@ -1,4 +1,4 @@
1
- # WARNING: Please don't edit this file. It was generated by Python/WinRT v2.1.0
1
+ # WARNING: Please don't edit this file. It was generated by Python/WinRT v2.3.0
2
2
 
3
3
  import datetime
4
4
  import sys
@@ -10,6 +10,7 @@ from builtins import property as _property
10
10
  import winrt._winrt
11
11
  import winrt.system
12
12
  import winrt.windows.foundation as windows_foundation
13
+ import winrt.windows.foundation.collections as windows_foundation_collections
13
14
  import winrt.windows.graphics as windows_graphics
14
15
  import winrt.windows.graphics.directx as windows_graphics_directx
15
16
  import winrt.windows.graphics.directx.direct3d11 as windows_graphics_directx_direct3d11
@@ -18,7 +19,7 @@ import winrt.windows.system as windows_system
18
19
  import winrt.windows.ui as windows_ui
19
20
  import winrt.windows.ui.composition as windows_ui_composition
20
21
 
21
- from winrt.windows.graphics.capture import GraphicsCaptureAccessKind
22
+ from winrt.windows.graphics.capture import GraphicsCaptureAccessKind, GraphicsCaptureDirtyRegionMode
22
23
 
23
24
  Self = typing.TypeVar('Self')
24
25
 
@@ -35,6 +36,10 @@ class Direct3D11CaptureFrame(winrt.system.Object):
35
36
  def surface(self) -> typing.Optional[windows_graphics_directx_direct3d11.IDirect3DSurface]: ...
36
37
  @_property
37
38
  def system_relative_time(self) -> datetime.timedelta: ...
39
+ @_property
40
+ def dirty_region_mode(self) -> GraphicsCaptureDirtyRegionMode: ...
41
+ @_property
42
+ def dirty_regions(self) -> typing.Optional[windows_foundation_collections.IVectorView[windows_graphics.RectInt32]]: ...
38
43
 
39
44
  @typing.final
40
45
  class Direct3D11CaptureFramePool_Static(type):
@@ -108,4 +113,16 @@ class GraphicsCaptureSession(winrt.system.Object, metaclass=GraphicsCaptureSessi
108
113
  def is_border_required(self) -> bool: ...
109
114
  @is_border_required.setter
110
115
  def is_border_required(self, value: bool) -> None: ...
116
+ @_property
117
+ def dirty_region_mode(self) -> GraphicsCaptureDirtyRegionMode: ...
118
+ @dirty_region_mode.setter
119
+ def dirty_region_mode(self, value: GraphicsCaptureDirtyRegionMode) -> None: ...
120
+ @_property
121
+ def min_update_interval(self) -> datetime.timedelta: ...
122
+ @min_update_interval.setter
123
+ def min_update_interval(self, value: datetime.timedelta) -> None: ...
124
+ @_property
125
+ def include_secondary_windows(self) -> bool: ...
126
+ @include_secondary_windows.setter
127
+ def include_secondary_windows(self, value: bool) -> None: ...
111
128
 
@@ -1,4 +1,4 @@
1
- # WARNING: Please don't edit this file. It was generated by Python/WinRT v2.1.0
1
+ # WARNING: Please don't edit this file. It was generated by Python/WinRT v2.3.0
2
2
 
3
3
  import enum
4
4
 
@@ -7,6 +7,7 @@ from winrt import _winrt_windows_graphics_capture
7
7
 
8
8
  __all__ = [
9
9
  "GraphicsCaptureAccessKind",
10
+ "GraphicsCaptureDirtyRegionMode",
10
11
  "Direct3D11CaptureFrame",
11
12
  "Direct3D11CaptureFramePool",
12
13
  "GraphicsCaptureAccess",
@@ -19,6 +20,10 @@ class GraphicsCaptureAccessKind(enum.IntEnum):
19
20
  BORDERLESS = 0
20
21
  PROGRAMMATIC = 1
21
22
 
23
+ class GraphicsCaptureDirtyRegionMode(enum.IntEnum):
24
+ REPORT_ONLY = 0
25
+ REPORT_AND_RENDER = 1
26
+
22
27
  Direct3D11CaptureFrame = _winrt_windows_graphics_capture.Direct3D11CaptureFrame
23
28
  Direct3D11CaptureFramePool = _winrt_windows_graphics_capture.Direct3D11CaptureFramePool
24
29
  GraphicsCaptureAccess = _winrt_windows_graphics_capture.GraphicsCaptureAccess
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: winrt-Windows.Graphics.Capture
3
- Version: 2.1.0
3
+ Version: 2.3.0
4
4
  Summary: Python projection of Windows Runtime (WinRT) APIs
5
5
  License: MIT
6
6
  Project-URL: Documentation, https://pywinrt.readthedocs.io
@@ -10,18 +10,19 @@ Classifier: Operating System :: Microsoft :: Windows
10
10
  Classifier: Programming Language :: Python :: 3
11
11
  Classifier: Programming Language :: Python :: Implementation :: CPython
12
12
  Classifier: Intended Audience :: Developers
13
- Requires-Python: <3.13,>=3.9
13
+ Requires-Python: <3.14,>=3.9
14
14
  Description-Content-Type: text/markdown
15
- Requires-Dist: winrt-runtime==2.1.0
15
+ Requires-Dist: winrt-runtime==2.3.0
16
16
  Provides-Extra: all
17
- Requires-Dist: winrt-Windows.Foundation[all]==2.1.0; extra == "all"
18
- Requires-Dist: winrt-Windows.Graphics[all]==2.1.0; extra == "all"
19
- Requires-Dist: winrt-Windows.Graphics.DirectX[all]==2.1.0; extra == "all"
20
- Requires-Dist: winrt-Windows.Graphics.DirectX.Direct3D11[all]==2.1.0; extra == "all"
21
- Requires-Dist: winrt-Windows.Security.Authorization.AppCapabilityAccess[all]==2.1.0; extra == "all"
22
- Requires-Dist: winrt-Windows.System[all]==2.1.0; extra == "all"
23
- Requires-Dist: winrt-Windows.UI[all]==2.1.0; extra == "all"
24
- Requires-Dist: winrt-Windows.UI.Composition[all]==2.1.0; extra == "all"
17
+ Requires-Dist: winrt-Windows.Foundation[all]==2.3.0; extra == "all"
18
+ Requires-Dist: winrt-Windows.Foundation.Collections[all]==2.3.0; extra == "all"
19
+ Requires-Dist: winrt-Windows.Graphics[all]==2.3.0; extra == "all"
20
+ Requires-Dist: winrt-Windows.Graphics.DirectX[all]==2.3.0; extra == "all"
21
+ Requires-Dist: winrt-Windows.Graphics.DirectX.Direct3D11[all]==2.3.0; extra == "all"
22
+ Requires-Dist: winrt-Windows.Security.Authorization.AppCapabilityAccess[all]==2.3.0; extra == "all"
23
+ Requires-Dist: winrt-Windows.System[all]==2.3.0; extra == "all"
24
+ Requires-Dist: winrt-Windows.UI[all]==2.3.0; extra == "all"
25
+ Requires-Dist: winrt-Windows.UI.Composition[all]==2.3.0; extra == "all"
25
26
 
26
27
  <!-- warning: Please don't edit this file. It was automatically generated. -->
27
28
 
@@ -0,0 +1,12 @@
1
+ winrt-runtime==2.3.0
2
+
3
+ [all]
4
+ winrt-Windows.Foundation[all]==2.3.0
5
+ winrt-Windows.Foundation.Collections[all]==2.3.0
6
+ winrt-Windows.Graphics[all]==2.3.0
7
+ winrt-Windows.Graphics.DirectX[all]==2.3.0
8
+ winrt-Windows.Graphics.DirectX.Direct3D11[all]==2.3.0
9
+ winrt-Windows.Security.Authorization.AppCapabilityAccess[all]==2.3.0
10
+ winrt-Windows.System[all]==2.3.0
11
+ winrt-Windows.UI[all]==2.3.0
12
+ winrt-Windows.UI.Composition[all]==2.3.0
@@ -1,10 +0,0 @@
1
- # WARNING: Please don't edit this file. It was generated by Python/WinRT v2.1.0
2
-
3
- winrt-Windows.Foundation[all]==2.1.0
4
- winrt-Windows.Graphics[all]==2.1.0
5
- winrt-Windows.Graphics.DirectX[all]==2.1.0
6
- winrt-Windows.Graphics.DirectX.Direct3D11[all]==2.1.0
7
- winrt-Windows.Security.Authorization.AppCapabilityAccess[all]==2.1.0
8
- winrt-Windows.System[all]==2.1.0
9
- winrt-Windows.UI[all]==2.1.0
10
- winrt-Windows.UI.Composition[all]==2.1.0
@@ -1,11 +0,0 @@
1
- winrt-runtime==2.1.0
2
-
3
- [all]
4
- winrt-Windows.Foundation[all]==2.1.0
5
- winrt-Windows.Graphics[all]==2.1.0
6
- winrt-Windows.Graphics.DirectX[all]==2.1.0
7
- winrt-Windows.Graphics.DirectX.Direct3D11[all]==2.1.0
8
- winrt-Windows.Security.Authorization.AppCapabilityAccess[all]==2.1.0
9
- winrt-Windows.System[all]==2.1.0
10
- winrt-Windows.UI[all]==2.1.0
11
- winrt-Windows.UI.Composition[all]==2.1.0