* Resolve fallback type before trying to make constructed generic type
The FallbackTypeResolver hander in the Forms previewer does not have access to the x:TypeArguments attribute, so if it constructs a proxy generic type from metadata it can't construct it. So the previewer has to create an unconstructed generic type, and Forms will need to construct it.
So we need to move the code that constructs the generic type after the call to FallbackTypeResolver.
(cherry picked from commit 5acfea4f457453856a8905002f4d35c8e9aad106)
* Fix error building DesignTimeLoaderTests in 4.1
* [Build] Remove submodule
* [Build] Use GitInfo to set Assembly metadata
* [Build] Remove extra prop
* [Build] Update version
* [Build] Update versions to be consistent with existing Build.Tasks
* [Build] Update build number
* [Build] make sure build tasks gets info
* [Build] Add assembly info unit test
* [Test] Refactor test for gitinfo on vsts
* Enable "treat warnings as errors"
* Remove unnecessary for loop
* Remove properties which already exist in base class
* Make property hiding explicit and obsolete hiding property
* Move Treat Warnings as Errors setting to props file
* Fix weird quotation changes in Xamarin.Forms.Build.Tasks.csproj
* Scrub empty WarningsAsErrors tags
* Remove unused variable
* Fix TearDown method hiding in UI tests
* Fix Id member hiding in test for Bugzilla32871
* Fix RootPage member hiding in Bugzilla51503
* Fix RooPage member hiding in Issue1483
* Disable warnings for deprecated OpenGL calls
* Fix member hiding in test view models
* Fix RootPage member hiding in Issue1931
* Fix Id member hiding in Bugzilla42620
* Fix AutomationId member hiding in Bugzilla57114
* Fix Layout member hiding in Bugzilla40911
* Remove unused variables from Bugzilla31114
* Remove unused variable
* Fix various unused variable warnings
* Disable warning to leave example code for reference
* Fix unused variable from macOS test
* Remove unused members
* Fix unused variable warnings
* Fixed unused property warnings
* Fix warnings for unused code
* Disable 'await' warning
* Remove unused variable
* Adding pragma directives for await warnings
* Remove member hiding
* Turn off global "Treat warnings as errors" in other platforms
* Use MarkerId instead of obsolete Id member
* Fix await warnings in WPF GeocoderBackend
* Add missing await
* Disable warning for unused event
* Revert "[X] only require escaping if starts with '{' (#5169)"
This reverts commit cd73391c3a.
* Revert "[Xaml] require escaping curly braces (#4723)"
This reverts commit 6753ace40e.
* Make sure parsing doesn't fail when there *are* curly braces now
An alternate xaml resource file provider can request the XamlLoader to
_not_ ignore normally ignored properties in prebuilt XF design xmlns, as
in the following snippet:
```xaml
<ContentPage
xmlns="http://xamarin.com/schemas/2014/forms""
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml""
xmlns:d="http://xamarin.com/schemas/2014/forms/design""
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006""
mc:Ignorable="d"">
<Label d:Text="Bar" Text="Foo" x:Name="label" />
</ContentPage>
```
The `d:` should be the prefix used by default for this, but any other
prefix will do too.
The `d:Text` property maps to the exact same property as `Text`, as the
XmllnsDefinitionAttributes are identical (that's convenient from a Intelisense
point of view), but, when (and only when) instructed by a provided Xaml resource
loader, the `d:Text` will override the `Text` property.
This works with virtually all properties defined on built-in Xamarin.Forms
controls, but it doesn't mean it's a sane idea to try to assign design value
to all existing properties.
The APi ofr setting the ResourceLoader had to change, and instead of taking
pre-defined arguments, it accepts and returns query and response types. This
is slightly less convenient to invoke through reflection, but way more easy
to extend in the future.
* [X] throw XPE on missing element .ctor
In case of runtime parse, wrap the MissingMethodException in a
XamlParseException, to get lineInfo. In case of XamlC, detect missing
constructor and fail early.
- fixes#4751
* fix for ns1.0
new exception being thrown:
>Xamarin.Forms.Xaml.XamlParseException : Position 7:4. Unexpected empty element '<Grid.ColumnDefinitions/>'
also reduce the number of places we resolve lineInfo for exceptions
purposes
- fixes#4553
* [XamlC] Compile the {DataTemplate} markup
- fixes#4592
* [C] throw XPE on missing mandatory member
TypeName for {Type} and {DataTemplate} markup extensions is mandatory.
Throw a XamlParseException, with context, when that happens.
* fix style
* (ab)use of nameof
* [Shell] The glorious Shell
* set the flag for the test
* remove the FastRenderer flag
* [Android] If we were disposed earlier Element can be null and Control was disposed
* [Controls] Seems part of #2520 was solved so we don't need this
* [iOS] Fix NRE on the ScrollviewTracker
* add missing constructor for RenderWith
* [Core] propagate visual/flow through shell
* use interlock increment
* hide IDataTemplateController
* [Android] Fix TableViewModelRenderer dispose
* [Core] propagate visual/flow direction through shell hierarchy
* [Android-Gallery] removed some left in settings changes that effect UI Tests
* [iOS,Droid,Core] Code formatting
* [iOS,Core] Last minute style refactoring
* Make XmlnsDefinitionAttribute public. Change XamlC, XamlG, and XamlParser to search for all referenced/available assemblies for attribute and referenced types. Add XAML unit tests and control gallery entry.
* change ns for xmlnsdefattribute
- fixes#2691
Up to now, OnPlatform and OnIdiom markup extensions were checking for
type converters on
- target type
- the property being set
in case of a bindable property, the converter on the BP getter or
GetBP() static method (for attached BPs) wasn't checked.
This PR adds the check for that, plus a unit test.
- fixes#4319