* Fix issue 18111
* Added UI test for iOS and Mac Catalyst
* Adding SettingMaximumTrackColorOnSliderWorks.png from CI snapshot for use with VerifyScreenshot
* Update SettingMaximumTrackColorOnSliderWorks so it applies to iOS and Mac specifically
---------
Co-authored-by: Mike Parker <mikeparker104>
* Avoid crash using Battery from essentials
* Enabled nullable on droid BatteryImplementation
* Update src/Essentials/src/Battery/Battery.android.cs
Co-authored-by: Jonathan Peppers <jonathan.peppers@microsoft.com>
* Updated test naming
---------
Co-authored-by: Jonathan Peppers <jonathan.peppers@microsoft.com>
* [Blazor] Fix concurrency problem in Android builds
* Disable static web assets on nested Rid builds as its not necessary
it runs there.
* The outer build already collects the assets and transforms them into
Maui assets.
* Cleanup
* Update DeviceTests.csproj
* Update all other locations
* [tests] Try bump delay for gc
* [iOS] Bump xcode
Try other place for decisionHandler.Invoke
Revert "[iOS] Bump xcode"
This reverts commit cc470e09e47702c07febf5f5ba8115d7dc31e5fd.
try bump delay
try again
Comment out see if tests passes
Try skip test for iOS 14 and iOS 15
* Fix missing variable
* Update ios.cake
* [ios] update MemoryAnalyzers and cleanup
`MemoryAnalyzers` 0.1.0-beta.5 now warns about interfaces like:
public class MyView : UIView
{
IFoo foo;
}
Since another `UIView` subclass could be assigned to `foo` at runtime,
creating a circular reference -- it should be good to warn about this
going forward. This is what allowed some of the leaks to slip through in
a589b120.
A few new warnings appeared, but I don't think they are real issues
except for `src\Core\src\Platform\iOS\MauiUIContextMenuInteraction.cs`,
which I think we can just remove the field.
I also changed the warning code from `MA*` to `MEM*`, as there were
already error codes in the `MA*` range.
Lastly, I renamed `Microsoft.Extensions.targets` to
`NuGetVersions.targets` as we have many packages in there beyond
`Microsoft.Extensions`. We can also start tracking the `MemoryAnalyzers`
version here as we start adding it to more projects.
* Restore IUIContextMenuInteractionDelegate, fix race condition
Context: https://github.com/dotnet/maui/pull/18449#discussion_r1379791733
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
---------
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
* Prevent iOS CollectionView size shifts from clearing the cell size cache
Fixes#17890
* Try to exclude tests from macOS
* Make test work on older iOS versions
* [tests] Run tests on real devices
* [ios] Allow cake to run on device
* [tests] Get android devices
* fix xharness version
* Clear api version
* [tests] Find the correct android device to install
* [tests] Correct variable name
* [tests] Fix platform version
* Fix variable
* Fix merge
## Issue: Microsoft.AspNetCore.Components.WebView.props is not imported by Maui applications
This issue pertains to the non-importation of Microsoft.AspNetCore.Components.WebView.props by Maui applications. The file has been relocated within the package to ensure its correct pickup and importation during the restore/build process.
Fixesdotnet/aspnetcore#42348.
## Description
The inability of Maui applications to rely on JavaScript (JS) initializers, particularly in the case of Fluent UI, is impacted by this issue. The runtime searches for the initializer's definition in a specific location, which is configured in the props file of the package.
## Impact on Customers
The malfunction of JS initializers in Blazor Hybrid has significant implications for both library authors and end users.
Library authors may find their libraries' functionality restricted due to this bug. JS initializers, a feature in Blazor, enable library authors to inject scripts onto the page at the start of the app. These scripts can augment functionality, enhance user interfaces, or facilitate third-party service integration. For instance, a library author might employ a JS initializer to inject a script that integrates with a mapping service, thereby providing real-time location updates within a Blazor app. This functionality would be unavailable in Blazor Hybrid apps due to this bug.
End users may be unable to use certain libraries, or those libraries may not function as anticipated in Blazor Hybrid apps. If a user were to use a Blazor Hybrid app that relies on the aforementioned mapping library, they would not receive the real-time location updates that they would in a regular Blazor app. This could result in an inferior user experience, and in some cases, render the app unusable.
Users and library authors are compelled to manually inject the script onto the page, and some functionality (like configuring Blazor before it starts) is not available in this mode.
## Regression?
- [ ] Yes
- [X] No
## Risk
- [ ] High
- [ ] Medium
- [X] Low
The failure to load a file from a NuGet package impacts the build. The change causes the file to load at build time, enabling the rest of the pipeline to function as expected.
## Verification
- [X] Manual (required)
- [ ] Automated
The changes were made locally on the package cache and ensured the file got imported.
## Packaging changes reviewed?
- [ ] Yes
- [ ] No
- [x] N/A
## When servicing release/2.1
- [ ] Make necessary changes in eng/PatchConfig.props
### Description of Change
When `ScrollView.Content` changes its alignment (like
`HorizontalOptions` change from `Start` to `End`), then the
`ScrollView`'s layout needs to properly update. It worked on Android and
Mac/iOS, but Windows would not update layout until the window was
resized.
After `HorizontalOptions` changed on the content, Windows would call
`InvalidateMeasure` on the WinUI `ScrollView`, but the child content
didn't get updated. This change makes sure that the content also gets
measured.
This fix is helpful for XAML Hot Reload, so the layout will update as
`HorizontalOptions` changes.
### Issues Fixed
Fixes#14377
Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit
From Version 9.0.0-prerelease.23570.1 -> To Version 9.0.0-prerelease.23570.2
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
* Add hard value for height w/ ItemContent control to partially allow virtualization to work
* Update test to be more robust
* Add real-width for ItemContentControl
---------
Co-authored-by: Mike Corsaro <mikecorsaro@microsoft.com>
Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit
From Version 8.0.0-prerelease.23523.1 -> To Version 9.0.0-prerelease.23570.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Properrly account for App.Screenshot appending a ".png"
extension (always) to the passed in file path, fixing so
that the attachment isn't added twice.
This fixes the "Test attachment file path could not be found"
error that could show for UITest when they fail and SaveDiagnosticLogs
tries to attach screenshots (caused because the actually file
had a ".png.png" extension, so the file with just a ".png"
extension wasn't found).
When navigating between Modal pages, Shell was returning the first page in the stack as the current page, so that page was the one being notified about the navigation. Instead, we should return the last page from the stack.
Fixes https://github.com/dotnet/maui/issues/17978