Skip to content

[GameController] Implement up to Xcode 16.3 RC. #22504

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 135 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
135 commits
Select commit Hold shift + click to select a range
6b76e93
[devops] Clean up temporary files on Windows before running remote te…
rolfbjarne Mar 28, 2025
7848410
[CoreMedia] Fix all availability attributes in this framework. (#22495)
rolfbjarne Mar 28, 2025
7f23a66
[main] Update dependencies from dotnet/xharness (#22487)
dotnet-maestro[bot] Mar 28, 2025
9bf9a88
[devops] Cleanup variables and parameters a bit. (#22490)
rolfbjarne Mar 28, 2025
bd02649
[devops] Improve detection of CI builds to not find any PRs for them.…
rolfbjarne Mar 28, 2025
8e09428
[CoreText] Fix all availability attributes in this framework. (#22501)
rolfbjarne Mar 31, 2025
8f6f35e
[tests] Adjust LocalSearchTest.EmptyRequest to be a bit more lenient.…
rolfbjarne Mar 31, 2025
a554abc
[dotnet] Quote MlaunchPath so that it works if the mlaunch path has s…
rolfbjarne Mar 31, 2025
d834a8b
[src] Import xml docs for members, part 12. (#22507)
rolfbjarne Mar 31, 2025
964bc65
[devops] Propagate 'use1ES' everywhere. (#22502)
rolfbjarne Mar 31, 2025
bc6ed43
[CoreMidi] Fix all availability attributes in this framework. (#22508)
rolfbjarne Mar 31, 2025
3c713fd
[CoreVideo] Fix all availability attributes in this framework. (#22511)
rolfbjarne Apr 1, 2025
14ad4b8
[API] Fix all GC.KeepAlive issues in manual code. (#22474)
mandel-macaque Apr 1, 2025
4840bd0
[main] Update dependencies from dotnet/xharness (#22515)
dotnet-maestro[bot] Apr 1, 2025
13b056f
[devops] Use the right 'use1ES' value for api scan. (#22509)
rolfbjarne Apr 1, 2025
dcb010a
Merge remote-tracking branch 'origin/xcode16.3' into main
rolfbjarne Apr 1, 2025
315a21d
Merge xcode16.3 into main. (#22521)
rolfbjarne Apr 1, 2025
ba46c02
[tests] Fix running macOS tests on arm64 machines. (#22519)
rolfbjarne Apr 1, 2025
448ab20
Add copilot-instructions.md (#22520)
mcumming Apr 1, 2025
e8269c8
[Foundation] Don't use ServicePointManager to get minimum TLS protoco…
rolfbjarne Apr 2, 2025
3371084
[src] Import xml docs for members, part 13. (#22512)
rolfbjarne Apr 2, 2025
4561f08
[msbuild/dotnet] Build binding projects on Windows instead of remotel…
rolfbjarne Apr 2, 2025
ea18602
[Foundation] Fix removal of background check in NSUrlSessionHandler. …
rolfbjarne Apr 2, 2025
ee68fea
[src] Import xml docs for members, part 14. (#22531)
rolfbjarne Apr 3, 2025
d05215c
[AVFoundation] Improve and simplify the manually bound constructors f…
rolfbjarne Apr 3, 2025
ea5e0ca
[AVFoundation] Add a default ctor for AVRouteDetector. Fixes #10139. …
rolfbjarne Apr 3, 2025
7f82818
[MultipeerConnectivity] Improve and simplify the manually bound const…
rolfbjarne Apr 3, 2025
d9eadcc
[AppKit] Improve and simplify the manually bound constructors for NSI…
rolfbjarne Apr 3, 2025
423102a
[main] Update dependencies from dotnet/xharness (#22536)
dotnet-maestro[bot] Apr 3, 2025
13f393e
[src] Import xml docs for members, part 15. (#22539)
rolfbjarne Apr 3, 2025
c517801
[GameKit] Fix all availability attributes in this framework. (#22532)
rolfbjarne Apr 3, 2025
19b94ae
[UIKit] Adjust nullability for UITableViewDelegate.WillDisplay[Header…
rolfbjarne Apr 3, 2025
c88aa31
[src] Make the generate-frameworks-constants project a script project…
rolfbjarne Apr 3, 2025
bc4187c
[MapKit] Improve and simplify the manually bound constructors for MKM…
rolfbjarne Apr 3, 2025
3609b73
[src] Ask the compiler to print out the full path to files in compile…
rolfbjarne Apr 4, 2025
f431538
[UIKit] Fix UIBarButtonItem's callback logic. (#22547)
rolfbjarne Apr 4, 2025
ba84bb2
[bgen] Add xml docs to CIFilter constructors. (#22545)
rolfbjarne Apr 4, 2025
b773200
[msbuild] Enable nullability in the ParseDeviceSpecificBuildInformati…
rolfbjarne Apr 4, 2025
ff3f768
[bgen] Inject documentation for the 'This' parameter we add to catego…
rolfbjarne Apr 4, 2025
d05ea52
[MediaPlayer] Fix all availability attributes in this framework. (#22…
rolfbjarne Apr 4, 2025
1b2273d
[BGen] Fix the GC.KeepAlive issues with the BindAs attr. (#22554)
mandel-macaque Apr 4, 2025
7942893
[rgen] Enable analysis of generated code in the native object handle …
rolfbjarne Apr 5, 2025
c833e62
[src] Document NSCoder.EncodeTo. (#22543)
rolfbjarne Apr 7, 2025
8b55e25
[tools] Fix class_ptr rewriter to patch exception handlers too when i…
rolfbjarne Apr 7, 2025
9dcdefa
[devops] Include the macOS tests in the main test pipeline. (#22420)
rolfbjarne Apr 7, 2025
0916719
[MetalPerformanceShaders] Remove all !NET code. (#22563)
rolfbjarne Apr 8, 2025
1a15aa5
[tools] Simplify class_ptr rewriter to not create new instructions wh…
rolfbjarne Apr 8, 2025
b353ff7
[xtro] Misc improvements. (#22561)
rolfbjarne Apr 8, 2025
f55ee55
[main] Update dependencies from dotnet/arcade (#22560)
dotnet-maestro[bot] Apr 8, 2025
07a0f29
[Metal] Fix all availability attributes in this framework. (#22562)
rolfbjarne Apr 8, 2025
8ad6835
[Intents] Improve and simplify the manually bound constructors for IN…
rolfbjarne Apr 8, 2025
440d24a
[bgen] Add xml docs for generated strong dictionary classes. (#22569)
rolfbjarne Apr 8, 2025
7d58d11
[MetalPerformanceShadersGraph] Fix all availability attributes in thi…
rolfbjarne Apr 8, 2025
d69a057
[Rgen] Add support for the ForcedType in both the generator and trans…
mandel-macaque Apr 8, 2025
f06b37f
[main] Update dependencies from dotnet/xharness (#22568)
dotnet-maestro[bot] Apr 8, 2025
324e907
[src] Simplify a few constants, and document them. (#22577)
rolfbjarne Apr 8, 2025
aa20569
[Accelerate] Fix all xtro todos for this framework by ignoring them a…
rolfbjarne Apr 8, 2025
c0ff862
[ApiDiff] Bump to the latest stable version (#22555)
dalexsoto Apr 9, 2025
83a3421
[CoreTransferable] This is a Swift framework, so don't bind it. (#22573)
rolfbjarne Apr 9, 2025
e1355b5
[bgen] Add xml docs for event args subclasses based on NSNotification…
rolfbjarne Apr 9, 2025
2613a75
[MetricKit] Fix all availability attributes in this framework. (#22576)
rolfbjarne Apr 9, 2025
f2f6b14
[RGen] Ensure that rgen property getters call GC.KeepAlive (#22580)
mandel-macaque Apr 9, 2025
1ff8811
[main] Update dependencies from dotnet/arcade (#22584)
dotnet-maestro[bot] Apr 9, 2025
f44b5d9
[NaturalLanguage] Fix all availability attributes in this framework. …
rolfbjarne Apr 9, 2025
a72c8c7
[bgen] More xml docs for event args. (#22588)
rolfbjarne Apr 9, 2025
62f02c9
[GameKit] Fix accidental breaking change in parameter name. (#22586)
rolfbjarne Apr 9, 2025
5f762c5
[Foundation] Improve and simplify the manually bound constructors for…
rolfbjarne Apr 9, 2025
2417c8e
[Network] Fix all availability attributes in this framework. (#22593)
rolfbjarne Apr 9, 2025
1aab5dd
[MetalPerformanceShaders] Improve the manually bound constructors for…
rolfbjarne Apr 9, 2025
3fdffd4
[Rgen] Add factory methods for RetainAndAutoreleaseNativeObject and R…
mandel-macaque Apr 9, 2025
ba7088f
[NearbyInteraction] Fix all the xtro issues in this framework. (#22581)
rolfbjarne Apr 10, 2025
f70876b
[src] Import xml docs for members, part 16. (#22594)
rolfbjarne Apr 10, 2025
64ac2ca
[MapKit] Improve and simplify the manually bound constructors for MKP…
rolfbjarne Apr 10, 2025
01d5ff8
[Foundation] Improve and simplify the manually bound constructors for…
rolfbjarne Apr 10, 2025
78a75ce
[RGen] Do not call GetHandle () for trampoline return values. (#22583)
mandel-macaque Apr 10, 2025
1f43106
[Rgen] Update the method for the trampoline return type for the gener…
mandel-macaque Apr 11, 2025
1007c22
[RGen] Allow to mark delegate parameters are ForcedTypes (#22602)
mandel-macaque Apr 11, 2025
6126191
[main] Update dependencies from dotnet/xharness (#22611)
dotnet-maestro[bot] Apr 14, 2025
02a0daa
[RGen] Keep track if the element of an array is a INativeObject. (#22…
mandel-macaque Apr 14, 2025
0d2db46
[RGen] Add factory methods for NSArray.FromHandle (#22606)
mandel-macaque Apr 14, 2025
1a8514b
[RGen] Indicate if a symbol represents a pointer. (#22607)
mandel-macaque Apr 14, 2025
3774091
[Rgen] Add a factory for the IdentifierName. (#22612)
mandel-macaque Apr 14, 2025
0a0a75f
[RGen] Move to use the factory method to later make it global. (#22613)
mandel-macaque Apr 14, 2025
c6b9e9f
[RGen] Change code generation to use the gloval alias for Dlfcn (#22614)
mandel-macaque Apr 15, 2025
b9b2a6e
[RGen] Use the global alias for the CFString methods. (#22617)
mandel-macaque Apr 15, 2025
bbf6e1d
[docs] Update urls to document about exception marshaling. (#22572)
rolfbjarne Apr 15, 2025
493f4e5
[RGen] Teach the TextWriter to write collections of syntax nodes. (#2…
mandel-macaque Apr 16, 2025
7ae80d3
[RGen] Use the global alias for the Runtime class. (#22615)
mandel-macaque Apr 16, 2025
bc62f93
[RGen] Use the global alias for CFArray and NSArray. (#22616)
mandel-macaque Apr 16, 2025
a3ce022
[RGen] Add number of indexes to be able to use them to retrieve membe…
mandel-macaque Apr 16, 2025
7cef453
[main] Update dependencies from dotnet/xharness (#22621)
dotnet-maestro[bot] Apr 16, 2025
59927b5
[RGen] Use the global alias for NSValue and NSNumber. (#22618)
mandel-macaque Apr 17, 2025
7136d69
[RGen] Use the global alias for the Selector class. (#22619)
mandel-macaque Apr 17, 2025
d936f06
[main] Update dependencies from dotnet/sdk (#22609)
dotnet-maestro[bot] Apr 21, 2025
6b64a58
[src] Fix invalid xml comment (#22638)
rolfbjarne Apr 22, 2025
f53949b
[bgen] Add support for writing xml docs for async methods. (#22639)
rolfbjarne Apr 22, 2025
be28f76
[bgen] Add support for writing xml docs for events. (#22640)
rolfbjarne Apr 22, 2025
7324554
[bgen] Add more xml docs for filters. (#22641)
rolfbjarne Apr 22, 2025
7a0f22e
[ObjCRuntime] Fix all availability attributes. (#22636)
rolfbjarne Apr 22, 2025
31fe4b1
[main] Update dependencies from dotnet/xharness (#22634)
dotnet-maestro[bot] Apr 22, 2025
5d7eb62
[src] Import xml docs for members, part 17. (#22648)
rolfbjarne Apr 23, 2025
7c450ac
[bgen] Fix docid generation for nested types (#22646)
rolfbjarne Apr 23, 2025
502df6c
[AppKit] Improve and simplify the manually bound constructors for NSG…
rolfbjarne Apr 23, 2025
b3e3d3f
[SceneKit] Fix all availability attributes in this framework. (#22645)
rolfbjarne Apr 23, 2025
e6659a1
[bgen] Fix xml docs for properties with backing fields. (#22643)
rolfbjarne Apr 23, 2025
bc647ec
[CoreLocation] Improve and simplify the manually bound constructors f…
rolfbjarne Apr 23, 2025
96e7544
[runtime] Add ability to report how long app launch takes. Fixes #225…
rolfbjarne Apr 23, 2025
22dc9c5
[Foundation] Improve and simplify the manually bound constructors for…
rolfbjarne Apr 23, 2025
c6d061c
[src] Import xml docs for members, part 18. (#22652)
rolfbjarne Apr 23, 2025
67e0ae2
[autoformat] Fix a few formatting issues that have crept up. (#22650)
rolfbjarne Apr 23, 2025
0edb4b4
[dotnet] Build all scripts before doing surgery on the local .NET ins…
rolfbjarne Apr 23, 2025
fe13eaf
[AppKit] Improve and simplify the manually bound constructors for NST…
rolfbjarne Apr 23, 2025
3d469d9
[src] Import xml docs for members, part 19. (#22656)
rolfbjarne Apr 23, 2025
e720c6e
[src] Import xml docs for members, part 20. (#22658)
rolfbjarne Apr 24, 2025
bf4063b
[Foundation] Improve and simplify the manually bound constructors for…
rolfbjarne Apr 24, 2025
8ab25b4
[bgen] Add more xml docs for async operations. (#22642)
rolfbjarne Apr 24, 2025
6f41cca
[CloudKit] Improve and simplify a few manually bound constructors. (#…
rolfbjarne Apr 24, 2025
486e9a6
[cecil-tests] Fix docid generation by escaping '<' and '>' correctly.…
rolfbjarne Apr 24, 2025
e6d7a78
[Security] Fix all availability attributes in this framework. (#22664)
rolfbjarne Apr 24, 2025
93a1a29
[Foundation] Improve and simplify the manually bound constructors for…
rolfbjarne Apr 24, 2025
61938fe
[src] Import xml docs for members, part 21. (#22669)
rolfbjarne Apr 25, 2025
c353801
[registrar] Remove 32-bit support. (#22671)
rolfbjarne Apr 25, 2025
a1dc051
[bgen] Remove 32-bit support. (#22668)
rolfbjarne Apr 25, 2025
0af8101
[src] Remove pointer-size checks and code. (#22666)
rolfbjarne Apr 25, 2025
77ef33a
[runtime] Remove 32-bit code (x86 and armv7*). (#22667)
rolfbjarne Apr 25, 2025
318ba23
[src] Import xml docs for members, part 22/22. (#22678)
rolfbjarne Apr 28, 2025
7c30259
[NetworkExtension] Improve and simplify the manually bound constructo…
rolfbjarne Apr 28, 2025
5347e9d
[main] Update dependencies from dotnet/xharness (#22683)
dotnet-maestro[bot] Apr 28, 2025
56a41e1
[SpriteKit] Fix all availability attributes in this framework. (#22674)
rolfbjarne Apr 29, 2025
aea07f2
[tests] Remove legacy Xamarin code from the linker tests. (#22672)
rolfbjarne Apr 29, 2025
a0f9144
[xma] Added targets and tasks to copy modified dll and pdb files back…
mauroa Apr 29, 2025
19dc1a4
[introspection] Remove unnecessary skip code when verifying init sele…
rolfbjarne Apr 29, 2025
20bb42b
[AppKit] Improve and simplify the manually bound constructors for NSB…
rolfbjarne Apr 29, 2025
3f619be
[src] Improve generics support. (#22527)
rolfbjarne Apr 30, 2025
52b6652
[GameController] Implement up to Xcode 16.3.
rolfbjarne Apr 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
95 changes: 95 additions & 0 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
# Instructions for AIs

This repository is .NET for iOS.

This is the main branch targeting .NET 9.

## Nullable Reference Types

When opting C# code into nullable reference types:

Only make the following changes when asked to do so.

* Add `#nullable enable` at the top of the file.

* Don't *ever* use `!` to handle `null`!

* Declare variables non-nullable, and check for `null` at entry points.

* Use `throw new ArgumentNullException (nameof (parameter))` in `netstandard2.0` projects.

* Use `ArgumentNullException.ThrowIfNull (parameter)` in iOS projects that will be .NET 9+.

* `[Required]` properties in MSBuild task classes should always be non-nullable with a default value.

* Non-`[Required]` properties should be nullable and have null-checks in C# code using them.

* For MSBuild task properties like:

```csharp
public string NonRequiredProperty { get; set; }
public ITaskItem [] NonRequiredItemGroup { get; set; }

[Output]
public string OutputProperty { get; set; }
[Output]
public ITaskItem [] OutputItemGroup { get; set; }

[Required]
public string RequiredProperty { get; set; }
[Required]
public ITaskItem [] RequiredItemGroup { get; set; }
```

Fix them such as:

```csharp
public string? NonRequiredProperty { get; set; }
public ITaskItem []? NonRequiredItemGroup { get; set; }

[Output]
public string? OutputProperty { get; set; }
[Output]
public ITaskItem []? OutputItemGroup { get; set; }

[Required]
public string RequiredProperty { get; set; } = "";
[Required]
public ITaskItem [] RequiredItemGroup { get; set; } = [];
```

If you see a `string.IsNullOrEmpty()` check, don't change it.

## Formatting

C# code uses tabs (not spaces) and the Mono code-formatting style defined in `.editorconfig`

* Your mission is to make diffs as absolutely as small as possible, preserving existing code formatting.

* If you encounter additional spaces or formatting within existing code blocks, LEAVE THEM AS-IS.

* If you encounter code comments, LEAVE THEM AS-IS.

* Place a space prior to any parentheses `(` or `[`

* Use `""` for empty string and *not* `string.Empty`

* Use `[]` for empty arrays and *not* `Array.Empty<T>()`

Examples of properly formatted code:

```csharp
Foo ();
Bar (1, 2, "test");
myarray [0] = 1;

if (someValue) {
// Code here
}

try {
// Code here
} catch (Exception e) {
// Code here
}
```
14 changes: 10 additions & 4 deletions Make.config
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,10 @@ include $(TOP)/Make.versions
# The value is taken from the name + version of the Ref pack.
# Example: given the Ref pack "Microsoft.iOS.Ref.net8.0_17.5" with the version "17.5.8030", the value
# to write here would be the part after "Microsoft.iOS.Ref." + "/" + version: "net8.0_17.5/17.5.8030"
STABLE_NUGET_VERSION_iOS=net9.0_18.2/18.2.9170
STABLE_NUGET_VERSION_tvOS=net9.0_18.2/18.2.9170
STABLE_NUGET_VERSION_MacCatalyst=net9.0_18.2/18.2.9170
STABLE_NUGET_VERSION_macOS=net9.0_15.2/15.2.9170
STABLE_NUGET_VERSION_iOS=net9.0_18.4/18.4.9288
STABLE_NUGET_VERSION_tvOS=net9.0_18.4/18.4.9288
STABLE_NUGET_VERSION_MacCatalyst=net9.0_18.4/18.4.9288
STABLE_NUGET_VERSION_macOS=net9.0_15.4/15.4.9288

PACKAGE_HEAD_REV=$(shell git rev-parse HEAD)

Expand Down Expand Up @@ -447,11 +447,13 @@ DOTNET_MONOVM_PLATFORMS+=iOS
DOTNET_IOS_BITNESSES+=64
DOTNET_NATIVEAOT_PLATFORMS+=iOS
XCFRAMEWORK_PLATFORMS+=iossimulator
XCFRAMEWORK_iOS_PLATFORMS+=iossimulator
XCFRAMEWORK_iossimulator_RUNTIME_IDENTIFIERS=iossimulator-x64 iossimulator-arm64

# 64-bit architectures
DOTNET_IOS_RUNTIME_IDENTIFIERS_64=ios-arm64
XCFRAMEWORK_PLATFORMS+=ios
XCFRAMEWORK_iOS_PLATFORMS+=ios
XCFRAMEWORK_ios_RUNTIME_IDENTIFIERS=ios-arm64
DOTNET_IOS_RUNTIME_IDENTIFIERS_64+=iossimulator-x64 iossimulator-arm64

Expand All @@ -465,10 +467,12 @@ DOTNET_MONOVM_PLATFORMS+=tvOS
DOTNET_TVOS_BITNESSES+=64
DOTNET_NATIVEAOT_PLATFORMS+=tvOS
XCFRAMEWORK_PLATFORMS+=tvossimulator
XCFRAMEWORK_tvOS_PLATFORMS+=tvossimulator
XCFRAMEWORK_tvossimulator_RUNTIME_IDENTIFIERS=tvossimulator-x64 tvossimulator-arm64

DOTNET_TVOS_RUNTIME_IDENTIFIERS=tvos-arm64 tvossimulator-x64 tvossimulator-arm64
XCFRAMEWORK_PLATFORMS+=tvos
XCFRAMEWORK_tvOS_PLATFORMS+=tvos
XCFRAMEWORK_tvos_RUNTIME_IDENTIFIERS=tvos-arm64
DOTNET_TVOS_RUNTIME_IDENTIFIERS_64+=$(DOTNET_TVOS_RUNTIME_IDENTIFIERS)
endif
Expand All @@ -481,6 +485,7 @@ DOTNET_NATIVEAOT_PLATFORMS+=MacCatalyst
DOTNET_MACCATALYST_RUNTIME_IDENTIFIERS=maccatalyst-x64 maccatalyst-arm64
DOTNET_MACCATALYST_RUNTIME_IDENTIFIERS_64+=$(DOTNET_MACCATALYST_RUNTIME_IDENTIFIERS)
XCFRAMEWORK_PLATFORMS+=maccatalyst
XCFRAMEWORK_MacCatalyst_PLATFORMS+=maccatalyst
XCFRAMEWORK_DESKTOP_PLATFORMS+=maccatalyst
XCFRAMEWORK_maccatalyst_RUNTIME_IDENTIFIERS=$(DOTNET_MACCATALYST_RUNTIME_IDENTIFIERS)
endif
Expand All @@ -493,6 +498,7 @@ DOTNET_NATIVEAOT_PLATFORMS+=macOS
DOTNET_MACOS_RUNTIME_IDENTIFIERS=osx-x64 osx-arm64
DOTNET_MACOS_RUNTIME_IDENTIFIERS_64=$(DOTNET_MACOS_RUNTIME_IDENTIFIERS)
XCFRAMEWORK_PLATFORMS+=macos
XCFRAMEWORK_macOS_PLATFORMS+=macos
XCFRAMEWORK_DESKTOP_PLATFORMS+=macos
XCFRAMEWORK_macos_RUNTIME_IDENTIFIERS=$(DOTNET_MACOS_RUNTIME_IDENTIFIERS)
endif
Expand Down
2 changes: 2 additions & 0 deletions NuGet.config
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@
<add key="darc-pub-dotnet-runtime-0fdf85d" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/darc-pub-dotnet-runtime-0fdf85d5/nuget/v3/index.json" />
<!-- Add a 8.0.15 feed -->
<add key="darc-pub-dotnet-runtime-7aa8bb0" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/darc-pub-dotnet-runtime-7aa8bb0e/nuget/v3/index.json" />
<!-- Add a 8.0.16 feed -->
<add key="darc-pub-dotnet-runtime-0239fb04" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/darc-pub-dotnet-runtime-0239fb04/nuget/v3/index.json" />
</packageSources>
<disabledPackageSources>
<clear />
Expand Down
12 changes: 12 additions & 0 deletions docs/api/ARKit/ARSessionDelegate_Extensions.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<Documentation>
<Docs DocId="M:ARKit.ARSessionDelegate_Extensions.DidUpdateFrame(ARKit.IARSessionDelegate,ARKit.ARSession,ARKit.ARFrame)">

<param name="session">The session that is supplying the information for the event.</param>
<param name="frame">The frame that was updated.</param>
<summary>Indicates that <paramref name="frame" /> has been updated due to tracking.</summary>
<remarks>
<para>Developers who override this method must be sure to call <format type="text/html"><a href="https://docs.microsoft.com/en-us/search/index?search=System%20IDisposable%20Dispose&amp;scope=Xamarin" title="M:System.IDisposable.Dispose*">M:System.IDisposable.Dispose*</a></format> on the <paramref name="frame" /> when they have finished processing. Internally, ARKit only generates a new <see cref="T:ARKit.ARFrame" /> object when there are no more references to an existing frame.
If <format type="text/html"><a href="https://docs.microsoft.com/en-us/search/index?search=System%20IDisposable%20Dispose&amp;scope=Xamarin" title="M:System.IDisposable.Dispose*">M:System.IDisposable.Dispose*</a></format> is not called, ARKit will not produce until the GC collects the <paramref name="frame" />. This typically appears as a frozen, non-responsive, or "severely stuttering" video feed.</para>
</remarks>
</Docs>
</Documentation>
125 changes: 95 additions & 30 deletions docs/api/AVFoundation/AVAudioSession.xml
Original file line number Diff line number Diff line change
Expand Up @@ -265,14 +265,14 @@ void Setup ()
</remarks>
</Docs>
<Docs DocId="P:AVFoundation.AVAudioSession.RouteChangeNotification">
<summary>Notification constant for RouteChange</summary>
<value>NSString constant, should be used as a token to NSNotificationCenter.</value>
<remarks>
<para id="tool-remark">This constant can be used with the <see cref="T:Foundation.NSNotificationCenter" /> to register a listener for this notification. This is an NSString instead of a string, because these values can be used as tokens in some native libraries instead of being used purely for their actual string content. The 'notification' parameter to the callback contains extra information that is specific to the notification type.</para>
<para id="tool-remark">To subscribe to this notification, developers can use the convenience <see cref="T:AVFoundation.AVAudioSession.Notifications" />.<see cref="M:AVFoundation.AVAudioSession.Notifications.ObserveRouteChange*" /> method which offers strongly typed access to the parameters of the notification.</para>
<para>The following example shows how to use the strongly typed Notifications class, to take the guesswork out of the available properties in the notification:</para>
<example>
<code lang="csharp lang-csharp"><![CDATA[
<summary>Notification constant for RouteChange</summary>
<value>NSString constant, should be used as a token to NSNotificationCenter.</value>
<remarks>
<para id="tool-remark">This constant can be used with the <see cref="T:Foundation.NSNotificationCenter" /> to register a listener for this notification. This is an NSString instead of a string, because these values can be used as tokens in some native libraries instead of being used purely for their actual string content. The 'notification' parameter to the callback contains extra information that is specific to the notification type.</para>
<para id="tool-remark">To subscribe to this notification, developers can use the convenience <see cref="T:AVFoundation.AVAudioSession.Notifications" />.<see cref="M:AVFoundation.AVAudioSession.Notifications.ObserveRouteChange*" /> method which offers strongly typed access to the parameters of the notification.</para>
<para>The following example shows how to use the strongly typed Notifications class, to take the guesswork out of the available properties in the notification:</para>
<example>
<code lang="csharp lang-csharp"><![CDATA[
//
// Lambda style
//
Expand Down Expand Up @@ -311,10 +311,10 @@ void Teardown ()
{
notification.Dispose ();
}]]></code>
</example>
<para>The following example shows how to use the notification with the DefaultCenter API:</para>
<example>
<code lang="csharp lang-csharp"><![CDATA[
</example>
<para>The following example shows how to use the notification with the DefaultCenter API:</para>
<example>
<code lang="csharp lang-csharp"><![CDATA[
// Lambda style
NSNotificationCenter.DefaultCenter.AddObserver (
AVAudioSession.RouteChangeNotification, (notification) => {Console.WriteLine ("Received the notification AVAudioSession", notification); }
Expand All @@ -331,18 +331,18 @@ void Setup ()
NSNotificationCenter.DefaultCenter.AddObserver (AVAudioSession.RouteChangeNotification, Callback);
}
]]></code>
</example>
</remarks>
</Docs>
</example>
</remarks>
</Docs>
<Docs DocId="P:AVFoundation.AVAudioSession.SilenceSecondaryAudioHintNotification">
<summary>Notification constant for SilenceSecondaryAudioHint</summary>
<value>NSString constant, should be used as a token to NSNotificationCenter.</value>
<remarks>
<para id="tool-remark">This constant can be used with the <see cref="T:Foundation.NSNotificationCenter" /> to register a listener for this notification. This is an NSString instead of a string, because these values can be used as tokens in some native libraries instead of being used purely for their actual string content. The 'notification' parameter to the callback contains extra information that is specific to the notification type.</para>
<para id="tool-remark">To subscribe to this notification, developers can use the convenience <see cref="T:AVFoundation.AVAudioSession.Notifications" />.<see cref="M:AVFoundation.AVAudioSession.Notifications.ObserveSilenceSecondaryAudioHint*" /> method which offers strongly typed access to the parameters of the notification.</para>
<para>The following example shows how to use the strongly typed Notifications class, to take the guesswork out of the available properties in the notification:</para>
<example>
<code lang="csharp lang-csharp"><![CDATA[
<summary>Notification constant for SilenceSecondaryAudioHint</summary>
<value>NSString constant, should be used as a token to NSNotificationCenter.</value>
<remarks>
<para id="tool-remark">This constant can be used with the <see cref="T:Foundation.NSNotificationCenter" /> to register a listener for this notification. This is an NSString instead of a string, because these values can be used as tokens in some native libraries instead of being used purely for their actual string content. The 'notification' parameter to the callback contains extra information that is specific to the notification type.</para>
<para id="tool-remark">To subscribe to this notification, developers can use the convenience <see cref="T:AVFoundation.AVAudioSession.Notifications" />.<see cref="M:AVFoundation.AVAudioSession.Notifications.ObserveSilenceSecondaryAudioHint*" /> method which offers strongly typed access to the parameters of the notification.</para>
<para>The following example shows how to use the strongly typed Notifications class, to take the guesswork out of the available properties in the notification:</para>
<example>
<code lang="csharp lang-csharp"><![CDATA[
//
// Lambda style
//
Expand Down Expand Up @@ -381,10 +381,10 @@ void Teardown ()
{
notification.Dispose ();
}]]></code>
</example>
<para>The following example shows how to use the notification with the DefaultCenter API:</para>
<example>
<code lang="csharp lang-csharp"><![CDATA[
</example>
<para>The following example shows how to use the notification with the DefaultCenter API:</para>
<example>
<code lang="csharp lang-csharp"><![CDATA[
// Lambda style
NSNotificationCenter.DefaultCenter.AddObserver (
AVAudioSession.SilenceSecondaryAudioHintNotification, (notification) => {Console.WriteLine ("Received the notification AVAudioSession", notification); }
Expand All @@ -401,7 +401,72 @@ void Setup ()
NSNotificationCenter.DefaultCenter.AddObserver (AVAudioSession.SilenceSecondaryAudioHintNotification, Callback);
}
]]></code>
</example>
</remarks>
</Docs>
</example>
</remarks>
</Docs>
<Docs DocId="M:AVFoundation.AVAudioSession.SetCategory(Foundation.NSString,Foundation.NSError@)">
<param name="theCategory">One of
<see cref="P:AVFoundation.AVAudioSession.CategoryAmbient" />,
<see cref="P:AVFoundation.AVAudioSession.CategorySoloAmbient" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryPlayback" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryRecord" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryPlayAndRecord" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryAudioProcessing" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryMultiRoute" />.
</param>
<param name="outError">On failure, this contains the error details.</param>
<summary>Weakly typed; Requests a change to the <see cref="P:AVFoundation.AVAudioSession.Category" />.</summary>
<returns>true on success, false on error. If there is an error the outError parameter contains the new instance of NSError describing the problem.</returns>
<remarks>
<para>
In general, you should set the category before activating
your audio session with <see cref="M:AVFoundation.AVAudioSession.SetActive(System.Boolean,AVFoundation.AVAudioSessionSetActiveOptions,Foundation.NSError@)" />.
If you change the category at runtime, the route will change.
</para>
</remarks>
</Docs>
<Docs DocId="M:AVFoundation.AVAudioSession.SetCategory(Foundation.NSString)">
<param name="theCategory">One of
<see cref="P:AVFoundation.AVAudioSession.CategoryAmbient" />,
<see cref="P:AVFoundation.AVAudioSession.CategorySoloAmbient" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryPlayback" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryRecord" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryPlayAndRecord" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryAudioProcessing" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryMultiRoute" />.
</param>
<summary>Weakly typed; Requests a change to the <see cref="P:AVFoundation.AVAudioSession.Category" />.</summary>
<returns>
null on success, or an instance of NSError in case of failure with the details about the error.
</returns>
<remarks>
<para>
In general, you should set the category before activating
your audio session with <see cref="M:AVFoundation.AVAudioSession.SetActive(System.Boolean,AVFoundation.AVAudioSessionSetActiveOptions,Foundation.NSError@)" />.
If you change the category at runtime, the route will change.
</para>
</remarks>
</Docs>
<Docs DocId="M:AVFoundation.AVAudioSession.SetCategory(System.String,AVFoundation.AVAudioSessionCategoryOptions,Foundation.NSError@)">
<param name="category">One of
<see cref="P:AVFoundation.AVAudioSession.CategoryAmbient" />,
<see cref="P:AVFoundation.AVAudioSession.CategorySoloAmbient" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryPlayback" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryRecord" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryPlayAndRecord" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryAudioProcessing" />,
<see cref="P:AVFoundation.AVAudioSession.CategoryMultiRoute" />.</param>
<param name="options">Options on how to handle audio.</param>
<param name="outError">On failure, this contains the error details.</param>
<summary>Weakly typed; Requests a change to the <see cref="P:AVFoundation.AVAudioSession.Category" />.</summary>
<returns>
<see langword="true" /> if the request was successful, otherwise the outError parameter contains an instance of NSError describing the problem.</returns>
<remarks>
<para>
In general, you should set the category before activating
your audio session with <see cref="M:AVFoundation.AVAudioSession.SetActive(System.Boolean,AVFoundation.AVAudioSessionSetActiveOptions,Foundation.NSError@)" />.
If you change the category at runtime, the route will change.
</para>
</remarks>
</Docs>
</Documentation>
Loading
Loading