зеркало из https://github.com/DeGsoft/maui-linux.git
dc62dc1adf
* Added OnPlatform markup extension supporting iOS/Android/UWP for #2608 * Add Default and Other properties to OnPlatformExtension This allows setting a default value for unknown platforms, as well as specify values for arbitrary platforms by using a named parameter like syntax: `{OnPlatform Android=15, iOS=10, UWP=12, Default=11, Other=Tizen:20}` The `Other` supports multiple semi-colon separated values. By using this format, we can make the string more concise than if we used `=` which would have to be escaped in quotes. For example: `{OnPlatform Default=10, Other=Tizen:22;Xbox:20;Switch=25;PlayStation=22}` Added unit tests that verify all the supported combinations. * Add OnIdiomExtension The extension allows the following syntax: `{OnIdiom Phone=23, Tablet=25, Desktop=26, TV=30, Watch=10, Default=20}` At least one value or `Default` must be specified. `Default` is returned whenever the specific idiom was not specified. * Add missing known platforms and return Default if missing Add all strings that are provided in `Device`. Convert individual asserts into test cases for better reporting. Also, whenever a matching platform value isn't specified, return Default instead of null. * Turn OnIdiom asserts into test cases This makes for easier to read, document and report tests. * Add missing platforms to null check * Make Default the content property * Perform type conversion as expected by XamlC Leverage the conversion that is used elsewhere, to return a properly typed object that can be assigned directly to the property. Update tests with typed values since now we get integers, rather than strings out of the parser. * Add Converter/ConverterParameter support * Message should state that the value must be non-null * Remove Unsupported idiom since it's not useful to set You can use Default instead. * Use new GetService<T> extension method for conciseness * Don't fail if service provider is null * Remove Other from OnPlatformExtension As suggested, this might come back in the future in some other form. |
||
---|---|---|
.. | ||
Properties | ||
AttributeTableBuilder.cs | ||
RegisterMetadata.cs | ||
Xamarin.Forms.Xaml.Design.csproj | ||
packages.config |