Description
When using [The49.Maui.BottomSheet](https://github.com/the49ltd/The49.Maui.BottomSheet) to display a BottomSheet, I have discovered a crash on iOS that is happening within the KeyboardAutoScrollManager.AdjustPosition method.

I understand this is caused by working with an external library, however a NullReferenceException being thrown internally by Maui clearly indicates an issue that could affect peoples apps in the wild.
Steps to Reproduce
This issue only occurs when the page calling the BottomSheet is itself a modal page. If there is only 1 page on the navigation stack the controls work correctly & no crash.
- Add a page to the modal stack
- From that page display a bottom sheet
- On that bottom sheet add an
Editor/Entry
- Focus the control
Expected:
The control is focussed, keyboard displayed and you can enter text
Actual:
The following crash happens:
System.NullReferenceException: Object reference not set to an instance of an object.
at Microsoft.Maui.Platform.KeyboardAutoManagerScroll.AdjustPosition()
at Microsoft.Maui.Platform.KeyboardAutoManagerScroll.AdjustPositionDebounce()
at Microsoft.Maui.Platform.KeyboardAutoManagerScroll.DidUITextBeginEditing(NSNotification notification)
at ObjCRuntime.Runtime.ThrowException(IntPtr gchandle) in /Users/builder/azdo/_work/1/s/xamarin-macios/src/ObjCRuntime/Runtime.cs:line 2594
at UIKit.UIApplication.UIApplicationMain(Int32 argc, String[] argv, IntPtr principalClassName, IntPtr delegateClassName) in /Users/builder/azdo/_work/1/s/xamarin-macios/src/UIKit/UIApplication.cs:line 60
at UIKit.UIApplication.Main(String[] args, Type principalClass, Type delegateClass) in /Users/builder/azdo/_work/1/s/xamarin-macios/src/UIKit/UIApplication.cs:line 94
at KeyboardAutoScrollRepro.Program.Main(String[] args) in /Users/axemasta/Documents/Dev/Projects/Maui/KeyboardAutoScrollRepro/KeyboardAutoScrollRepro/Platforms/iOS/Program.cs:line 13
2024-04-09 14:25:19.623589+0100 KeyboardAutoScrollRepro[88641:22091147] Unhandled managed exception: Object reference not set to an instance of an object. (System.NullReferenceException)
at Microsoft.Maui.Platform.KeyboardAutoManagerScroll.AdjustPosition()
at Microsoft.Maui.Platform.KeyboardAutoManagerScroll.AdjustPositionDebounce()
at Microsoft.Maui.Platform.KeyboardAutoManagerScroll.DidUITextBeginEditing(NSNotification notification)
at ObjCRuntime.Runtime.ThrowException(IntPtr gchandle) in /Users/builder/azdo/_work/1/s/xamarin-macios/src/ObjCRuntime/Runtime.cs:line 2594
at UIKit.UIApplication.UIApplicationMain(Int32 argc, String[] argv, IntPtr principalClassName, IntPtr delegateClassName) in /Users/builder/azdo/_work/1/s/xamarin-macios/src/UIKit/UIApplication.cs:line 60
at UIKit.UIApplication.Main(String[] args, Type principalClass, Type delegateClass) in /Users/builder/azdo/_work/1/s/xamarin-macios/src/UIKit/UIApplication.cs:line 94
at KeyboardAutoScrollRepro.Program.Main(String[] args) in /Users/axemasta/Documents/Dev/Projects/Maui/KeyboardAutoScrollRepro/KeyboardAutoScrollRepro/Platforms/iOS/Program.cs:line 13
Link to public reproduction project repository
https://github.com/Axemasta/KeyboardAutoScrollRepro
Version with bug
8.0.14 SR3.1
Is this a regression from previous behavior?
Not sure, did not test other versions
Last version that worked well
Unknown/Other
Affected platforms
iOS
Affected platform versions
iOS 17.2
Did you find any workaround?
This works when the presenting page is not modal:

In this example I have set the Application.MainPage to the page responsible for showing the dialogs. As you can see the dialogs appear and the textfields can be interacted with.
Relevant log output
No response
Description
When using [The49.Maui.BottomSheet](https://github.com/the49ltd/The49.Maui.BottomSheet) to display a
BottomSheet, I have discovered a crash on iOS that is happening within theKeyboardAutoScrollManager.AdjustPositionmethod.I understand this is caused by working with an external library, however a
NullReferenceExceptionbeing thrown internally by Maui clearly indicates an issue that could affect peoples apps in the wild.Steps to Reproduce
This issue only occurs when the page calling the
BottomSheetis itself a modal page. If there is only 1 page on the navigation stack the controls work correctly & no crash.Editor/EntryExpected:
The control is focussed, keyboard displayed and you can enter text
Actual:
The following crash happens:
Link to public reproduction project repository
https://github.com/Axemasta/KeyboardAutoScrollRepro
Version with bug
8.0.14 SR3.1
Is this a regression from previous behavior?
Not sure, did not test other versions
Last version that worked well
Unknown/Other
Affected platforms
iOS
Affected platform versions
iOS 17.2
Did you find any workaround?
This works when the presenting page is not modal:

In this example I have set the
Application.MainPageto the page responsible for showing the dialogs. As you can see the dialogs appear and the textfields can be interacted with.Relevant log output
No response