Skip to content
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

[Android] fixes Right-to-Left Hamburger icon in MasterDetailPage #4716

Merged
merged 1 commit into from Jan 10, 2019

Conversation

@paymicro
Copy link
Collaborator

commented Dec 12, 2018

Description of Change

fixes Right-to-Left Hamburger icon in MasterDetailPage

Issues Resolved

API Changes

None

Platforms Affected

  • Android

Behavioral/Visual Changes

None

Before/After Screenshots

Before
screenshot_5

After
screenshot_4

Testing Procedure

  • In ControllGalery run UItest 2818
  • Hamburger icon on the main page should be on the right

PR Checklist

  • Has automated tests
  • Rebased on top of the target branch at time of PR
  • Changes adhere to coding standard

@samhouts samhouts requested a review from mattleibow Dec 17, 2018

@paymicro paymicro changed the base branch from master to 3.5.0 Dec 20, 2018

@paymicro paymicro changed the base branch from 3.5.0 to master Dec 20, 2018

@paymicro paymicro changed the base branch from master to 3.5.0 Dec 20, 2018

@mattleibow

This comment has been minimized.

Copy link
Contributor

commented Dec 20, 2018

@paymicro @StephaneDelcroix Just checking we are merging things right... there appears to be lots more files. Are we on the right base? Did we merge the right branch?

@StephaneDelcroix

This comment has been minimized.

Copy link
Member

commented Dec 20, 2018

@paymicro when changing the target, you also have to rebase your branch. when it's done, remove the 'do-not-merge' label

there are multiple ways to do this, here's one

git checkout fix-2818
git reset --hard 3.5.0
git cherry-pick 65d9b19110b663c8ef1c07a800bf4d0e0fad7d4b
git cherry-pick 636922815f6b7a185c670d171f75c158927fa253
git push -f

@paymicro paymicro force-pushed the paymicro:fix-2818 branch from 74b894e to 00c99a7 Dec 20, 2018

@samhouts samhouts removed this from In Review in v3.6.0 Dec 20, 2018

@samhouts samhouts added this to In Progress in v3.5.0 Dec 20, 2018

@samhouts samhouts moved this from In Progress to In Review in v3.5.0 Jan 2, 2019

@rmarinho rmarinho merged commit 6546689 into xamarin:3.5.0 Jan 10, 2019

2 checks passed

Xamarin Forms #PR-4716 - (2291000) succeeded
Details
license/cla All CLA requirements met.
Details

v3.5.0 automation moved this from In Review to Done Jan 10, 2019

@samhouts samhouts added this to the 3.5.0 milestone Jan 23, 2019

jfversluis added a commit to jfversluis/Xamarin.Forms that referenced this pull request Feb 22, 2019
Update (#12)
* [XamlC] Always enable implicit casting, boxing and unboxing (#4238)

* [X] throw XPE on missing element .ctor (#4786)

* [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

* [Android] Check if Drawable is null in Draw override (#4783)

- fixes #4782

* [XamlC] instantiate generic parameter on base types (#4776)

* [XamlC] Instantiate generic parameters in base type generic arguments

* Add unit test for #4047

- fixes #4760
- closes #4047

* [Android] set ClipBounds to use ViewCompat.SetClipBounds (#4819)

* [X] Design time properties (#4743)

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.

* Remove unnecessary OK button check that won't pass on older Android versions

* [*] Drop MenuItem.IsEnabledPropertyName (#4659)

* [*] Drop MenuItem.IsEnabledPropertyName

While doing one of the big refactoring of 2006, we missed an
opportunity to use a propertyKey for IsEnabled, ending up in some
less-than-optimal  design choices, like IMenuController.IsEnabledPropertyName.

Properly using a public r-o BP removes the need for IsEnabledPropertyName.

* other plats

* use the key

* [Flex] fix Padding on the FlexLayout (#4823)

As the flex engine doesn't handle x,y offset on the root layout,
handle that at the XF.FlexLayout level.

- fixes #2663

* [Shell] fix queryParam navigation (#4843)

when navigating to pages, not shell-section, handle the queryParams

- fixes #4837

* Make ListView CachingStrategy property visible to Intellisense (#4846)

* Implement Android single selection in CollectionView (#4651)

* Implement Android single selection

* Fix naming conflicts with SelectionChangedEventArgs

* Split files by class; make SelectionChangedEventArgs constructors internal;
Optimizations for SelectionChangedEventArgs;
Fire selection changed event/command from property changed handler;

* Update Xamarin.Forms.Core/Items/SelectableItemsView.cs

Co-Authored-By: StephaneDelcroix <stephane@delcroix.org>

* Set default value for SelectedItemProperty

* Remove unnecessary null check

* Fix order of OnElementChanged and Setup/Teardown Element

* Fix project file weirdness

* Add instructions to manual UI test

* Remove nonsensical comments

* Make test button visible on UWP

* Min viable FontImageSource (#4747)

* min viable fontImageSource

* [UWP] Min viable FontImageSource (#4817)

* [UWP] font image source

* address comment

* [UWP] performance optimization of the rendering of icons font
- the minimum Dpi of the icon is 300

* char -> string; CR feedback

* Add instructions for test 764; remove automated test that did nothing;

* Clean up old comments

* Add manual test run instructions for UI test 1025

* Add manual instructions to UI test 1026

* Automate UI test 1028

* Add manual test instructions for 1075, match button text with actual color

* Automate UI test 1219

* Automate UI test 1236

* Automate UI test 1267

* Fix test 852

* Add missing preserve attribute for UI test 1267

* [iOS] Implement item move on iOS CollectionView (#4863)

* Implement item move on iOS CollectionView

* Remove private modifier

* Use PushAsync for 1305 UI test so the toolbar shows up

* Material Design Renderers for the Material Visual (#4733)

* Use the auto-generated constants

* [Visual] Work on the Material Frame

* Improving the code for the sample

* Added a controller to help with frames that have additional padding
 - Android MaterialCardView does not use the default padding to determine where the content starts, rather it uses the content padding of the view because there is a border that does not affect the content

* [Visual] Added a few extra checks on Android to reduce unnecessary interop

* [Visual] A few more frame changes and some button tweaks

* [Visual] use the themers on iOS and save default properties

* [Visual] Add placeholders for themer and cache defaults

* [Visual] Added the material slider for iOS
 - Android does not have a custom control, so uses the existing renderer

* [enhancements] Move from duplicate LoadImageAsync code to GetNativeImageAsync

* [visual] Updated the controls to use the new iOS bits

* [visual] some fixes for material components

* [visual] Added hacks for material alerts

* [visual] removing the alert changes for the main branch

* [visual] Update the MaterialComponents NuGet

* [visual] Rework the theming/customization of Material controls on iOS

* [visual] fix the places where the user colors were being changed

* [visual] Improve the ColorStateList management for Android

* [visual] Re-implemented the Android ProgressBar as a fast, material renderer

* Material Entry

* [visual] Add Android ActivityIndicator

* filter out material layouts for 8.1

* remove folder

* fix __ANDROID_28__

* MaterialContextThemeWrapper

* [visual] remove the `IFrameController` interface

* [visual] reverting the changes to the Frame layout

* [visual] reverting whitespace

* [visual] make sure to raise both property changed

* formatting changes

* fixing colors on android to match with ios themes

* Update Xamarin.Forms.Platform.Android/Material/MaterialButtonRenderer.cs

Co-Authored-By: mattleibow <mattleibow@live.com>

* fix sizing of entry with infinite width size request

* update to release 28 of support

* Update Xamarin.Forms.Platform.Android/Resources/values/styles.xml

Co-Authored-By: PureWeen <shane94@hotmail.com>

* Update Xamarin.Forms.Platform.Android/Resources/values/styles.xml

Co-Authored-By: PureWeen <shane94@hotmail.com>

* PR Comment changes

* added case in GTK listviewrendered for change of SelectedItem property (#4757)

* [Android] Ensure the page background can be un-set (#4916)

* [Android] If drawable doesn't exist don't dispose of it (#4904)

* [iOS] CollectionView EmptyView (#4870)

* Implement EmptyView for iOS

* Allow for changes to EmptyView on iOS; rename confusing variables;

* Fix incorrect bug description

* Only post DisableTimer to the queue if it's not on the UI thread (#4866)

* hide obsolete API from editor (#4938)

- fixes #4772

* [UITests] Disable test #1931 on iOS12 for now

* [Android] Fix for ListViewRenderer causing ObjectDisposedException (#4931)

* [Android] Fix for ListViewRenderer causing ObjectDisposedException

* Probably cleaner to use _refresh for IsDisposed check

* [Enhancement] Entry: Read-only Entry and Editor (#1972)

- fixes #1678
- fixes #4834

* InputView BindableProperty IsReadOnly

* Android Editor and Entry setup

* MacOS Editor and Entry setup

* Tizen Editor and Entry setup

* UAP Editor and Entry setup

* WPF Editor and Entry setup

* iOS Editor and Entry setup

* Issue1678 - TestContentPage added

* Tests added

* Tizen Editor and Entry fix

* UI Test fix

* Android fix for Entry and Editor.

* Unit Tests fix.

* Android Renderer first try.

* MacOS Entry renderer small fix.

* UpdateEditable fix.

* Android Entry and Editor reduced number of calls to BP.

* fix TestAttributes conflicts

* Remove keyboard

* [macOS] relinquish first responder

* [Android] remove call to UpdateCursorSelection

* [UWP] fix tabs

* Map with ItemsSource and ItemTemplate (#4269) fixes #1708

* [Android] fixes Right-to-Left Hamburger icon in MasterDetailPage (#4716) fixes #2818

* [UITests] Ignore test failure on iOS9, use manual review

* [tests] UWP requires file extensions (#4945)

* [macOS] BoxView binding to BackgroundColor broken (#4958)

- fixes #4338

* fix #4788 (#4959) fixes #4788

* [tests] UWP requires file extensions (#4944)

* Auotmate test for Issue 1538

* Automate test for Issue 1557

* Automate test for Issue 1590

* Automate test for Issue 1685

* Automate test for Issue 1700

* [Android] Fix brief display of incorrect keyboard (#4384)

* Automate test for 39072

* Add Focus test category

* Add test instructions

* Use named flags value instead of magic number

* Rearrange keyboard hide/show handling when focus changes; fixes #3647

Clean up usings

Add null checks in case Controls are unloaded before the handler executes

* Update Xamarin.Forms.Platform.Android/ContextExtensions.cs

Co-Authored-By: hartez <hartez@users.noreply.github.com>

* Update Xamarin.Forms.Platform.Android/ViewRenderer.cs

Co-Authored-By: hartez <hartez@users.noreply.github.com>

* Fix bug where programmatic focus of SearchView does not display keyboard;
Add test for programmatic focus of SearchBar, Entry, Editor;

* Prevent object disposed exception if control is disposed before posted ShowKeyboard is run

* Changes that VS Mac and Dev16 automatically make when you open SLN (#4969)

* vsmac changes these when you open it

* dev 16 changes

* [iOS] Fix unsubscribing the `PropertyChanged` event of the ViewCell (#4728)

* [Controls] Add repo for comment related with #4186

* [iOS] Fix unsubscribing PropertyChanged when disposing ViewTableCell

* [Controls] Fix test

* Disable suggestions for all Pickers (#4824) fixes #4629

* Disable suggestions for all Pickers

* Removed redundant disabling of spellcheck

* fix merge

* fix merge

* [iOS, Android] Implement Snap alignment for CollectionView (#4414)

* Implement snap alignment for iOS CollectionView

* Add missing End/MandatorySingle implementation for Android

* Implement MandatorySingle snapping on iOS

* Fix issues with Android MandatorySingle skipping items;

* Fix rebase issue

* [Build] Fix method accessibility

* [ios] clear perfect value add ui test (#4968)

- fixes #4957

* [UITests] Fix #1685 UITest

* Add instructions to test 33450

fixes #2246

* Null/disposed check for spannableString to fix ObjectDisposedException. (#4878) Fixes #4864

* [UITest] Add Preserve to issue #1931 uitest

* [C] Obsolete Vec2 (#4980)

* [Shell] fixes navigate to a relative URI (#4977)

* [UITests] Fix #1685 UITest

* [Android] set ClipBounds to use ViewCompat.SetClipBounds (#4954) fixes #4789

* [UWP] Fix ScrollViewer Horizontal Scroll Bar Visibility when set before control load (#3195) fixes #3193

* Fix 3193

* Update to restore default behavior

* Fix 3193

* Update to restore default behavior

* Spelling Fix

* Add preserve attr to 1326,1400

* Remove Unused Types (#4948)

* Remove NavigationMenu & Renderers
 - Never completed and there is the new CollectionView
 - Only (partially) implemented on iOS/Android

* Removing ToolbarButton and related types
 - `ToolbarButton`, `ToolbarImageButton`, `IToolbarButton`
 - this appears not to be used at all
 - was part of `ToolbarRenderer` in the old Duplo repo, which has since been removed

* Update Xamarin.Forms.Platform.cs

* Implement CollectionView item replace on iOS (#4865)

* .create-nuget.bat + maps (#4952)

* [UWP] Implementation of Switch.OnColor (#4883)

* Implemented Switch.OnColor on UWP

* Processed first feedback

* Removed hardcoded opacity

* Update Xamarin.Forms.Platform.UAP/SwitchRenderer.cs

Co-Authored-By: jfversluis <github@geraldversluis.nl>

* Update Xamarin.Forms.Platform.UAP/SwitchRenderer.cs

Co-Authored-By: jfversluis <github@geraldversluis.nl>

* [C] add null check for FlexLayout.OnPropChanged (#5012)

We had null checks in 3 places, not the fourth one. and that case was
hit by #5001.

- fixes #5001

* Changed Span default binding to OneWay (#4850)

* Fixed bug where switch in a `TableView` would disappear on UWP. The method for setting the default color was only called when it was in a ListView. Also renamed the method to be more clear. (#4912)

* [UWP] fixes crashing ActivityIndicator with COMException (#4988)

fixes #4982

* [UWP] Fixes IsTabStop property in Layouts (#4703)

* [UWP] the ScrollView does not gain focus

* address comments

fixes #4653

* Add Serializable on exception types (#4690)

* Added Serializable on exception types. See #4685

* Make exception types public. See #4685

* Added default-recommended constructors to exception classes. See #4685

* Make exception types compatible with .net standard 1.0 See 4685

* Call base in xaml parse exception. See #4685

* Merged XamlParseException #4685 related changes with chanes of #4582

* [UWP] Fixes hide DisplayActionSheet behind the dialog box (#3163)

* [Build] Fix provisioning

* [Build] Update build def

* [Build] Update variable for keychain pass

* Remove unnecessary search for root (#5036)

* [Android] Tests for multiple item collection changes in CollectionView (#4869)

* Add multi-item removal test; handle multi-item removal scenarios on Android;

* Add test harness for adding multiple items to CollectionView at once

* Add test harness for multi-item move/replace; handle Android multi-item move;
Fix bug when replacing differently-sized item sets on Android;

* Add test harness for INotifyCollectionChanged Reset

* Performance improvements and clearer test code

* Remove private modifier

* Fix bug where updating items sources changed source types

* Remove private modifier

* Make index checks clearer

* Remove private modifier

* Remove private modifier

* Move code into if clause

* Use local variable

* Better indication of how to use collection modification tests

* Include end index in items moved

* Make update range include items between source and destination indexes

* Remove commented code

* [Android] Fixes keyboard navigation in custom view (#4612)

* [iOS] CollectionView single selection (#4985)

* Working single selection on iOS

* Fix rebase errors

* Make ItemsLayout a constructor parameter for the Delegator

* Make common VSM states public consts

* Make file and type name match

* Simplify method we'll be completely rewriting while implementing the next feature

* VS didn't save project file changes

* Update submodule

* [iOS] Move Material iOS components to a separate nuget (#5026)

* [ios] extract ios material out to its own project

* [core] fix platform messaging

* add material to other test projects

* update MaterialComponents on all test projects

* remove material from platform

* yml updates

* nuspec

* add iOS description

* language

* add dummy file so package installs into netstandard/android

* Add Target Framework checks

* [Android] fixes issue content set after an await is not visible (#4861)

* [Android] fixes issue content set after an await is not visible

* [Android] refactoring. Fixes frame inside frame does not resize after visibility changed.

* - add on-screen description to 1332 test

* - add 1760 uitest uses StackLayout

* fix autotest

* [Enhancement][Core] ListView should report index of item on all events (#4431)

* Update from origin (#8)

* [C] VisibilityConverter Trims input (#3581)

For CSS purposes, the VisibilityConverter was added, and actually
replaced the `Boolean.Parse(str)` call for parsing Visibility.
`Boolean.Parse()` trims input, and the converter was not, so this was a
regression.
This changes Trim() the input, to be fully backward compatible.

- fixes #3554

* Ensure ConstructorCountId and TimeId elements are available before querying them (#3588)

* For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)

This would allow previewer/designer/reloader to determine the source of a
stylesheet and refresh its content when appropriate.

* Revert "For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)"

This reverts commit f66a72de5b475a6a8387a80e418997b38dc40d4c.

* Fix NRE; Ret 0 if Text null (#3594) fixes #3579

* [UWP, WPF] Fixes rendering of the main page (#2896) fixes #2704

* [Core] Ignore Shamehat target when running DesignTimeBuild (#3605)

* [XamlC] Fix binding compilation fo value types (#3551)

properly load valuetype arguments of generated setters, using ldarg,
instead of ldarga.

- fixes #3539

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

* [Android] Fix Label LineHeight (#3452)

* fix line height android

* Make UAP respect initial LineHeight

* update .create-nuget.bat (#3638)

* Add Null Check to GetRenderer (#3575)

- fix #3563

* Fix 3562 Null Reference Exception (#3576)

- fixes #3562

* Fix 3564 Null Reference Exception (#3578)

- fixes #3564

* [iOS] AutomationProperty support for cells (#3313) fixes #3296

* [iOS] AutomationProperty support for cells

* Add test case to AutomationProperties gallery

* [UWP] Fix crash app when create navigation/tabbed page without children pages fixes #3188 (#3514)

* [Android] Use height when determining ScaledScreenSize; fixes #3609 (#3641)

* [C] Set binding context on Span Gestures (#3639)

* [Core] Set binding context on Span Gestures
* [Core] Simplify loop setting child binding context

- fixes #3524

* Update PULL_REQUEST_TEMPLATE.md

* [Android] remove deprecated AndroidUseLatestPlatformSdk (#3672)

* [iOS] iPad ActionSheet should always have a Cancel method (#3636)

* Add repro for #3049

* [iOS] iPad ActionSheet should always have a Cancel method

fixes #3049

* [Android] fixes #3675 - set  initial ScrollView Scroll values when RTL (#3676)

* [Android] API check for Shadow properties on Button (#3617) fixes #2702

* [Android] API check for Shadow properties on Button

* Fix swapped shadow values

* [iOS] fixes #3525 - add epsilon for float compare (#3654)

* [iOS] fixes #3525 - add epsilon for float compare and make region immutable

* [ControlGallery] spread out spans to account for click slop

* [ControlGallery] - adjust span slightly for android test

* [Core] remove private

* Fix text wrapping (#3671) fixes #3634

* [GTK] Fix navigation bar visibility updates (#3651)

* Fix partially  #3585 (#3592)

* Make webkit-sharp.dll.config cross-platform

* Update webkit-sharp.dll with missing signals bindings

see: https://github.com/ylatuya/webkit-sharp/tree/fluendo

* [iOS, UWP] fixes #2894 - Gestures collection changes weren't correctly propagating (#3643)

* [iOS, UWP] fixes #2894 - Gestures weren't wiring up to spans in all cases

* [Core] remove ChildGestureRecognizers when spans get removed

* [iOS] removed incorrect return from null

* Fixes #3663 (#3684)

* Fix ScrollView Padding issue (#3685)

* [WPF] Memory leak when you pop a TabbedPage (#3372) fixes #3267

* Fix [WPF] Memory leak when you pop a TabbedPage

* Update ViewRenderer.cs

* Update ViewRenderer.cs

* [Android,iOS,UWP] Allow Entry CursorPosition/SelectionLength to be set in ctor (#3402) fixes #3343 fixes #3633

* Add repro for #3343 + unit tests

* [Core] Disallow negative values for CursorPosition/SelectionLength

* [All] CursorPosition/SelectionLength can bindin ctor & clear value

fixes #3343

* typo

* cleanup

* [iOS] Cursor snaps to end

* try/catch

* [CSS] add more properties (#3466)

map new CSS properties:
- `color` on `IColorElement` (`ActivityIndicator`, `BoxView`),
  `ProgressBar` and `Switch`
- `row-gap` and `column-gap` on `Grid`
- `transform` and `transform-origin` on `VisualElement`
- `vertical-align` on `Label`

add new XF-specific CSS properties
- `-xf-placeholder` and `-xf-placeholder-color` on `Editor`, `Entry`,
  `SearchBar`
- `-xf-max-length` on `InputView` (`Editor` and `Entry`)
- `-xf-bar-background-color` and `-xf-bar-text-color` on
  `NavigationPage` and `TabbedPage`
- `-xf-orientation` on `ScrollView` and `StackLayout`
- `-xf-horizontal-scroll-bar-visibility` and
  `-xf-vertical-scroll-bar-visibility` on `ScrollView`
- `-xf-min-track-color`, `-xf-max-track-color` and `("-xf-thumb-color`
  on `Slider`
- `-xf-spacing` on `StackLayout`

This PR replaces and closes #3276

- fixes #2891

* [iOS] Specify a default size for UISearchBar width if needed (#3635) fixes #3413 fixes #2139

* [Controls] Add reproduction and test case for issue #3413

* [iOS] Don't use max value for iOS UISearchbar breaks on iOS 11.3

* [iOS] Force width value so we can renderer UISearchBar on iOS10 with infinite width

* [Controls] Fix spelling and add Manual Review to the test of #3413

* [iOS] Simplify code for UISearchBar width

* [iOS] Return always some width from measure the UISearchBar on IOS

* [Controls] Add reproduction case for issue #2139

* [UWP] Fixed double set margins in Layouts (#3570) fixes #3398 fixes #3616

* [Android] Support multiple clipping settings in single layout (#3559)

* Repro

* Fix for API 18+

*  [iOS] Unsubscribe CellPropertyChanged when SwitchCellRenderer is disposed (#3518)

* [Controls] Add repo of issue #3408

* [iOS] Unsubscribe CellPropertyChanged when cell is disposed

* [Controls] Add issue to project

* [iOS] Introduce CellPropertyChange to CellTableViewCell to used by all other cell renderers

* [Controls] Simplify Issue

* [iOS] Remove PropertyChanged that was not used

* [Controls] add check for null binding on template, add notes about issues

* [Controls] added reference to Android crash

* [iOS]Use existing PropertyChanged on ViewCelRenderer

* [iOS] Keep the existing override so we don't break users

* Update TextCellRenderer.cs

* update submodule

* 24H Mode (#3701)

The 24h mode for the pickerdialog was not working.

Version 3.1 was working fine. 

Here is an updated file.

* [UWP] uncomment tests that are now passing for 3188 (#3723)

* [UITest] Update Xamarin.UITest nuget package (#3632)

* [UITests] Update Xamarin.UITest 2.2.5

* [UITests] Try fix Toolbaritems

* [UITest] Update to 2.2.5-1606

* [UITests] Small Fixes and workarounds to make uitest happy

* [UITests ] Add delay to 1733 for API28

* [Android] Revert bad merge (#3746)

fixes #3705

* [Android, iOS] Fixes layout compression causes (#3698) fixes #3624

* [Android, iOS] Fixes layout compression causes

* [iOS] improve UpdateNewElement method

* Fix build error hopefully

* [UWP] Fixes CollectionChanged events in ListView (#3323)

* fixes #3273

* [UWP] Fixes CollectionChanged events in ListView

* a wrapped collection is used only if the SourceItem is not ObservableCollection

* improve uitest

* fixed NRE in empty ListView

* added a sortable custom renderer for UItest

* minor refactoring

* fixed reset of not wrapped collections

* addressing comments

* [UWP] remove WinRT hack

* [UWP] add missing using and cleanup additional resources

* [Android] Update Forms to remove API28 deprecated API (#3653) fixes #2128 fixes #3629

* [Build] Update provisioning

* [Controls] Ignore deprecated  Android API usage

* [Android] Remove use of obsolete color usage

* [Android] Remove app fragment usage

* [android] Rollback changes to EntryCellRenderer

* [Android] Better way to get the default color for the label text

* [Android] Obsolete message for ContentPage.CreateFragment()

* [ControlGallery] - create bitmap from Drawable to use for pixel location

* [Android] Use textcolor resource

* Update submodule

* Fix tests (#3771)

* [ControlGallery] Wait for element and add timing to tests

* [iOS] Fix NRE on RenderPool

* Add TabStop/TabIndex (#2795)

* [Core, UWP, Android] support TabStop/TabIndex

* removing linq

* add iOS / MacOS implementation

* add WPF implementation
fixes UWP implementation

* - addressing comments
- improve test
- optimizations
- added previous tab direction in same tab group

* addressing comments

* [Android] support tabstop for pickers

* - moving shared code to a static class
- removed reflection

* ITabStop -> changed to internal, renamed, added in to fastRenderers

* Update ITabStop to be public

* Fix : Binding Icon in ToolbarItem in TabbedPage doesn't refresh (#3761) fixes #3756

* [iOS] Fix NRE on ContextCell (#3714) fixes #3275

* [Controls] Add repo for issue #3275

* [iOS] Fix NRE when no gestures exist on table

* [iOS] Null check outside loop

* [iOS]Make sure to dispose/unhook when we are removed from UITableView.

* Update submodule

* [iOS] Don't double dispose ContextActionCell

* WPF - Fix Width and Height measurement when GetDesiredSize (#3750)

* WPF - Reset Width and Height when GetDesiredSize

* Some formatting changes

* Add APP directive

* [WPF]Fix build

* [Android Maps] Make markers available to subclasses (#3751)

* Make markers available to subclasses

* Fix build

* Use Find instead of FirstOrDefault

* [UITests] wait for element before querying for it (#3791)

* [UITests] wait for element before querying for it

* [Controls] generalize and better represent intended behavior

* WPF - Fix Local store not persistant when restarting App (#3752)

-fixes #3541
* WPF - Fix Local store not persistant when restarting App
* Add UITest
* [Controls] Add automated UI Test

* [UITests] Isolate test 3408

* [UITest] Update Xamarin UITest packages

* [UWP] implement Replace without reloading ListView (#3792)

-fixes #3788
* [UWP] implement Replace without reloading ListView
* [UWP] extract bindingcontext of new item for replace

* [iOS] Use UIApperance default color for UISwitch (#3819)

* [Controls] Set default color of UISwitch to Red

* [iOS] Use default color from Apperance API

* [UITests] replace awaits with more reliable WaitForElement (#3835)

* [Core] Propagate BindingContext changes to TitleView (#3823)

* [Core] Propagate BindingContext changes to TitleView

* [Tests] Move UI test to Core Unit Test

* [A] do not draw gradient for empty CornerRadius (#3786)

Drawing CornerRadius (introduce by #1998) when the CornerRadii are
actually 0 causes scaling artifacts on API < 25.

This fixes the regression when no CornerRadius is set. Expect blurry
border scaling with CornerRadius not empty and API < 25

- fixes #3781

* [Android] Fix WebView.Navigating event, make WebViewClient inheritable (#3780)

* Extracted WebViewRenderer.WebClient to FormsWebViewClient, moved SendNavigating call from ShouldOverrideUrlLoading to OnPageStarted

* Changed _webViewClient and GetWebViewClient() method to return base class

* Changed public things to protected internal

* Fix spaces to tabs indentation to match the coding style (#3745)

* [Build] Fix merge

* Fix #3097 swipe gesture not being handled in VisualElementTracker. (#3098) Fixes #3097

* Update from origin (#9)

* [C] VisibilityConverter Trims input (#3581)

For CSS purposes, the VisibilityConverter was added, and actually
replaced the `Boolean.Parse(str)` call for parsing Visibility.
`Boolean.Parse()` trims input, and the converter was not, so this was a
regression.
This changes Trim() the input, to be fully backward compatible.

- fixes #3554

* Ensure ConstructorCountId and TimeId elements are available before querying them (#3588)

* For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)

This would allow previewer/designer/reloader to determine the source of a
stylesheet and refresh its content when appropriate.

* Revert "For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)"

This reverts commit f66a72de5b475a6a8387a80e418997b38dc40d4c.

* Fix NRE; Ret 0 if Text null (#3594) fixes #3579

* [UWP, WPF] Fixes rendering of the main page (#2896) fixes #2704

* [Core] Ignore Shamehat target when running DesignTimeBuild (#3605)

* [XamlC] Fix binding compilation fo value types (#3551)

properly load valuetype arguments of generated setters, using ldarg,
instead of ldarga.

- fixes #3539

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

* [Android] Fix Label LineHeight (#3452)

* fix line height android

* Make UAP respect initial LineHeight

* update .create-nuget.bat (#3638)

* Add Null Check to GetRenderer (#3575)

- fix #3563

* Fix 3562 Null Reference Exception (#3576)

- fixes #3562

* Fix 3564 Null Reference Exception (#3578)

- fixes #3564

* [iOS] AutomationProperty support for cells (#3313) fixes #3296

* [iOS] AutomationProperty support for cells

* Add test case to AutomationProperties gallery

* [UWP] Fix crash app when create navigation/tabbed page without children pages fixes #3188 (#3514)

* [Android] Use height when determining ScaledScreenSize; fixes #3609 (#3641)

* [C] Set binding context on Span Gestures (#3639)

* [Core] Set binding context on Span Gestures
* [Core] Simplify loop setting child binding context

- fixes #3524

* Update PULL_REQUEST_TEMPLATE.md

* [Android] remove deprecated AndroidUseLatestPlatformSdk (#3672)

* [iOS] iPad ActionSheet should always have a Cancel method (#3636)

* Add repro for #3049

* [iOS] iPad ActionSheet should always have a Cancel method

fixes #3049

* [Android] fixes #3675 - set  initial ScrollView Scroll values when RTL (#3676)

* [Android] API check for Shadow properties on Button (#3617) fixes #2702

* [Android] API check for Shadow properties on Button

* Fix swapped shadow values

* [iOS] fixes #3525 - add epsilon for float compare (#3654)

* [iOS] fixes #3525 - add epsilon for float compare and make region immutable

* [ControlGallery] spread out spans to account for click slop

* [ControlGallery] - adjust span slightly for android test

* [Core] remove private

* Fix text wrapping (#3671) fixes #3634

* [GTK] Fix navigation bar visibility updates (#3651)

* Fix partially  #3585 (#3592)

* Make webkit-sharp.dll.config cross-platform

* Update webkit-sharp.dll with missing signals bindings

see: https://github.com/ylatuya/webkit-sharp/tree/fluendo

* [iOS, UWP] fixes #2894 - Gestures collection changes weren't correctly propagating (#3643)

* [iOS, UWP] fixes #2894 - Gestures weren't wiring up to spans in all cases

* [Core] remove ChildGestureRecognizers when spans get removed

* [iOS] removed incorrect return from null

* Fixes #3663 (#3684)

* Fix ScrollView Padding issue (#3685)

* [WPF] Memory leak when you pop a TabbedPage (#3372) fixes #3267

* Fix [WPF] Memory leak when you pop a TabbedPage

* Update ViewRenderer.cs

* Update ViewRenderer.cs

* [Android,iOS,UWP] Allow Entry CursorPosition/SelectionLength to be set in ctor (#3402) fixes #3343 fixes #3633

* Add repro for #3343 + unit tests

* [Core] Disallow negative values for CursorPosition/SelectionLength

* [All] CursorPosition/SelectionLength can bindin ctor & clear value

fixes #3343

* typo

* cleanup

* [iOS] Cursor snaps to end

* try/catch

* [CSS] add more properties (#3466)

map new CSS properties:
- `color` on `IColorElement` (`ActivityIndicator`, `BoxView`),
  `ProgressBar` and `Switch`
- `row-gap` and `column-gap` on `Grid`
- `transform` and `transform-origin` on `VisualElement`
- `vertical-align` on `Label`

add new XF-specific CSS properties
- `-xf-placeholder` and `-xf-placeholder-color` on `Editor`, `Entry`,
  `SearchBar`
- `-xf-max-length` on `InputView` (`Editor` and `Entry`)
- `-xf-bar-background-color` and `-xf-bar-text-color` on
  `NavigationPage` and `TabbedPage`
- `-xf-orientation` on `ScrollView` and `StackLayout`
- `-xf-horizontal-scroll-bar-visibility` and
  `-xf-vertical-scroll-bar-visibility` on `ScrollView`
- `-xf-min-track-color`, `-xf-max-track-color` and `("-xf-thumb-color`
  on `Slider`
- `-xf-spacing` on `StackLayout`

This PR replaces and closes #3276

- fixes #2891

* [iOS] Specify a default size for UISearchBar width if needed (#3635) fixes #3413 fixes #2139

* [Controls] Add reproduction and test case for issue #3413

* [iOS] Don't use max value for iOS UISearchbar breaks on iOS 11.3

* [iOS] Force width value so we can renderer UISearchBar on iOS10 with infinite width

* [Controls] Fix spelling and add Manual Review to the test of #3413

* [iOS] Simplify code for UISearchBar width

* [iOS] Return always some width from measure the UISearchBar on IOS

* [Controls] Add reproduction case for issue #2139

* [UWP] Fixed double set margins in Layouts (#3570) fixes #3398 fixes #3616

* [Android] Support multiple clipping settings in single layout (#3559)

* Repro

* Fix for API 18+

*  [iOS] Unsubscribe CellPropertyChanged when SwitchCellRenderer is disposed (#3518)

* [Controls] Add repo of issue #3408

* [iOS] Unsubscribe CellPropertyChanged when cell is disposed

* [Controls] Add issue to project

* [iOS] Introduce CellPropertyChange to CellTableViewCell to used by all other cell renderers

* [Controls] Simplify Issue

* [iOS] Remove PropertyChanged that was not used

* [Controls] add check for null binding on template, add notes about issues

* [Controls] added reference to Android crash

* [iOS]Use existing PropertyChanged on ViewCelRenderer

* [iOS] Keep the existing override so we don't break users

* Update TextCellRenderer.cs

* update submodule

* 24H Mode (#3701)

The 24h mode for the pickerdialog was not working.

Version 3.1 was working fine. 

Here is an updated file.

* [UWP] uncomment tests that are now passing for 3188 (#3723)

* [UITest] Update Xamarin.UITest nuget package (#3632)

* [UITests] Update Xamarin.UITest 2.2.5

* [UITests] Try fix Toolbaritems

* [UITest] Update to 2.2.5-1606

* [UITests] Small Fixes and workarounds to make uitest happy

* [UITests ] Add delay to 1733 for API28

* [Android] Revert bad merge (#3746)

fixes #3705

* [Android, iOS] Fixes layout compression causes (#3698) fixes #3624

* [Android, iOS] Fixes layout compression causes

* [iOS] improve UpdateNewElement method

* Fix build error hopefully

* [UWP] Fixes CollectionChanged events in ListView (#3323)

* fixes #3273

* [UWP] Fixes CollectionChanged events in ListView

* a wrapped collection is used only if the SourceItem is not ObservableCollection

* improve uitest

* fixed NRE in empty ListView

* added a sortable custom renderer for UItest

* minor refactoring

* fixed reset of not wrapped collections

* addressing comments

* [UWP] remove WinRT hack

* [UWP] add missing using and cleanup additional resources

* [Android] Update Forms to remove API28 deprecated API (#3653) fixes #2128 fixes #3629

* [Build] Update provisioning

* [Controls] Ignore deprecated  Android API usage

* [Android] Remove use of obsolete color usage

* [Android] Remove app fragment usage

* [android] Rollback changes to EntryCellRenderer

* [Android] Better way to get the default color for the label text

* [Android] Obsolete message for ContentPage.CreateFragment()

* [ControlGallery] - create bitmap from Drawable to use for pixel location

* [Android] Use textcolor resource

* Update submodule

* Fix tests (#3771)

* [ControlGallery] Wait for element and add timing to tests

* [iOS] Fix NRE on RenderPool

* Add TabStop/TabIndex (#2795)

* [Core, UWP, Android] support TabStop/TabIndex

* removing linq

* add iOS / MacOS implementation

* add WPF implementation
fixes UWP implementation

* - addressing comments
- improve test
- optimizations
- added previous tab direction in same tab group

* addressing comments

* [Android] support tabstop for pickers

* - moving shared code to a static class
- removed reflection

* ITabStop -> changed to internal, renamed, added in to fastRenderers

* Update ITabStop to be public

* Fix : Binding Icon in ToolbarItem in TabbedPage doesn't refresh (#3761) fixes #3756

* [iOS] Fix NRE on ContextCell (#3714) fixes #3275

* [Controls] Add repo for issue #3275

* [iOS] Fix NRE when no gestures exist on table

* [iOS] Null check outside loop

* [iOS]Make sure to dispose/unhook when we are removed from UITableView.

* Update submodule

* [iOS] Don't double dispose ContextActionCell

* WPF - Fix Width and Height measurement when GetDesiredSize (#3750)

* WPF - Reset Width and Height when GetDesiredSize

* Some formatting changes

* Add APP directive

* [WPF]Fix build

* [Android Maps] Make markers available to subclasses (#3751)

* Make markers available to subclasses

* Fix build

* Use Find instead of FirstOrDefault

* [UITests] wait for element before querying for it (#3791)

* [UITests] wait for element before querying for it

* [Controls] generalize and better represent intended behavior

* WPF - Fix Local store not persistant when restarting App (#3752)

-fixes #3541
* WPF - Fix Local store not persistant when restarting App
* Add UITest
* [Controls] Add automated UI Test

* [UITests] Isolate test 3408

* [UITest] Update Xamarin UITest packages

* [UWP] implement Replace without reloading ListView (#3792)

-fixes #3788
* [UWP] implement Replace without reloading ListView
* [UWP] extract bindingcontext of new item for replace

* [iOS] Use UIApperance default color for UISwitch (#3819)

* [Controls] Set default color of UISwitch to Red

* [iOS] Use default color from Apperance API

* [UITests] replace awaits with more reliable WaitForElement (#3835)

* [Core] Propagate BindingContext changes to TitleView (#3823)

* [Core] Propagate BindingContext changes to TitleView

* [Tests] Move UI test to Core Unit Test

* [A] do not draw gradient for empty CornerRadius (#3786)

Drawing CornerRadius (introduce by #1998) when the CornerRadii are
actually 0 causes scaling artifacts on API < 25.

This fixes the regression when no CornerRadius is set. Expect blurry
border scaling with CornerRadius not empty and API < 25

- fixes #3781

* [Android] Fix WebView.Navigating event, make WebViewClient inheritable (#3780)

* Extracted WebViewRenderer.WebClient to FormsWebViewClient, moved SendNavigating call from ShouldOverrideUrlLoading to OnPageStarted

* Changed _webViewClient and GetWebViewClient() method to return base class

* Changed public things to protected internal

* Fix spaces to tabs indentation to match the coding style (#3745)

* [Build] Fix merge

* Fix #3097 swipe gesture not being handled in VisualElementTracker. (#3098) Fixes #3097

* Ensure that the ListViewAdapter is no longer being used by the ListVi… (#3848) fixes #3603

* Ensure that the ListViewAdapter is no longer being used by the ListView before disposing it

* Remove `RemoveAllViews` from `Dispose`

* Update from origin (#11)

* [Android] Enable MaxLines and TextDecorations on fast renderers (#3878)

* enable MaxLines on fast renderers

* added text decoration functionality

* include test in project

* [Enhancement] Create a bindable property for AutomationId (#3879)

* create a bindable property for automationId

* make ClassId and AutomationId properties of Element

* add comments to .create-nuget.bat

* added preserve attribute (#3876) fixes #2306

* [Core] Moving Command's CanExecuteChanged to use the WeakEventManager (#3852) fixes #3656

* [Core]  Use WeakEventManager on CanExecuteChanged

* [Core]Add unit test for remove event handler with WeakEventManager

* [Core] Fix remove the correct handler

* [CSS] accept 'oblique' for 'font-style' (#3815) fixes #3808

- fixes #3808

* Prevent double time/date picker dialogs on Android when setting focus (#3899)

* Prevent double time/date picker dialogs on Android when setting focus (#3899)

* [Controls] Fix merge remove duplciated issue 3788

* WPF - Fix Unable to intercept back button (#3762)

* WPF - Fix Unable to intercept back button

* WPF - Improve OnBackButtonPressed

-fixes #3689

* Fix Bugzilla38723 (#3812)

fixes #2302

* [C] fix css mapping (#3919)

* [Android] Fix UI test 1851 (#3882)

* add preserve attribute

- fixes #2255


* added using System

* fixed spacing

* use TestContentPage

* fixed scope issues

* [Android] Make native Android Platforms accessible via Context (#3364)

* Make native Android Platforms accessible via Context

* Add null checks

* Added a disabled look to Android Toolbar Item images. (#3773)

* Added a disabled look to Android Toolbar Item images.

* Update NavigationPageRenderer.cs

Refactored DisabledToolbarAlpha into a constant as requested.

* [UWP] fixes tabstops of TimePicker, DatePiker. SearchBar, Stepper (#3896)

* [UWP] fixes tabstops of TimePicker, DatePiker. SearchBar, Stepper

* common code moved to VisualElementRenderer

* rename interface

fixes #3872

* [UWP] For the Slider default value of step is set to 1000 to match Android. (#3141)

* WPF - Ctrl+A does not select all in WPF password Entry (#3908)

* [WPF] Fix Height of items not consistent (#3925) fixes #3913

* Fix StartTimer and Ticker for UWP (#3911)

- fixes #1937

* Apply font fix for button and span (#3907)

* added instructions (#3891)

- fixes #2361

* [Android] Convert corner radius with correct pixel density (#3893) fixes #3884

* [Controls] Add Issue #3884 repo

* [Android] Convert  corner radius with correct pixel density fixes #3884

* [Controls] Update test message

* WPF - Fix TimePicker with short time pattern shows verbose time (#3924)

* Fix UI test 39378 (#3928)

fixes #2305

* Update ClipBounds when View bounds changes (#3909)

fixes #3717

* [C] catch AmbiguousMatchException on GetProps (#3915)

- fixes #3870

* Automate UI test B45702 (#3914) fixes #2389

* automate 45702

* fix indentation

* Fix bugzilla60787 (#3933)

* [Android]Fix for frame renderer's bug (bugzilla 60787).

#3902
https://bugzilla.xamarin.com/show_bug.cgi?id=60787
https://github.com/xamarin/Xamarin.Forms/issues/3902

* Add control to repro

* PR fix

* Build fix

* Build fix for Xamarin.Forms.Core.Android.UITests

* added instructions (#3926)

* [UWP] fixes flyout menu on cell item (#3682)

* Fix UI test B41424 needs instructions (#3942)

* Add manual test steps and checks for ui test

* step4Label text fix

* [iOS] fix full width issues for TitleView (#3939)

* [iOS] fix full width issues for TitleView

* [iOS] simplified iOS 10

fixes #3881
fixes #3679

* Changes in TableView GTK Control to allow refresh the content (#3941)

- fixes #3725

* Only set the Page Padding via SafeAreaInset on iOS (#3811)

* only set the Page Padding via SafeAreaInset on iOS
-fixes #3809

* [Controls] add waits for clicks in ui tests

* [Controls] remove wrong category

* [iOS] Move inset logic down into ios renderer

* Added logic to allow set the ListView SelectedIndex (#3948) fixes #3766

* Automate UI test 35127 (#3927)

* automate test
- fixes #2262
* indentation fix
* indentation fix 2

* Make GetIconDrawable virtual (#3967)

By making GetIconDrawable virtual for the Android TabbedPageRenderer it allows for the icon to come from other sources (like glyph fonts). This will work for both top and bottom tabs.

* [GTK] Fix visibility of hidden pages in the stack (#3904)

When navigating to a new page, we should hide the previous
content and show the new one so that the previous page
renderer is not taken in account for redraws and resizes

* [Android] If MaxLines is not explicitly set, let LineBreakMode handle it (#3936)

* [Android] If MaxLines is not explicitly set, all LineBreakMode to set it;
if MaxLines is explicitly set, MaxLines setting wins. Use a more reasonable
default for native MaxLines when handling it via LineBreakMode. Consolidate
MaxLines handling code between legacy and fast renderers. Remove unnecessary
setting of SingleLine (which only applies to input).
- fixes #3772

* Remove unnecessary maxLines setting

* Handle resetting MaxLines to -1/default

* Reinstate workaround for array bounds exception in older Android APIs

* Fix UI test B43941 (#3889)

* Add all platforms and remove non-deterministic behaviour

* Return back correct check of counter

* Endline fix

* remove childPages list

* [XamlC] avoid multiple subscription (#3969)

Avoid multiple subscription to PropertyChanged on TypedBindings

- fixes #3613
- fixes #3650

* Fix typos (mainly 'toogle' becoming 'toggle') (#3975)

* Fix Issue2597 Needs UI Test (#3966)

* Add test for issue 2597

* Fix space

* Add CODEOWNERS

* Fix PanGesture inside scroll issue https://github.com/xamarin/Xamarin… (#3842)

* Fix PanGesture inside scroll issue https://github.com/xamarin/Xamarin.Forms/issues/3840
- fixes #3840
* fixe formatting

* [UITest] added UI Test

* [Controls] adjusted UI Test button positions

* [UITEST]  simplify UI tests

* [C] add CSS mapping for max-lines (#3991)

- fixes #3982

* [iOS] Add ability to turn off updates to native controls from another thread (#3774)

* [iOS] Add ability to turn off updates to native controls from another thread

* Flip evaluation order

fixes #1755

* Fixed NotImplementedException refreshing items in WPF ListView (#3962)

* Fixed NotImplementedException refreshing items in WPF ListView

* Small changes in ListView events subscription

fixes #3309
fixes #3737
fixes #3648

* [GTK] Fix transparent background in visual elements (#3744)

* Fix ActivityIndicator.IsRunning state (#4007)

* add pdb for uap into nuget (#4015)

* update GitInfo

* [XamlC] don't compile bindings with Source (#3978)

Sources are usually x:reference that can't be resolved at compilation
time.

- fixes #3606

* [Xaml[C]] resolve Extensions first (#3977)

XamlLoader should first look for type with the Extension suffix. It used
to be the case, but somehow regressed.

- fixes https://github.com/xamarin/Xamarin.Forms/issues/3606#issuecomment-422377338

* [UWP] Document in the README.md the steps required to run UI Tests (#4014) fixes #3984

* [Tizen] Add TabIndex implement for Tizen renderer (#4046)

* [Tasks] multitarget the build tasks (#3895)

- fixes #2690
- closes #2706

* [UITests] Update TestCloud.Agent (#4055)

* [Tizen] Fix ProjectGuid for Forwarders (#4063)

* [Tizen] Fix ProjectGuid for Forwarders

* [Tizen] Make sure not to generate dependency file

* Correct minor typo (#4068)

* Added WebView Reload (#4013) fixes #3776

* Added WebView Reload

* WebView Reload Added Tizen suport

* [Tizen] Cleanup Code (#4080)

* fixed ios editor placeholder font (#4009)

* Prevented crash https://github.com/xamarin/Xamarin.Forms/issues/2291 (#4072)

- fixes #2291

* [Xaml] Allow OnPlat markup in Styles (#3995)

- fixes #3862

* [Xaml] fix Namescope being different than tree (#4089)

As part of #2556, the namescoping tree was assumed to be equiv to the
object tree, which is obviously wrong. This fixes it, while keeping the
old behavior as a fallback.

We might go further, but I can't come up with a reasonable scenario
failing.

- fixes #3821

* [Sample] [Android] Fixed PagesGallery.Droid build (#3999)

* fixed PagesGallery.Droid build

* Moved Xamarin.Forms.Platform.Android (Forwarders) reference to previous place

* updated project guid to lower case

* Fix typeface reset issue (#4019)

* Use ViewCompat to set and get label for view (#3996)

* Removing LineBreakMode support from WindowsResourcesProvider (#4024)

* Repro test page for 3979

* Removes LineBreakMode support from WindowsResourcesProvider as it is inconsistent with other platforms and caused issues when setting Span style to the default Device Styles

* [macOS] Fix NRE on Mojave when aligning the tile (#4086) fixes #3031

* [GTK] Add support for ClickGestureRecognizer (#3971)

* [GTK] Add support for ClickGestureRecognizer

* Add ClickGestureGalleryPage to test ClickGestureRecognizer

* [iOS] Label TextColor has no effect with FormattedString (#4043)

* https://github.com/xamarin/Xamarin.Forms/issues/4040 fix default font/color for formatted string

* https://github.com/xamarin/Xamarin.Forms/pull/4043 fixed naming, added test case

* Moved field and property to top

- fixes #4040

* fix build, tentatively (#4117)

* [Xaml] don't swallow exceptions from converters (#4100)

Compiled converters are invoked, by reflection, at compile time. Any
exception thrown there will be wrapped in a TargetInvocationException.
When that happens, we still want to expose the inner XamlParseException
to the user.

- fixes #4099

* housekeeping ended with https://github.com/xamarin/Xamarin.Forms/pull/3999 (#4105)

* Bump minimum Microsoft.NETCore.UniversalWindowsPlatform version to 6.0.12 (#4106)

* [Tizen] Fix Window alpha update timing (#4119)

* [UWP] fixed `MinimumDate` and `MaximumDate` properties of DatePicker (#3683) fixes #3331

* [WPF] Fixes `ControlTemplate` sizing issue (#2656)

- fixes #2642

* Remove BOM from nuspec (#4128)

* Navigation Page double Popped event Workaround (#3851) fixes #3509

* Navigation Page double Popped event Workaround

* [UITest] Add UI Test

* [Core] fix formatting

* revert formatting fix

* implemented workaround suggested by PureWeen

* removed whitespace

* moved ignorePopCall to a better location

* [Enhancements] Toolbar a11y  (#3974) fixes #1742 fixes #3795

* [Controls] Add automation id to icon

* [iOS] Add AutomationId support to MDP tooggle button

* [Android] Add support for AutomationId to ActionBarDrawerToggle and MasterDetailPage

* [IOS] Refactor and add Accessibility to ToolbarItems

* [iOS] Fix typos

* [Android] Add accessibility to ToolbarItems

* [UWP]  Refactor A11y to extensions

* [UWP]  Set Accessibility properties on ToolbarItems

* [UWP] Set accessibility to MDP button

* [ControlGallery] Add accessibility toolbaritems to gallery

* Comment test out

* [iOS] Fix NRE when Control is being disposed

* [UITests] Remove not used UITests file

* Implementation of method ForceUpdateSize for Cell on macOS (#4104)

* Implemented Cell ForceUpdateSize on macOS

* Tab Styling

* Prevent crash during setting NULL to element via interface method (#4179)

- fixes #4178
- fixes #4146

* https://github.com/xamarin/Xamarin.Forms/issues/4076 fix (#4161)

* [iOS] Rapidly clicking span (6 times at least) on UITest 3525 throws a null exception (#4109)

* https://github.com/xamarin/Xamarin.Forms/issues/3930 fix

* following convention

* [Android] Fixes AutomationProperties.Name on Button (#4094)

* [Android] Fixes AutomationProperties.Name on Button

* [Android] Fixes for Switch control

* UWP Toolbar dynamic overflow (#4022)

* Adding Windows specific ToolbarDynamicOverflowEnabled configuration

* Enabled ToolbarDynamicOverflowEnabled (pun intended) on page controls and renderers

* Issue 3988 sample

* Removed obsolete comment, cleaned up private and whitespace

* Added toolbar dynamic overflow examples for master detail page and tabbed page


- fixes #2057
- fixes #3988

* Add missing initial call to UpdateLineHeight; fixes #4136 (#4147)

* Added UI test to B45027 (#4079)

* Add UI test to B45027

* Changed execution of current UI test to Android platform

* Added iOS UI test to B45027

* Refactored UI test execution

* Fix https://github.com/xamarin/Xamarin.Forms/issues/3301 (#4164)

- fixes #3301

* [UWP] fixes entering text into SearchBar with UI Tests (#4173)

* [UWP] fixes entering text into SearchBar with UI Tests

* [UWP] ITabStopOnDescendants - fixed selection when setting focus from Selenium

* [UWP] Fix TitleView Width and MDP rendering quirks (#3987)

* [UWP] Fix TitleView Width and MDP rendering quirks

* [UWP] fix load timing for pushed pages and titleview

* [UWP] move renderer check

* [UWP] remove re-measure until 4116 fixed

- fixes #3828
- fixes #3834

* [macOS] NRE in WebViewRenderer (#4188) fixes #4001

* https://github.com/xamarin/Xamarin.Forms/issues/4001

* fixed build

* https://github.com/xamarin/Xamarin.Forms/issues/2831 fixes #2831 (#4111)

* [msbuild] use portable pdb files (#4201)

Currently, on the first build of a "Hello World" Xamarin.Forms app,
you will see this in the build log:

    ConvertDebuggingFiles
        Parameters
            Files
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\FormsViewGroup.pdb
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.pdb
        OutputItems
            _ConvertedDebuggingFiles
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\FormsViewGroup.dll
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.dll

The logging is a little weird here, but this `ConvertDebuggingFiles`
MSBuild task takes about 100ms on my machine.

What is it doing?

The Mono debugger can support two types of debugging files:
- `mdb` files
- "portable" `pdb` files

If Xamarin.Android's build finds a "non-portable" `pdb` file, we have
to run it through this task to convert to an `mdb` file... This gives
us proper stacktraces for `FormsViewGroup.dll` and
`Xamarin.Forms.Platform.Android.dll`.

You can change the type of debugging symbols in your project with the
`DebugType` setting, which has these options:
- Blank or `None`: don't generate symbols. (Although Xamarin.Android
  has funny behavior here, see:
  https://github.com/xamarin/xamarin-android/issues/2282)
- `Full` generates an `mdb` file, this is a Windows-proprietary format
  for debug builds
- `PdbOnly` generates a "non-portable" `pdb` file, a
  Windows-proprietary format for release builds
- `Portable` generates a "portable" pdb file, which is the new
  standard that works for debug and release builds. New SDK-style
  MSBuild projects use this option by default.

These values are not case sensitive, I have mostly seen them lower
case in newer projects.

So what does Xamarin.Forms need to do?

Use `<DebugType>portable</DebugType>` in any Android class library or
app project. Other platforms, this is optional, not as much benefit. I
have heard that `DebugType=portable` might cause a problem on UWP.

* Xamarin.Forms will ship "portable" `pdbs` in its NuGet package for
  `FormsViewGroup.dll` and `Xamarin.Forms.*.Android.dll`. Developers
  won't pay the 100ms on initial build.
* Initial build times for `Xamarin.Forms.sln` will be slightly better
  for development, although I didn't measure the difference here.

* [XamlC] fix the argument match check for events (#4134)

Well, it looks like the order of arguments of InheritOrImplements was
reversed... a totally fine and normal Friday so far

- fixes #4130

* Add UI Test. Add instructions. Move to correct namespace (#4170) fixes #2251

* Add uitest for 2794 (#4110) fixes #2293

* Fix PropagateEvent value properly on Cells (#4191)

* bump gitinfo

* [Core, iOS, MacOS, Android, UWP, WPF] ListView hide scroll view scroll bars (#3897) fixes #3843

* Update from origin (#8)

* [C] VisibilityConverter Trims input (#3581)

For CSS purposes, the VisibilityConverter was added, and actually
replaced the `Boolean.Parse(str)` call for parsing Visibility.
`Boolean.Parse()` trims input, and the converter was not, so this was a
regression.
This changes Trim() the input, to be fully backward compatible.

- fixes #3554

* Ensure ConstructorCountId and TimeId elements are available before querying them (#3588)

* For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)

This would allow previewer/designer/reloader to determine the source of a
stylesheet and refresh its content when appropriate.

* Revert "For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)"

This reverts commit f66a72de5b475a6a8387a80e418997b38dc40d4c.

* Fix NRE; Ret 0 if Text null (#3594) fixes #3579

* [UWP, WPF] Fixes rendering of the main page (#2896) fixes #2704

* [Core] Ignore Shamehat target when running DesignTimeBuild (#3605)

* [XamlC] Fix binding compilation fo value types (#3551)

properly load valuetype arguments of generated setters, using ldarg,
instead of ldarga.

- fixes #3539

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

* [Android] Fix Label LineHeight (#3452)

* fix line height android

* Make UAP respect initial LineHeight

* update .create-nuget.bat (#3638)

* Add Null Check to GetRenderer (#3575)

- fix #3563

* Fix 3562 Null Reference Exception (#3576)

- fixes #3562

* Fix 3564 Null Reference Exception (#3578)

- fixes #3564

* [iOS] AutomationProperty support for cells (#3313) fixes #3296

* [iOS] AutomationProperty support for cells

* Add test case to AutomationProperties gallery

* [UWP] Fix crash app when create navigation/tabbed page without children pages fixes #3188 (#3514)

* [Android] Use height when determining ScaledScreenSize; fixes #3609 (#3641)

* [C] Set binding context on Span Gestures (#3639)

* [Core] Set binding context on Span Gestures
* [Core] Simplify loop setting child binding context

- fixes #3524

* Update PULL_REQUEST_TEMPLATE.md

* [Android] remove deprecated AndroidUseLatestPlatformSdk (#3672)

* [iOS] iPad ActionSheet should always have a Cancel method (#3636)

* Add repro for #3049

* [iOS] iPad ActionSheet should always have a Cancel method

fixes #3049

* [Android] fixes #3675 - set  initial ScrollView Scroll values when RTL (#3676)

* [Android] API check for Shadow properties on Button (#3617) fixes #2702

* [Android] API check for Shadow properties on Button

* Fix swapped shadow values

* [iOS] fixes #3525 - add epsilon for float compare (#3654)

* [iOS] fixes #3525 - add epsilon for float compare and make region immutable

* [ControlGallery] spread out spans to account for click slop

* [ControlGallery] - adjust span slightly for android test

* [Core] remove private

* Fix text wrapping (#3671) fixes #3634

* [GTK] Fix navigation bar visibility updates (#3651)

* Fix partially  #3585 (#3592)

* Make webkit-sharp.dll.config cross-platform

* Update webkit-sharp.dll with missing signals bindings

see: https://github.com/ylatuya/webkit-sharp/tree/fluendo

* [iOS, UWP] fixes #2894 - Gestures collection changes weren't correctly propagating (#3643)

* [iOS, UWP] fixes #2894 - Gestures weren't wiring up to spans in all cases

* [Core] remove ChildGestureRecognizers when spans get removed

* [iOS] removed incorrect return from null

* Fixes #3663 (#3684)

* Fix ScrollView Padding issue (#3685)

* [WPF] Memory leak when you pop a TabbedPage (#3372) fixes #3267

* Fix [WPF] Memory leak when you pop a TabbedPage

* Update ViewRenderer.cs

* Update ViewRenderer.cs

* [Android,iOS,UWP] Allow Entry CursorPosition/SelectionLength to be set in ctor (#3402) fixes #3343 fixes #3633

* Add repro for #3343 + unit tests

* [Core] Disallow negative values for CursorPosition/SelectionLength

* [All] CursorPosition/SelectionLength can bindin ctor & clear value

fixes #3343

* typo

* cleanup

* [iOS] Cursor snaps to end

* try/catch

* [CSS] add more properties (#3466)

map new CSS properties:
- `color` on `IColorElement` (`ActivityIndicator`, `BoxView`),
  `ProgressBar` and `Switch`
- `row-gap` and `column-gap` on `Grid`
- `transform` and `transform-origin` on `VisualElement`
- `vertical-align` on `Label`

add new XF-specific CSS properties
- `-xf-placeholder` and `-xf-placeholder-color` on `Editor`, `Entry`,
  `SearchBar`
- `-xf-max-length` on `InputView` (`Editor` and `Entry`)
- `-xf-bar-background-color` and `-xf-bar-text-color` on
  `NavigationPage` and `TabbedPage`
- `-xf-orientation` on `ScrollView` and `StackLayout`
- `-xf-horizontal-scroll-bar-visibility` and
  `-xf-vertical-scroll-bar-visibility` on `ScrollView`
- `-xf-min-track-color`, `-xf-max-track-color` and `("-xf-thumb-color`
  on `Slider`
- `-xf-spacing` on `StackLayout`

This PR replaces and closes #3276

- fixes #2891

* [iOS] Specify a default size for UISearchBar width if needed (#3635) fixes #3413 fixes #2139

* [Controls] Add reproduction and test case for issue #3413

* [iOS] Don't use max value for iOS UISearchbar breaks on iOS 11.3

* [iOS] Force width value so we can renderer UISearchBar on iOS10 with infinite width

* [Controls] Fix spelling and add Manual Review to the test of #3413

* [iOS] Simplify code for UISearchBar width

* [iOS] Return always some width from measure the UISearchBar on IOS

* [Controls] Add reproduction case for issue #2139

* [UWP] Fixed double set margins in Layouts (#3570) fixes #3398 fixes #3616

* [Android] Support multiple clipping settings in single layout (#3559)

* Repro

* Fix for API 18+

*  [iOS] Unsubscribe CellPropertyChanged when SwitchCellRenderer is disposed (#3518)

* [Controls] Add repo of issue #3408

* [iOS] Unsubscribe CellPropertyChanged when cell is disposed

* [Controls] Add issue to project

* [iOS] Introduce CellPropertyChange to CellTableViewCell to used by all other cell renderers

* [Controls] Simplify Issue

* [iOS] Remove PropertyChanged that was not used

* [Controls] add check for null binding on template, add notes about issues

* [Controls] added reference to Android crash

* [iOS]Use existing PropertyChanged on ViewCelRenderer

* [iOS] Keep the existing override so we don't break users

* Update TextCellRenderer.cs

* update submodule

* 24H Mode (#3701)

The 24h mode for the pickerdialog was not working.

Version 3.1 was working fine. 

Here is an updated file.

* [UWP] uncomment tests that are now passing for 3188 (#3723)

* [UITest] Update Xamarin.UITest nuget package (#3632)

* [UITests] Update Xamarin.UITest 2.2.5

* [UITests] Try fix Toolbaritems

* [UITest] Update to 2.2.5-1606

* [UITests] Small Fixes and workarounds to make uitest happy

* [UITests ] Add delay to 1733 for API28

* [Android] Revert bad merge (#3746)

fixes #3705

* [Android, iOS] Fixes layout compression causes (#3698) fixes #3624

* [Android, iOS] Fixes layout compression causes

* [iOS] improve UpdateNewElement method

* Fix build error hopefully

* [UWP] Fixes CollectionChanged events in ListView (#3323)

* fixes #3273

* [UWP] Fixes CollectionChanged events in ListView

* a wrapped collection is used only if the SourceItem is not ObservableCollection

* improve uitest

* fixed NRE in empty ListView

* added a sortable custom renderer for UItest

* minor refactoring

* fixed reset of not wrapped collections

* addressing comments

* [UWP] remove WinRT hack

* [UWP] add missing using and cleanup additional resources

* [Android] Update Forms to remove API28 deprecated API (#3653) fixes #2128 fixes #3629

* [Build] Update provisioning

* [Controls] Ignore deprecated  Android API usage

* [Android] Remove use of obsolete color usage

* [Android] Remove app fragment usage

* [android] Rollback changes to EntryCellRenderer

* [Android] Better way to get the default color for the label text

* [Android] Obsolete message for ContentPage.CreateFragment()

* [ControlGallery] - create bitmap from Drawable to use for pixel location

* [Android] Use textcolor resource

* Update submodule

* Fix tests (#3771)

* [ControlGallery] Wait for element and add timing to tests

* [iOS] Fix NRE on RenderPool

* Add TabStop/TabIndex (#2795)

* [Core, UWP, Android] support TabStop/TabIndex

* removing linq

* add iOS / MacOS implementation

* add WPF implementat…
jfversluis added a commit to jfversluis/Xamarin.Forms that referenced this pull request May 22, 2019
Update (#12)
* [XamlC] Always enable implicit casting, boxing and unboxing (#4238)

* [X] throw XPE on missing element .ctor (#4786)

* [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

* [Android] Check if Drawable is null in Draw override (#4783)

- fixes #4782

* [XamlC] instantiate generic parameter on base types (#4776)

* [XamlC] Instantiate generic parameters in base type generic arguments

* Add unit test for #4047

- fixes #4760
- closes #4047

* [Android] set ClipBounds to use ViewCompat.SetClipBounds (#4819)

* [X] Design time properties (#4743)

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.

* Remove unnecessary OK button check that won't pass on older Android versions

* [*] Drop MenuItem.IsEnabledPropertyName (#4659)

* [*] Drop MenuItem.IsEnabledPropertyName

While doing one of the big refactoring of 2006, we missed an
opportunity to use a propertyKey for IsEnabled, ending up in some
less-than-optimal  design choices, like IMenuController.IsEnabledPropertyName.

Properly using a public r-o BP removes the need for IsEnabledPropertyName.

* other plats

* use the key

* [Flex] fix Padding on the FlexLayout (#4823)

As the flex engine doesn't handle x,y offset on the root layout,
handle that at the XF.FlexLayout level.

- fixes #2663

* [Shell] fix queryParam navigation (#4843)

when navigating to pages, not shell-section, handle the queryParams

- fixes #4837

* Make ListView CachingStrategy property visible to Intellisense (#4846)

* Implement Android single selection in CollectionView (#4651)

* Implement Android single selection

* Fix naming conflicts with SelectionChangedEventArgs

* Split files by class; make SelectionChangedEventArgs constructors internal;
Optimizations for SelectionChangedEventArgs;
Fire selection changed event/command from property changed handler;

* Update Xamarin.Forms.Core/Items/SelectableItemsView.cs

Co-Authored-By: StephaneDelcroix <stephane@delcroix.org>

* Set default value for SelectedItemProperty

* Remove unnecessary null check

* Fix order of OnElementChanged and Setup/Teardown Element

* Fix project file weirdness

* Add instructions to manual UI test

* Remove nonsensical comments

* Make test button visible on UWP

* Min viable FontImageSource (#4747)

* min viable fontImageSource

* [UWP] Min viable FontImageSource (#4817)

* [UWP] font image source

* address comment

* [UWP] performance optimization of the rendering of icons font
- the minimum Dpi of the icon is 300

* char -> string; CR feedback

* Add instructions for test 764; remove automated test that did nothing;

* Clean up old comments

* Add manual test run instructions for UI test 1025

* Add manual instructions to UI test 1026

* Automate UI test 1028

* Add manual test instructions for 1075, match button text with actual color

* Automate UI test 1219

* Automate UI test 1236

* Automate UI test 1267

* Fix test 852

* Add missing preserve attribute for UI test 1267

* [iOS] Implement item move on iOS CollectionView (#4863)

* Implement item move on iOS CollectionView

* Remove private modifier

* Use PushAsync for 1305 UI test so the toolbar shows up

* Material Design Renderers for the Material Visual (#4733)

* Use the auto-generated constants

* [Visual] Work on the Material Frame

* Improving the code for the sample

* Added a controller to help with frames that have additional padding
 - Android MaterialCardView does not use the default padding to determine where the content starts, rather it uses the content padding of the view because there is a border that does not affect the content

* [Visual] Added a few extra checks on Android to reduce unnecessary interop

* [Visual] A few more frame changes and some button tweaks

* [Visual] use the themers on iOS and save default properties

* [Visual] Add placeholders for themer and cache defaults

* [Visual] Added the material slider for iOS
 - Android does not have a custom control, so uses the existing renderer

* [enhancements] Move from duplicate LoadImageAsync code to GetNativeImageAsync

* [visual] Updated the controls to use the new iOS bits

* [visual] some fixes for material components

* [visual] Added hacks for material alerts

* [visual] removing the alert changes for the main branch

* [visual] Update the MaterialComponents NuGet

* [visual] Rework the theming/customization of Material controls on iOS

* [visual] fix the places where the user colors were being changed

* [visual] Improve the ColorStateList management for Android

* [visual] Re-implemented the Android ProgressBar as a fast, material renderer

* Material Entry

* [visual] Add Android ActivityIndicator

* filter out material layouts for 8.1

* remove folder

* fix __ANDROID_28__

* MaterialContextThemeWrapper

* [visual] remove the `IFrameController` interface

* [visual] reverting the changes to the Frame layout

* [visual] reverting whitespace

* [visual] make sure to raise both property changed

* formatting changes

* fixing colors on android to match with ios themes

* Update Xamarin.Forms.Platform.Android/Material/MaterialButtonRenderer.cs

Co-Authored-By: mattleibow <mattleibow@live.com>

* fix sizing of entry with infinite width size request

* update to release 28 of support

* Update Xamarin.Forms.Platform.Android/Resources/values/styles.xml

Co-Authored-By: PureWeen <shane94@hotmail.com>

* Update Xamarin.Forms.Platform.Android/Resources/values/styles.xml

Co-Authored-By: PureWeen <shane94@hotmail.com>

* PR Comment changes

* added case in GTK listviewrendered for change of SelectedItem property (#4757)

* [Android] Ensure the page background can be un-set (#4916)

* [Android] If drawable doesn't exist don't dispose of it (#4904)

* [iOS] CollectionView EmptyView (#4870)

* Implement EmptyView for iOS

* Allow for changes to EmptyView on iOS; rename confusing variables;

* Fix incorrect bug description

* Only post DisableTimer to the queue if it's not on the UI thread (#4866)

* hide obsolete API from editor (#4938)

- fixes #4772

* [UITests] Disable test #1931 on iOS12 for now

* [Android] Fix for ListViewRenderer causing ObjectDisposedException (#4931)

* [Android] Fix for ListViewRenderer causing ObjectDisposedException

* Probably cleaner to use _refresh for IsDisposed check

* [Enhancement] Entry: Read-only Entry and Editor (#1972)

- fixes #1678
- fixes #4834

* InputView BindableProperty IsReadOnly

* Android Editor and Entry setup

* MacOS Editor and Entry setup

* Tizen Editor and Entry setup

* UAP Editor and Entry setup

* WPF Editor and Entry setup

* iOS Editor and Entry setup

* Issue1678 - TestContentPage added

* Tests added

* Tizen Editor and Entry fix

* UI Test fix

* Android fix for Entry and Editor.

* Unit Tests fix.

* Android Renderer first try.

* MacOS Entry renderer small fix.

* UpdateEditable fix.

* Android Entry and Editor reduced number of calls to BP.

* fix TestAttributes conflicts

* Remove keyboard

* [macOS] relinquish first responder

* [Android] remove call to UpdateCursorSelection

* [UWP] fix tabs

* Map with ItemsSource and ItemTemplate (#4269) fixes #1708

* [Android] fixes Right-to-Left Hamburger icon in MasterDetailPage (#4716) fixes #2818

* [UITests] Ignore test failure on iOS9, use manual review

* [tests] UWP requires file extensions (#4945)

* [macOS] BoxView binding to BackgroundColor broken (#4958)

- fixes #4338

* fix #4788 (#4959) fixes #4788

* [tests] UWP requires file extensions (#4944)

* Auotmate test for Issue 1538

* Automate test for Issue 1557

* Automate test for Issue 1590

* Automate test for Issue 1685

* Automate test for Issue 1700

* [Android] Fix brief display of incorrect keyboard (#4384)

* Automate test for 39072

* Add Focus test category

* Add test instructions

* Use named flags value instead of magic number

* Rearrange keyboard hide/show handling when focus changes; fixes #3647

Clean up usings

Add null checks in case Controls are unloaded before the handler executes

* Update Xamarin.Forms.Platform.Android/ContextExtensions.cs

Co-Authored-By: hartez <hartez@users.noreply.github.com>

* Update Xamarin.Forms.Platform.Android/ViewRenderer.cs

Co-Authored-By: hartez <hartez@users.noreply.github.com>

* Fix bug where programmatic focus of SearchView does not display keyboard;
Add test for programmatic focus of SearchBar, Entry, Editor;

* Prevent object disposed exception if control is disposed before posted ShowKeyboard is run

* Changes that VS Mac and Dev16 automatically make when you open SLN (#4969)

* vsmac changes these when you open it

* dev 16 changes

* [iOS] Fix unsubscribing the `PropertyChanged` event of the ViewCell (#4728)

* [Controls] Add repo for comment related with #4186

* [iOS] Fix unsubscribing PropertyChanged when disposing ViewTableCell

* [Controls] Fix test

* Disable suggestions for all Pickers (#4824) fixes #4629

* Disable suggestions for all Pickers

* Removed redundant disabling of spellcheck

* fix merge

* fix merge

* [iOS, Android] Implement Snap alignment for CollectionView (#4414)

* Implement snap alignment for iOS CollectionView

* Add missing End/MandatorySingle implementation for Android

* Implement MandatorySingle snapping on iOS

* Fix issues with Android MandatorySingle skipping items;

* Fix rebase issue

* [Build] Fix method accessibility

* [ios] clear perfect value add ui test (#4968)

- fixes #4957

* [UITests] Fix #1685 UITest

* Add instructions to test 33450

fixes #2246

* Null/disposed check for spannableString to fix ObjectDisposedException. (#4878) Fixes #4864

* [UITest] Add Preserve to issue #1931 uitest

* [C] Obsolete Vec2 (#4980)

* [Shell] fixes navigate to a relative URI (#4977)

* [UITests] Fix #1685 UITest

* [Android] set ClipBounds to use ViewCompat.SetClipBounds (#4954) fixes #4789

* [UWP] Fix ScrollViewer Horizontal Scroll Bar Visibility when set before control load (#3195) fixes #3193

* Fix 3193

* Update to restore default behavior

* Fix 3193

* Update to restore default behavior

* Spelling Fix

* Add preserve attr to 1326,1400

* Remove Unused Types (#4948)

* Remove NavigationMenu & Renderers
 - Never completed and there is the new CollectionView
 - Only (partially) implemented on iOS/Android

* Removing ToolbarButton and related types
 - `ToolbarButton`, `ToolbarImageButton`, `IToolbarButton`
 - this appears not to be used at all
 - was part of `ToolbarRenderer` in the old Duplo repo, which has since been removed

* Update Xamarin.Forms.Platform.cs

* Implement CollectionView item replace on iOS (#4865)

* .create-nuget.bat + maps (#4952)

* [UWP] Implementation of Switch.OnColor (#4883)

* Implemented Switch.OnColor on UWP

* Processed first feedback

* Removed hardcoded opacity

* Update Xamarin.Forms.Platform.UAP/SwitchRenderer.cs

Co-Authored-By: jfversluis <github@geraldversluis.nl>

* Update Xamarin.Forms.Platform.UAP/SwitchRenderer.cs

Co-Authored-By: jfversluis <github@geraldversluis.nl>

* [C] add null check for FlexLayout.OnPropChanged (#5012)

We had null checks in 3 places, not the fourth one. and that case was
hit by #5001.

- fixes #5001

* Changed Span default binding to OneWay (#4850)

* Fixed bug where switch in a `TableView` would disappear on UWP. The method for setting the default color was only called when it was in a ListView. Also renamed the method to be more clear. (#4912)

* [UWP] fixes crashing ActivityIndicator with COMException (#4988)

fixes #4982

* [UWP] Fixes IsTabStop property in Layouts (#4703)

* [UWP] the ScrollView does not gain focus

* address comments

fixes #4653

* Add Serializable on exception types (#4690)

* Added Serializable on exception types. See #4685

* Make exception types public. See #4685

* Added default-recommended constructors to exception classes. See #4685

* Make exception types compatible with .net standard 1.0 See 4685

* Call base in xaml parse exception. See #4685

* Merged XamlParseException #4685 related changes with chanes of #4582

* [UWP] Fixes hide DisplayActionSheet behind the dialog box (#3163)

* [Build] Fix provisioning

* [Build] Update build def

* [Build] Update variable for keychain pass

* Remove unnecessary search for root (#5036)

* [Android] Tests for multiple item collection changes in CollectionView (#4869)

* Add multi-item removal test; handle multi-item removal scenarios on Android;

* Add test harness for adding multiple items to CollectionView at once

* Add test harness for multi-item move/replace; handle Android multi-item move;
Fix bug when replacing differently-sized item sets on Android;

* Add test harness for INotifyCollectionChanged Reset

* Performance improvements and clearer test code

* Remove private modifier

* Fix bug where updating items sources changed source types

* Remove private modifier

* Make index checks clearer

* Remove private modifier

* Remove private modifier

* Move code into if clause

* Use local variable

* Better indication of how to use collection modification tests

* Include end index in items moved

* Make update range include items between source and destination indexes

* Remove commented code

* [Android] Fixes keyboard navigation in custom view (#4612)

* [iOS] CollectionView single selection (#4985)

* Working single selection on iOS

* Fix rebase errors

* Make ItemsLayout a constructor parameter for the Delegator

* Make common VSM states public consts

* Make file and type name match

* Simplify method we'll be completely rewriting while implementing the next feature

* VS didn't save project file changes

* Update submodule

* [iOS] Move Material iOS components to a separate nuget (#5026)

* [ios] extract ios material out to its own project

* [core] fix platform messaging

* add material to other test projects

* update MaterialComponents on all test projects

* remove material from platform

* yml updates

* nuspec

* add iOS description

* language

* add dummy file so package installs into netstandard/android

* Add Target Framework checks

* [Android] fixes issue content set after an await is not visible (#4861)

* [Android] fixes issue content set after an await is not visible

* [Android] refactoring. Fixes frame inside frame does not resize after visibility changed.

* - add on-screen description to 1332 test

* - add 1760 uitest uses StackLayout

* fix autotest

* [Enhancement][Core] ListView should report index of item on all events (#4431)

* Update from origin (#8)

* [C] VisibilityConverter Trims input (#3581)

For CSS purposes, the VisibilityConverter was added, and actually
replaced the `Boolean.Parse(str)` call for parsing Visibility.
`Boolean.Parse()` trims input, and the converter was not, so this was a
regression.
This changes Trim() the input, to be fully backward compatible.

- fixes #3554

* Ensure ConstructorCountId and TimeId elements are available before querying them (#3588)

* For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)

This would allow previewer/designer/reloader to determine the source of a
stylesheet and refresh its content when appropriate.

* Revert "For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)"

This reverts commit f66a72de5b475a6a8387a80e418997b38dc40d4c.

* Fix NRE; Ret 0 if Text null (#3594) fixes #3579

* [UWP, WPF] Fixes rendering of the main page (#2896) fixes #2704

* [Core] Ignore Shamehat target when running DesignTimeBuild (#3605)

* [XamlC] Fix binding compilation fo value types (#3551)

properly load valuetype arguments of generated setters, using ldarg,
instead of ldarga.

- fixes #3539

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

* [Android] Fix Label LineHeight (#3452)

* fix line height android

* Make UAP respect initial LineHeight

* update .create-nuget.bat (#3638)

* Add Null Check to GetRenderer (#3575)

- fix #3563

* Fix 3562 Null Reference Exception (#3576)

- fixes #3562

* Fix 3564 Null Reference Exception (#3578)

- fixes #3564

* [iOS] AutomationProperty support for cells (#3313) fixes #3296

* [iOS] AutomationProperty support for cells

* Add test case to AutomationProperties gallery

* [UWP] Fix crash app when create navigation/tabbed page without children pages fixes #3188 (#3514)

* [Android] Use height when determining ScaledScreenSize; fixes #3609 (#3641)

* [C] Set binding context on Span Gestures (#3639)

* [Core] Set binding context on Span Gestures
* [Core] Simplify loop setting child binding context

- fixes #3524

* Update PULL_REQUEST_TEMPLATE.md

* [Android] remove deprecated AndroidUseLatestPlatformSdk (#3672)

* [iOS] iPad ActionSheet should always have a Cancel method (#3636)

* Add repro for #3049

* [iOS] iPad ActionSheet should always have a Cancel method

fixes #3049

* [Android] fixes #3675 - set  initial ScrollView Scroll values when RTL (#3676)

* [Android] API check for Shadow properties on Button (#3617) fixes #2702

* [Android] API check for Shadow properties on Button

* Fix swapped shadow values

* [iOS] fixes #3525 - add epsilon for float compare (#3654)

* [iOS] fixes #3525 - add epsilon for float compare and make region immutable

* [ControlGallery] spread out spans to account for click slop

* [ControlGallery] - adjust span slightly for android test

* [Core] remove private

* Fix text wrapping (#3671) fixes #3634

* [GTK] Fix navigation bar visibility updates (#3651)

* Fix partially  #3585 (#3592)

* Make webkit-sharp.dll.config cross-platform

* Update webkit-sharp.dll with missing signals bindings

see: https://github.com/ylatuya/webkit-sharp/tree/fluendo

* [iOS, UWP] fixes #2894 - Gestures collection changes weren't correctly propagating (#3643)

* [iOS, UWP] fixes #2894 - Gestures weren't wiring up to spans in all cases

* [Core] remove ChildGestureRecognizers when spans get removed

* [iOS] removed incorrect return from null

* Fixes #3663 (#3684)

* Fix ScrollView Padding issue (#3685)

* [WPF] Memory leak when you pop a TabbedPage (#3372) fixes #3267

* Fix [WPF] Memory leak when you pop a TabbedPage

* Update ViewRenderer.cs

* Update ViewRenderer.cs

* [Android,iOS,UWP] Allow Entry CursorPosition/SelectionLength to be set in ctor (#3402) fixes #3343 fixes #3633

* Add repro for #3343 + unit tests

* [Core] Disallow negative values for CursorPosition/SelectionLength

* [All] CursorPosition/SelectionLength can bindin ctor & clear value

fixes #3343

* typo

* cleanup

* [iOS] Cursor snaps to end

* try/catch

* [CSS] add more properties (#3466)

map new CSS properties:
- `color` on `IColorElement` (`ActivityIndicator`, `BoxView`),
  `ProgressBar` and `Switch`
- `row-gap` and `column-gap` on `Grid`
- `transform` and `transform-origin` on `VisualElement`
- `vertical-align` on `Label`

add new XF-specific CSS properties
- `-xf-placeholder` and `-xf-placeholder-color` on `Editor`, `Entry`,
  `SearchBar`
- `-xf-max-length` on `InputView` (`Editor` and `Entry`)
- `-xf-bar-background-color` and `-xf-bar-text-color` on
  `NavigationPage` and `TabbedPage`
- `-xf-orientation` on `ScrollView` and `StackLayout`
- `-xf-horizontal-scroll-bar-visibility` and
  `-xf-vertical-scroll-bar-visibility` on `ScrollView`
- `-xf-min-track-color`, `-xf-max-track-color` and `("-xf-thumb-color`
  on `Slider`
- `-xf-spacing` on `StackLayout`

This PR replaces and closes #3276

- fixes #2891

* [iOS] Specify a default size for UISearchBar width if needed (#3635) fixes #3413 fixes #2139

* [Controls] Add reproduction and test case for issue #3413

* [iOS] Don't use max value for iOS UISearchbar breaks on iOS 11.3

* [iOS] Force width value so we can renderer UISearchBar on iOS10 with infinite width

* [Controls] Fix spelling and add Manual Review to the test of #3413

* [iOS] Simplify code for UISearchBar width

* [iOS] Return always some width from measure the UISearchBar on IOS

* [Controls] Add reproduction case for issue #2139

* [UWP] Fixed double set margins in Layouts (#3570) fixes #3398 fixes #3616

* [Android] Support multiple clipping settings in single layout (#3559)

* Repro

* Fix for API 18+

*  [iOS] Unsubscribe CellPropertyChanged when SwitchCellRenderer is disposed (#3518)

* [Controls] Add repo of issue #3408

* [iOS] Unsubscribe CellPropertyChanged when cell is disposed

* [Controls] Add issue to project

* [iOS] Introduce CellPropertyChange to CellTableViewCell to used by all other cell renderers

* [Controls] Simplify Issue

* [iOS] Remove PropertyChanged that was not used

* [Controls] add check for null binding on template, add notes about issues

* [Controls] added reference to Android crash

* [iOS]Use existing PropertyChanged on ViewCelRenderer

* [iOS] Keep the existing override so we don't break users

* Update TextCellRenderer.cs

* update submodule

* 24H Mode (#3701)

The 24h mode for the pickerdialog was not working.

Version 3.1 was working fine. 

Here is an updated file.

* [UWP] uncomment tests that are now passing for 3188 (#3723)

* [UITest] Update Xamarin.UITest nuget package (#3632)

* [UITests] Update Xamarin.UITest 2.2.5

* [UITests] Try fix Toolbaritems

* [UITest] Update to 2.2.5-1606

* [UITests] Small Fixes and workarounds to make uitest happy

* [UITests ] Add delay to 1733 for API28

* [Android] Revert bad merge (#3746)

fixes #3705

* [Android, iOS] Fixes layout compression causes (#3698) fixes #3624

* [Android, iOS] Fixes layout compression causes

* [iOS] improve UpdateNewElement method

* Fix build error hopefully

* [UWP] Fixes CollectionChanged events in ListView (#3323)

* fixes #3273

* [UWP] Fixes CollectionChanged events in ListView

* a wrapped collection is used only if the SourceItem is not ObservableCollection

* improve uitest

* fixed NRE in empty ListView

* added a sortable custom renderer for UItest

* minor refactoring

* fixed reset of not wrapped collections

* addressing comments

* [UWP] remove WinRT hack

* [UWP] add missing using and cleanup additional resources

* [Android] Update Forms to remove API28 deprecated API (#3653) fixes #2128 fixes #3629

* [Build] Update provisioning

* [Controls] Ignore deprecated  Android API usage

* [Android] Remove use of obsolete color usage

* [Android] Remove app fragment usage

* [android] Rollback changes to EntryCellRenderer

* [Android] Better way to get the default color for the label text

* [Android] Obsolete message for ContentPage.CreateFragment()

* [ControlGallery] - create bitmap from Drawable to use for pixel location

* [Android] Use textcolor resource

* Update submodule

* Fix tests (#3771)

* [ControlGallery] Wait for element and add timing to tests

* [iOS] Fix NRE on RenderPool

* Add TabStop/TabIndex (#2795)

* [Core, UWP, Android] support TabStop/TabIndex

* removing linq

* add iOS / MacOS implementation

* add WPF implementation
fixes UWP implementation

* - addressing comments
- improve test
- optimizations
- added previous tab direction in same tab group

* addressing comments

* [Android] support tabstop for pickers

* - moving shared code to a static class
- removed reflection

* ITabStop -> changed to internal, renamed, added in to fastRenderers

* Update ITabStop to be public

* Fix : Binding Icon in ToolbarItem in TabbedPage doesn't refresh (#3761) fixes #3756

* [iOS] Fix NRE on ContextCell (#3714) fixes #3275

* [Controls] Add repo for issue #3275

* [iOS] Fix NRE when no gestures exist on table

* [iOS] Null check outside loop

* [iOS]Make sure to dispose/unhook when we are removed from UITableView.

* Update submodule

* [iOS] Don't double dispose ContextActionCell

* WPF - Fix Width and Height measurement when GetDesiredSize (#3750)

* WPF - Reset Width and Height when GetDesiredSize

* Some formatting changes

* Add APP directive

* [WPF]Fix build

* [Android Maps] Make markers available to subclasses (#3751)

* Make markers available to subclasses

* Fix build

* Use Find instead of FirstOrDefault

* [UITests] wait for element before querying for it (#3791)

* [UITests] wait for element before querying for it

* [Controls] generalize and better represent intended behavior

* WPF - Fix Local store not persistant when restarting App (#3752)

-fixes #3541
* WPF - Fix Local store not persistant when restarting App
* Add UITest
* [Controls] Add automated UI Test

* [UITests] Isolate test 3408

* [UITest] Update Xamarin UITest packages

* [UWP] implement Replace without reloading ListView (#3792)

-fixes #3788
* [UWP] implement Replace without reloading ListView
* [UWP] extract bindingcontext of new item for replace

* [iOS] Use UIApperance default color for UISwitch (#3819)

* [Controls] Set default color of UISwitch to Red

* [iOS] Use default color from Apperance API

* [UITests] replace awaits with more reliable WaitForElement (#3835)

* [Core] Propagate BindingContext changes to TitleView (#3823)

* [Core] Propagate BindingContext changes to TitleView

* [Tests] Move UI test to Core Unit Test

* [A] do not draw gradient for empty CornerRadius (#3786)

Drawing CornerRadius (introduce by #1998) when the CornerRadii are
actually 0 causes scaling artifacts on API < 25.

This fixes the regression when no CornerRadius is set. Expect blurry
border scaling with CornerRadius not empty and API < 25

- fixes #3781

* [Android] Fix WebView.Navigating event, make WebViewClient inheritable (#3780)

* Extracted WebViewRenderer.WebClient to FormsWebViewClient, moved SendNavigating call from ShouldOverrideUrlLoading to OnPageStarted

* Changed _webViewClient and GetWebViewClient() method to return base class

* Changed public things to protected internal

* Fix spaces to tabs indentation to match the coding style (#3745)

* [Build] Fix merge

* Fix #3097 swipe gesture not being handled in VisualElementTracker. (#3098) Fixes #3097

* Update from origin (#9)

* [C] VisibilityConverter Trims input (#3581)

For CSS purposes, the VisibilityConverter was added, and actually
replaced the `Boolean.Parse(str)` call for parsing Visibility.
`Boolean.Parse()` trims input, and the converter was not, so this was a
regression.
This changes Trim() the input, to be fully backward compatible.

- fixes #3554

* Ensure ConstructorCountId and TimeId elements are available before querying them (#3588)

* For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)

This would allow previewer/designer/reloader to determine the source of a
stylesheet and refresh its content when appropriate.

* Revert "For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)"

This reverts commit f66a72de5b475a6a8387a80e418997b38dc40d4c.

* Fix NRE; Ret 0 if Text null (#3594) fixes #3579

* [UWP, WPF] Fixes rendering of the main page (#2896) fixes #2704

* [Core] Ignore Shamehat target when running DesignTimeBuild (#3605)

* [XamlC] Fix binding compilation fo value types (#3551)

properly load valuetype arguments of generated setters, using ldarg,
instead of ldarga.

- fixes #3539

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

* [Android] Fix Label LineHeight (#3452)

* fix line height android

* Make UAP respect initial LineHeight

* update .create-nuget.bat (#3638)

* Add Null Check to GetRenderer (#3575)

- fix #3563

* Fix 3562 Null Reference Exception (#3576)

- fixes #3562

* Fix 3564 Null Reference Exception (#3578)

- fixes #3564

* [iOS] AutomationProperty support for cells (#3313) fixes #3296

* [iOS] AutomationProperty support for cells

* Add test case to AutomationProperties gallery

* [UWP] Fix crash app when create navigation/tabbed page without children pages fixes #3188 (#3514)

* [Android] Use height when determining ScaledScreenSize; fixes #3609 (#3641)

* [C] Set binding context on Span Gestures (#3639)

* [Core] Set binding context on Span Gestures
* [Core] Simplify loop setting child binding context

- fixes #3524

* Update PULL_REQUEST_TEMPLATE.md

* [Android] remove deprecated AndroidUseLatestPlatformSdk (#3672)

* [iOS] iPad ActionSheet should always have a Cancel method (#3636)

* Add repro for #3049

* [iOS] iPad ActionSheet should always have a Cancel method

fixes #3049

* [Android] fixes #3675 - set  initial ScrollView Scroll values when RTL (#3676)

* [Android] API check for Shadow properties on Button (#3617) fixes #2702

* [Android] API check for Shadow properties on Button

* Fix swapped shadow values

* [iOS] fixes #3525 - add epsilon for float compare (#3654)

* [iOS] fixes #3525 - add epsilon for float compare and make region immutable

* [ControlGallery] spread out spans to account for click slop

* [ControlGallery] - adjust span slightly for android test

* [Core] remove private

* Fix text wrapping (#3671) fixes #3634

* [GTK] Fix navigation bar visibility updates (#3651)

* Fix partially  #3585 (#3592)

* Make webkit-sharp.dll.config cross-platform

* Update webkit-sharp.dll with missing signals bindings

see: https://github.com/ylatuya/webkit-sharp/tree/fluendo

* [iOS, UWP] fixes #2894 - Gestures collection changes weren't correctly propagating (#3643)

* [iOS, UWP] fixes #2894 - Gestures weren't wiring up to spans in all cases

* [Core] remove ChildGestureRecognizers when spans get removed

* [iOS] removed incorrect return from null

* Fixes #3663 (#3684)

* Fix ScrollView Padding issue (#3685)

* [WPF] Memory leak when you pop a TabbedPage (#3372) fixes #3267

* Fix [WPF] Memory leak when you pop a TabbedPage

* Update ViewRenderer.cs

* Update ViewRenderer.cs

* [Android,iOS,UWP] Allow Entry CursorPosition/SelectionLength to be set in ctor (#3402) fixes #3343 fixes #3633

* Add repro for #3343 + unit tests

* [Core] Disallow negative values for CursorPosition/SelectionLength

* [All] CursorPosition/SelectionLength can bindin ctor & clear value

fixes #3343

* typo

* cleanup

* [iOS] Cursor snaps to end

* try/catch

* [CSS] add more properties (#3466)

map new CSS properties:
- `color` on `IColorElement` (`ActivityIndicator`, `BoxView`),
  `ProgressBar` and `Switch`
- `row-gap` and `column-gap` on `Grid`
- `transform` and `transform-origin` on `VisualElement`
- `vertical-align` on `Label`

add new XF-specific CSS properties
- `-xf-placeholder` and `-xf-placeholder-color` on `Editor`, `Entry`,
  `SearchBar`
- `-xf-max-length` on `InputView` (`Editor` and `Entry`)
- `-xf-bar-background-color` and `-xf-bar-text-color` on
  `NavigationPage` and `TabbedPage`
- `-xf-orientation` on `ScrollView` and `StackLayout`
- `-xf-horizontal-scroll-bar-visibility` and
  `-xf-vertical-scroll-bar-visibility` on `ScrollView`
- `-xf-min-track-color`, `-xf-max-track-color` and `("-xf-thumb-color`
  on `Slider`
- `-xf-spacing` on `StackLayout`

This PR replaces and closes #3276

- fixes #2891

* [iOS] Specify a default size for UISearchBar width if needed (#3635) fixes #3413 fixes #2139

* [Controls] Add reproduction and test case for issue #3413

* [iOS] Don't use max value for iOS UISearchbar breaks on iOS 11.3

* [iOS] Force width value so we can renderer UISearchBar on iOS10 with infinite width

* [Controls] Fix spelling and add Manual Review to the test of #3413

* [iOS] Simplify code for UISearchBar width

* [iOS] Return always some width from measure the UISearchBar on IOS

* [Controls] Add reproduction case for issue #2139

* [UWP] Fixed double set margins in Layouts (#3570) fixes #3398 fixes #3616

* [Android] Support multiple clipping settings in single layout (#3559)

* Repro

* Fix for API 18+

*  [iOS] Unsubscribe CellPropertyChanged when SwitchCellRenderer is disposed (#3518)

* [Controls] Add repo of issue #3408

* [iOS] Unsubscribe CellPropertyChanged when cell is disposed

* [Controls] Add issue to project

* [iOS] Introduce CellPropertyChange to CellTableViewCell to used by all other cell renderers

* [Controls] Simplify Issue

* [iOS] Remove PropertyChanged that was not used

* [Controls] add check for null binding on template, add notes about issues

* [Controls] added reference to Android crash

* [iOS]Use existing PropertyChanged on ViewCelRenderer

* [iOS] Keep the existing override so we don't break users

* Update TextCellRenderer.cs

* update submodule

* 24H Mode (#3701)

The 24h mode for the pickerdialog was not working.

Version 3.1 was working fine. 

Here is an updated file.

* [UWP] uncomment tests that are now passing for 3188 (#3723)

* [UITest] Update Xamarin.UITest nuget package (#3632)

* [UITests] Update Xamarin.UITest 2.2.5

* [UITests] Try fix Toolbaritems

* [UITest] Update to 2.2.5-1606

* [UITests] Small Fixes and workarounds to make uitest happy

* [UITests ] Add delay to 1733 for API28

* [Android] Revert bad merge (#3746)

fixes #3705

* [Android, iOS] Fixes layout compression causes (#3698) fixes #3624

* [Android, iOS] Fixes layout compression causes

* [iOS] improve UpdateNewElement method

* Fix build error hopefully

* [UWP] Fixes CollectionChanged events in ListView (#3323)

* fixes #3273

* [UWP] Fixes CollectionChanged events in ListView

* a wrapped collection is used only if the SourceItem is not ObservableCollection

* improve uitest

* fixed NRE in empty ListView

* added a sortable custom renderer for UItest

* minor refactoring

* fixed reset of not wrapped collections

* addressing comments

* [UWP] remove WinRT hack

* [UWP] add missing using and cleanup additional resources

* [Android] Update Forms to remove API28 deprecated API (#3653) fixes #2128 fixes #3629

* [Build] Update provisioning

* [Controls] Ignore deprecated  Android API usage

* [Android] Remove use of obsolete color usage

* [Android] Remove app fragment usage

* [android] Rollback changes to EntryCellRenderer

* [Android] Better way to get the default color for the label text

* [Android] Obsolete message for ContentPage.CreateFragment()

* [ControlGallery] - create bitmap from Drawable to use for pixel location

* [Android] Use textcolor resource

* Update submodule

* Fix tests (#3771)

* [ControlGallery] Wait for element and add timing to tests

* [iOS] Fix NRE on RenderPool

* Add TabStop/TabIndex (#2795)

* [Core, UWP, Android] support TabStop/TabIndex

* removing linq

* add iOS / MacOS implementation

* add WPF implementation
fixes UWP implementation

* - addressing comments
- improve test
- optimizations
- added previous tab direction in same tab group

* addressing comments

* [Android] support tabstop for pickers

* - moving shared code to a static class
- removed reflection

* ITabStop -> changed to internal, renamed, added in to fastRenderers

* Update ITabStop to be public

* Fix : Binding Icon in ToolbarItem in TabbedPage doesn't refresh (#3761) fixes #3756

* [iOS] Fix NRE on ContextCell (#3714) fixes #3275

* [Controls] Add repo for issue #3275

* [iOS] Fix NRE when no gestures exist on table

* [iOS] Null check outside loop

* [iOS]Make sure to dispose/unhook when we are removed from UITableView.

* Update submodule

* [iOS] Don't double dispose ContextActionCell

* WPF - Fix Width and Height measurement when GetDesiredSize (#3750)

* WPF - Reset Width and Height when GetDesiredSize

* Some formatting changes

* Add APP directive

* [WPF]Fix build

* [Android Maps] Make markers available to subclasses (#3751)

* Make markers available to subclasses

* Fix build

* Use Find instead of FirstOrDefault

* [UITests] wait for element before querying for it (#3791)

* [UITests] wait for element before querying for it

* [Controls] generalize and better represent intended behavior

* WPF - Fix Local store not persistant when restarting App (#3752)

-fixes #3541
* WPF - Fix Local store not persistant when restarting App
* Add UITest
* [Controls] Add automated UI Test

* [UITests] Isolate test 3408

* [UITest] Update Xamarin UITest packages

* [UWP] implement Replace without reloading ListView (#3792)

-fixes #3788
* [UWP] implement Replace without reloading ListView
* [UWP] extract bindingcontext of new item for replace

* [iOS] Use UIApperance default color for UISwitch (#3819)

* [Controls] Set default color of UISwitch to Red

* [iOS] Use default color from Apperance API

* [UITests] replace awaits with more reliable WaitForElement (#3835)

* [Core] Propagate BindingContext changes to TitleView (#3823)

* [Core] Propagate BindingContext changes to TitleView

* [Tests] Move UI test to Core Unit Test

* [A] do not draw gradient for empty CornerRadius (#3786)

Drawing CornerRadius (introduce by #1998) when the CornerRadii are
actually 0 causes scaling artifacts on API < 25.

This fixes the regression when no CornerRadius is set. Expect blurry
border scaling with CornerRadius not empty and API < 25

- fixes #3781

* [Android] Fix WebView.Navigating event, make WebViewClient inheritable (#3780)

* Extracted WebViewRenderer.WebClient to FormsWebViewClient, moved SendNavigating call from ShouldOverrideUrlLoading to OnPageStarted

* Changed _webViewClient and GetWebViewClient() method to return base class

* Changed public things to protected internal

* Fix spaces to tabs indentation to match the coding style (#3745)

* [Build] Fix merge

* Fix #3097 swipe gesture not being handled in VisualElementTracker. (#3098) Fixes #3097

* Ensure that the ListViewAdapter is no longer being used by the ListVi… (#3848) fixes #3603

* Ensure that the ListViewAdapter is no longer being used by the ListView before disposing it

* Remove `RemoveAllViews` from `Dispose`

* Update from origin (#11)

* [Android] Enable MaxLines and TextDecorations on fast renderers (#3878)

* enable MaxLines on fast renderers

* added text decoration functionality

* include test in project

* [Enhancement] Create a bindable property for AutomationId (#3879)

* create a bindable property for automationId

* make ClassId and AutomationId properties of Element

* add comments to .create-nuget.bat

* added preserve attribute (#3876) fixes #2306

* [Core] Moving Command's CanExecuteChanged to use the WeakEventManager (#3852) fixes #3656

* [Core]  Use WeakEventManager on CanExecuteChanged

* [Core]Add unit test for remove event handler with WeakEventManager

* [Core] Fix remove the correct handler

* [CSS] accept 'oblique' for 'font-style' (#3815) fixes #3808

- fixes #3808

* Prevent double time/date picker dialogs on Android when setting focus (#3899)

* Prevent double time/date picker dialogs on Android when setting focus (#3899)

* [Controls] Fix merge remove duplciated issue 3788

* WPF - Fix Unable to intercept back button (#3762)

* WPF - Fix Unable to intercept back button

* WPF - Improve OnBackButtonPressed

-fixes #3689

* Fix Bugzilla38723 (#3812)

fixes #2302

* [C] fix css mapping (#3919)

* [Android] Fix UI test 1851 (#3882)

* add preserve attribute

- fixes #2255


* added using System

* fixed spacing

* use TestContentPage

* fixed scope issues

* [Android] Make native Android Platforms accessible via Context (#3364)

* Make native Android Platforms accessible via Context

* Add null checks

* Added a disabled look to Android Toolbar Item images. (#3773)

* Added a disabled look to Android Toolbar Item images.

* Update NavigationPageRenderer.cs

Refactored DisabledToolbarAlpha into a constant as requested.

* [UWP] fixes tabstops of TimePicker, DatePiker. SearchBar, Stepper (#3896)

* [UWP] fixes tabstops of TimePicker, DatePiker. SearchBar, Stepper

* common code moved to VisualElementRenderer

* rename interface

fixes #3872

* [UWP] For the Slider default value of step is set to 1000 to match Android. (#3141)

* WPF - Ctrl+A does not select all in WPF password Entry (#3908)

* [WPF] Fix Height of items not consistent (#3925) fixes #3913

* Fix StartTimer and Ticker for UWP (#3911)

- fixes #1937

* Apply font fix for button and span (#3907)

* added instructions (#3891)

- fixes #2361

* [Android] Convert corner radius with correct pixel density (#3893) fixes #3884

* [Controls] Add Issue #3884 repo

* [Android] Convert  corner radius with correct pixel density fixes #3884

* [Controls] Update test message

* WPF - Fix TimePicker with short time pattern shows verbose time (#3924)

* Fix UI test 39378 (#3928)

fixes #2305

* Update ClipBounds when View bounds changes (#3909)

fixes #3717

* [C] catch AmbiguousMatchException on GetProps (#3915)

- fixes #3870

* Automate UI test B45702 (#3914) fixes #2389

* automate 45702

* fix indentation

* Fix bugzilla60787 (#3933)

* [Android]Fix for frame renderer's bug (bugzilla 60787).

#3902
https://bugzilla.xamarin.com/show_bug.cgi?id=60787
https://github.com/xamarin/Xamarin.Forms/issues/3902

* Add control to repro

* PR fix

* Build fix

* Build fix for Xamarin.Forms.Core.Android.UITests

* added instructions (#3926)

* [UWP] fixes flyout menu on cell item (#3682)

* Fix UI test B41424 needs instructions (#3942)

* Add manual test steps and checks for ui test

* step4Label text fix

* [iOS] fix full width issues for TitleView (#3939)

* [iOS] fix full width issues for TitleView

* [iOS] simplified iOS 10

fixes #3881
fixes #3679

* Changes in TableView GTK Control to allow refresh the content (#3941)

- fixes #3725

* Only set the Page Padding via SafeAreaInset on iOS (#3811)

* only set the Page Padding via SafeAreaInset on iOS
-fixes #3809

* [Controls] add waits for clicks in ui tests

* [Controls] remove wrong category

* [iOS] Move inset logic down into ios renderer

* Added logic to allow set the ListView SelectedIndex (#3948) fixes #3766

* Automate UI test 35127 (#3927)

* automate test
- fixes #2262
* indentation fix
* indentation fix 2

* Make GetIconDrawable virtual (#3967)

By making GetIconDrawable virtual for the Android TabbedPageRenderer it allows for the icon to come from other sources (like glyph fonts). This will work for both top and bottom tabs.

* [GTK] Fix visibility of hidden pages in the stack (#3904)

When navigating to a new page, we should hide the previous
content and show the new one so that the previous page
renderer is not taken in account for redraws and resizes

* [Android] If MaxLines is not explicitly set, let LineBreakMode handle it (#3936)

* [Android] If MaxLines is not explicitly set, all LineBreakMode to set it;
if MaxLines is explicitly set, MaxLines setting wins. Use a more reasonable
default for native MaxLines when handling it via LineBreakMode. Consolidate
MaxLines handling code between legacy and fast renderers. Remove unnecessary
setting of SingleLine (which only applies to input).
- fixes #3772

* Remove unnecessary maxLines setting

* Handle resetting MaxLines to -1/default

* Reinstate workaround for array bounds exception in older Android APIs

* Fix UI test B43941 (#3889)

* Add all platforms and remove non-deterministic behaviour

* Return back correct check of counter

* Endline fix

* remove childPages list

* [XamlC] avoid multiple subscription (#3969)

Avoid multiple subscription to PropertyChanged on TypedBindings

- fixes #3613
- fixes #3650

* Fix typos (mainly 'toogle' becoming 'toggle') (#3975)

* Fix Issue2597 Needs UI Test (#3966)

* Add test for issue 2597

* Fix space

* Add CODEOWNERS

* Fix PanGesture inside scroll issue https://github.com/xamarin/Xamarin… (#3842)

* Fix PanGesture inside scroll issue https://github.com/xamarin/Xamarin.Forms/issues/3840
- fixes #3840
* fixe formatting

* [UITest] added UI Test

* [Controls] adjusted UI Test button positions

* [UITEST]  simplify UI tests

* [C] add CSS mapping for max-lines (#3991)

- fixes #3982

* [iOS] Add ability to turn off updates to native controls from another thread (#3774)

* [iOS] Add ability to turn off updates to native controls from another thread

* Flip evaluation order

fixes #1755

* Fixed NotImplementedException refreshing items in WPF ListView (#3962)

* Fixed NotImplementedException refreshing items in WPF ListView

* Small changes in ListView events subscription

fixes #3309
fixes #3737
fixes #3648

* [GTK] Fix transparent background in visual elements (#3744)

* Fix ActivityIndicator.IsRunning state (#4007)

* add pdb for uap into nuget (#4015)

* update GitInfo

* [XamlC] don't compile bindings with Source (#3978)

Sources are usually x:reference that can't be resolved at compilation
time.

- fixes #3606

* [Xaml[C]] resolve Extensions first (#3977)

XamlLoader should first look for type with the Extension suffix. It used
to be the case, but somehow regressed.

- fixes https://github.com/xamarin/Xamarin.Forms/issues/3606#issuecomment-422377338

* [UWP] Document in the README.md the steps required to run UI Tests (#4014) fixes #3984

* [Tizen] Add TabIndex implement for Tizen renderer (#4046)

* [Tasks] multitarget the build tasks (#3895)

- fixes #2690
- closes #2706

* [UITests] Update TestCloud.Agent (#4055)

* [Tizen] Fix ProjectGuid for Forwarders (#4063)

* [Tizen] Fix ProjectGuid for Forwarders

* [Tizen] Make sure not to generate dependency file

* Correct minor typo (#4068)

* Added WebView Reload (#4013) fixes #3776

* Added WebView Reload

* WebView Reload Added Tizen suport

* [Tizen] Cleanup Code (#4080)

* fixed ios editor placeholder font (#4009)

* Prevented crash https://github.com/xamarin/Xamarin.Forms/issues/2291 (#4072)

- fixes #2291

* [Xaml] Allow OnPlat markup in Styles (#3995)

- fixes #3862

* [Xaml] fix Namescope being different than tree (#4089)

As part of #2556, the namescoping tree was assumed to be equiv to the
object tree, which is obviously wrong. This fixes it, while keeping the
old behavior as a fallback.

We might go further, but I can't come up with a reasonable scenario
failing.

- fixes #3821

* [Sample] [Android] Fixed PagesGallery.Droid build (#3999)

* fixed PagesGallery.Droid build

* Moved Xamarin.Forms.Platform.Android (Forwarders) reference to previous place

* updated project guid to lower case

* Fix typeface reset issue (#4019)

* Use ViewCompat to set and get label for view (#3996)

* Removing LineBreakMode support from WindowsResourcesProvider (#4024)

* Repro test page for 3979

* Removes LineBreakMode support from WindowsResourcesProvider as it is inconsistent with other platforms and caused issues when setting Span style to the default Device Styles

* [macOS] Fix NRE on Mojave when aligning the tile (#4086) fixes #3031

* [GTK] Add support for ClickGestureRecognizer (#3971)

* [GTK] Add support for ClickGestureRecognizer

* Add ClickGestureGalleryPage to test ClickGestureRecognizer

* [iOS] Label TextColor has no effect with FormattedString (#4043)

* https://github.com/xamarin/Xamarin.Forms/issues/4040 fix default font/color for formatted string

* https://github.com/xamarin/Xamarin.Forms/pull/4043 fixed naming, added test case

* Moved field and property to top

- fixes #4040

* fix build, tentatively (#4117)

* [Xaml] don't swallow exceptions from converters (#4100)

Compiled converters are invoked, by reflection, at compile time. Any
exception thrown there will be wrapped in a TargetInvocationException.
When that happens, we still want to expose the inner XamlParseException
to the user.

- fixes #4099

* housekeeping ended with https://github.com/xamarin/Xamarin.Forms/pull/3999 (#4105)

* Bump minimum Microsoft.NETCore.UniversalWindowsPlatform version to 6.0.12 (#4106)

* [Tizen] Fix Window alpha update timing (#4119)

* [UWP] fixed `MinimumDate` and `MaximumDate` properties of DatePicker (#3683) fixes #3331

* [WPF] Fixes `ControlTemplate` sizing issue (#2656)

- fixes #2642

* Remove BOM from nuspec (#4128)

* Navigation Page double Popped event Workaround (#3851) fixes #3509

* Navigation Page double Popped event Workaround

* [UITest] Add UI Test

* [Core] fix formatting

* revert formatting fix

* implemented workaround suggested by PureWeen

* removed whitespace

* moved ignorePopCall to a better location

* [Enhancements] Toolbar a11y  (#3974) fixes #1742 fixes #3795

* [Controls] Add automation id to icon

* [iOS] Add AutomationId support to MDP tooggle button

* [Android] Add support for AutomationId to ActionBarDrawerToggle and MasterDetailPage

* [IOS] Refactor and add Accessibility to ToolbarItems

* [iOS] Fix typos

* [Android] Add accessibility to ToolbarItems

* [UWP]  Refactor A11y to extensions

* [UWP]  Set Accessibility properties on ToolbarItems

* [UWP] Set accessibility to MDP button

* [ControlGallery] Add accessibility toolbaritems to gallery

* Comment test out

* [iOS] Fix NRE when Control is being disposed

* [UITests] Remove not used UITests file

* Implementation of method ForceUpdateSize for Cell on macOS (#4104)

* Implemented Cell ForceUpdateSize on macOS

* Tab Styling

* Prevent crash during setting NULL to element via interface method (#4179)

- fixes #4178
- fixes #4146

* https://github.com/xamarin/Xamarin.Forms/issues/4076 fix (#4161)

* [iOS] Rapidly clicking span (6 times at least) on UITest 3525 throws a null exception (#4109)

* https://github.com/xamarin/Xamarin.Forms/issues/3930 fix

* following convention

* [Android] Fixes AutomationProperties.Name on Button (#4094)

* [Android] Fixes AutomationProperties.Name on Button

* [Android] Fixes for Switch control

* UWP Toolbar dynamic overflow (#4022)

* Adding Windows specific ToolbarDynamicOverflowEnabled configuration

* Enabled ToolbarDynamicOverflowEnabled (pun intended) on page controls and renderers

* Issue 3988 sample

* Removed obsolete comment, cleaned up private and whitespace

* Added toolbar dynamic overflow examples for master detail page and tabbed page


- fixes #2057
- fixes #3988

* Add missing initial call to UpdateLineHeight; fixes #4136 (#4147)

* Added UI test to B45027 (#4079)

* Add UI test to B45027

* Changed execution of current UI test to Android platform

* Added iOS UI test to B45027

* Refactored UI test execution

* Fix https://github.com/xamarin/Xamarin.Forms/issues/3301 (#4164)

- fixes #3301

* [UWP] fixes entering text into SearchBar with UI Tests (#4173)

* [UWP] fixes entering text into SearchBar with UI Tests

* [UWP] ITabStopOnDescendants - fixed selection when setting focus from Selenium

* [UWP] Fix TitleView Width and MDP rendering quirks (#3987)

* [UWP] Fix TitleView Width and MDP rendering quirks

* [UWP] fix load timing for pushed pages and titleview

* [UWP] move renderer check

* [UWP] remove re-measure until 4116 fixed

- fixes #3828
- fixes #3834

* [macOS] NRE in WebViewRenderer (#4188) fixes #4001

* https://github.com/xamarin/Xamarin.Forms/issues/4001

* fixed build

* https://github.com/xamarin/Xamarin.Forms/issues/2831 fixes #2831 (#4111)

* [msbuild] use portable pdb files (#4201)

Currently, on the first build of a "Hello World" Xamarin.Forms app,
you will see this in the build log:

    ConvertDebuggingFiles
        Parameters
            Files
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\FormsViewGroup.pdb
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.pdb
        OutputItems
            _ConvertedDebuggingFiles
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\FormsViewGroup.dll
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.dll

The logging is a little weird here, but this `ConvertDebuggingFiles`
MSBuild task takes about 100ms on my machine.

What is it doing?

The Mono debugger can support two types of debugging files:
- `mdb` files
- "portable" `pdb` files

If Xamarin.Android's build finds a "non-portable" `pdb` file, we have
to run it through this task to convert to an `mdb` file... This gives
us proper stacktraces for `FormsViewGroup.dll` and
`Xamarin.Forms.Platform.Android.dll`.

You can change the type of debugging symbols in your project with the
`DebugType` setting, which has these options:
- Blank or `None`: don't generate symbols. (Although Xamarin.Android
  has funny behavior here, see:
  https://github.com/xamarin/xamarin-android/issues/2282)
- `Full` generates an `mdb` file, this is a Windows-proprietary format
  for debug builds
- `PdbOnly` generates a "non-portable" `pdb` file, a
  Windows-proprietary format for release builds
- `Portable` generates a "portable" pdb file, which is the new
  standard that works for debug and release builds. New SDK-style
  MSBuild projects use this option by default.

These values are not case sensitive, I have mostly seen them lower
case in newer projects.

So what does Xamarin.Forms need to do?

Use `<DebugType>portable</DebugType>` in any Android class library or
app project. Other platforms, this is optional, not as much benefit. I
have heard that `DebugType=portable` might cause a problem on UWP.

* Xamarin.Forms will ship "portable" `pdbs` in its NuGet package for
  `FormsViewGroup.dll` and `Xamarin.Forms.*.Android.dll`. Developers
  won't pay the 100ms on initial build.
* Initial build times for `Xamarin.Forms.sln` will be slightly better
  for development, although I didn't measure the difference here.

* [XamlC] fix the argument match check for events (#4134)

Well, it looks like the order of arguments of InheritOrImplements was
reversed... a totally fine and normal Friday so far

- fixes #4130

* Add UI Test. Add instructions. Move to correct namespace (#4170) fixes #2251

* Add uitest for 2794 (#4110) fixes #2293

* Fix PropagateEvent value properly on Cells (#4191)

* bump gitinfo

* [Core, iOS, MacOS, Android, UWP, WPF] ListView hide scroll view scroll bars (#3897) fixes #3843

* Update from origin (#8)

* [C] VisibilityConverter Trims input (#3581)

For CSS purposes, the VisibilityConverter was added, and actually
replaced the `Boolean.Parse(str)` call for parsing Visibility.
`Boolean.Parse()` trims input, and the converter was not, so this was a
regression.
This changes Trim() the input, to be fully backward compatible.

- fixes #3554

* Ensure ConstructorCountId and TimeId elements are available before querying them (#3588)

* For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)

This would allow previewer/designer/reloader to determine the source of a
stylesheet and refresh its content when appropriate.

* Revert "For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)"

This reverts commit f66a72de5b475a6a8387a80e418997b38dc40d4c.

* Fix NRE; Ret 0 if Text null (#3594) fixes #3579

* [UWP, WPF] Fixes rendering of the main page (#2896) fixes #2704

* [Core] Ignore Shamehat target when running DesignTimeBuild (#3605)

* [XamlC] Fix binding compilation fo value types (#3551)

properly load valuetype arguments of generated setters, using ldarg,
instead of ldarga.

- fixes #3539

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

* [Android] Fix Label LineHeight (#3452)

* fix line height android

* Make UAP respect initial LineHeight

* update .create-nuget.bat (#3638)

* Add Null Check to GetRenderer (#3575)

- fix #3563

* Fix 3562 Null Reference Exception (#3576)

- fixes #3562

* Fix 3564 Null Reference Exception (#3578)

- fixes #3564

* [iOS] AutomationProperty support for cells (#3313) fixes #3296

* [iOS] AutomationProperty support for cells

* Add test case to AutomationProperties gallery

* [UWP] Fix crash app when create navigation/tabbed page without children pages fixes #3188 (#3514)

* [Android] Use height when determining ScaledScreenSize; fixes #3609 (#3641)

* [C] Set binding context on Span Gestures (#3639)

* [Core] Set binding context on Span Gestures
* [Core] Simplify loop setting child binding context

- fixes #3524

* Update PULL_REQUEST_TEMPLATE.md

* [Android] remove deprecated AndroidUseLatestPlatformSdk (#3672)

* [iOS] iPad ActionSheet should always have a Cancel method (#3636)

* Add repro for #3049

* [iOS] iPad ActionSheet should always have a Cancel method

fixes #3049

* [Android] fixes #3675 - set  initial ScrollView Scroll values when RTL (#3676)

* [Android] API check for Shadow properties on Button (#3617) fixes #2702

* [Android] API check for Shadow properties on Button

* Fix swapped shadow values

* [iOS] fixes #3525 - add epsilon for float compare (#3654)

* [iOS] fixes #3525 - add epsilon for float compare and make region immutable

* [ControlGallery] spread out spans to account for click slop

* [ControlGallery] - adjust span slightly for android test

* [Core] remove private

* Fix text wrapping (#3671) fixes #3634

* [GTK] Fix navigation bar visibility updates (#3651)

* Fix partially  #3585 (#3592)

* Make webkit-sharp.dll.config cross-platform

* Update webkit-sharp.dll with missing signals bindings

see: https://github.com/ylatuya/webkit-sharp/tree/fluendo

* [iOS, UWP] fixes #2894 - Gestures collection changes weren't correctly propagating (#3643)

* [iOS, UWP] fixes #2894 - Gestures weren't wiring up to spans in all cases

* [Core] remove ChildGestureRecognizers when spans get removed

* [iOS] removed incorrect return from null

* Fixes #3663 (#3684)

* Fix ScrollView Padding issue (#3685)

* [WPF] Memory leak when you pop a TabbedPage (#3372) fixes #3267

* Fix [WPF] Memory leak when you pop a TabbedPage

* Update ViewRenderer.cs

* Update ViewRenderer.cs

* [Android,iOS,UWP] Allow Entry CursorPosition/SelectionLength to be set in ctor (#3402) fixes #3343 fixes #3633

* Add repro for #3343 + unit tests

* [Core] Disallow negative values for CursorPosition/SelectionLength

* [All] CursorPosition/SelectionLength can bindin ctor & clear value

fixes #3343

* typo

* cleanup

* [iOS] Cursor snaps to end

* try/catch

* [CSS] add more properties (#3466)

map new CSS properties:
- `color` on `IColorElement` (`ActivityIndicator`, `BoxView`),
  `ProgressBar` and `Switch`
- `row-gap` and `column-gap` on `Grid`
- `transform` and `transform-origin` on `VisualElement`
- `vertical-align` on `Label`

add new XF-specific CSS properties
- `-xf-placeholder` and `-xf-placeholder-color` on `Editor`, `Entry`,
  `SearchBar`
- `-xf-max-length` on `InputView` (`Editor` and `Entry`)
- `-xf-bar-background-color` and `-xf-bar-text-color` on
  `NavigationPage` and `TabbedPage`
- `-xf-orientation` on `ScrollView` and `StackLayout`
- `-xf-horizontal-scroll-bar-visibility` and
  `-xf-vertical-scroll-bar-visibility` on `ScrollView`
- `-xf-min-track-color`, `-xf-max-track-color` and `("-xf-thumb-color`
  on `Slider`
- `-xf-spacing` on `StackLayout`

This PR replaces and closes #3276

- fixes #2891

* [iOS] Specify a default size for UISearchBar width if needed (#3635) fixes #3413 fixes #2139

* [Controls] Add reproduction and test case for issue #3413

* [iOS] Don't use max value for iOS UISearchbar breaks on iOS 11.3

* [iOS] Force width value so we can renderer UISearchBar on iOS10 with infinite width

* [Controls] Fix spelling and add Manual Review to the test of #3413

* [iOS] Simplify code for UISearchBar width

* [iOS] Return always some width from measure the UISearchBar on IOS

* [Controls] Add reproduction case for issue #2139

* [UWP] Fixed double set margins in Layouts (#3570) fixes #3398 fixes #3616

* [Android] Support multiple clipping settings in single layout (#3559)

* Repro

* Fix for API 18+

*  [iOS] Unsubscribe CellPropertyChanged when SwitchCellRenderer is disposed (#3518)

* [Controls] Add repo of issue #3408

* [iOS] Unsubscribe CellPropertyChanged when cell is disposed

* [Controls] Add issue to project

* [iOS] Introduce CellPropertyChange to CellTableViewCell to used by all other cell renderers

* [Controls] Simplify Issue

* [iOS] Remove PropertyChanged that was not used

* [Controls] add check for null binding on template, add notes about issues

* [Controls] added reference to Android crash

* [iOS]Use existing PropertyChanged on ViewCelRenderer

* [iOS] Keep the existing override so we don't break users

* Update TextCellRenderer.cs

* update submodule

* 24H Mode (#3701)

The 24h mode for the pickerdialog was not working.

Version 3.1 was working fine. 

Here is an updated file.

* [UWP] uncomment tests that are now passing for 3188 (#3723)

* [UITest] Update Xamarin.UITest nuget package (#3632)

* [UITests] Update Xamarin.UITest 2.2.5

* [UITests] Try fix Toolbaritems

* [UITest] Update to 2.2.5-1606

* [UITests] Small Fixes and workarounds to make uitest happy

* [UITests ] Add delay to 1733 for API28

* [Android] Revert bad merge (#3746)

fixes #3705

* [Android, iOS] Fixes layout compression causes (#3698) fixes #3624

* [Android, iOS] Fixes layout compression causes

* [iOS] improve UpdateNewElement method

* Fix build error hopefully

* [UWP] Fixes CollectionChanged events in ListView (#3323)

* fixes #3273

* [UWP] Fixes CollectionChanged events in ListView

* a wrapped collection is used only if the SourceItem is not ObservableCollection

* improve uitest

* fixed NRE in empty ListView

* added a sortable custom renderer for UItest

* minor refactoring

* fixed reset of not wrapped collections

* addressing comments

* [UWP] remove WinRT hack

* [UWP] add missing using and cleanup additional resources

* [Android] Update Forms to remove API28 deprecated API (#3653) fixes #2128 fixes #3629

* [Build] Update provisioning

* [Controls] Ignore deprecated  Android API usage

* [Android] Remove use of obsolete color usage

* [Android] Remove app fragment usage

* [android] Rollback changes to EntryCellRenderer

* [Android] Better way to get the default color for the label text

* [Android] Obsolete message for ContentPage.CreateFragment()

* [ControlGallery] - create bitmap from Drawable to use for pixel location

* [Android] Use textcolor resource

* Update submodule

* Fix tests (#3771)

* [ControlGallery] Wait for element and add timing to tests

* [iOS] Fix NRE on RenderPool

* Add TabStop/TabIndex (#2795)

* [Core, UWP, Android] support TabStop/TabIndex

* removing linq

* add iOS / MacOS implementation

* add WPF implementat…
jfversluis added a commit to jfversluis/Xamarin.Forms that referenced this pull request Jun 5, 2019
Update (#12)
* [XamlC] Always enable implicit casting, boxing and unboxing (#4238)

* [X] throw XPE on missing element .ctor (#4786)

* [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

* [Android] Check if Drawable is null in Draw override (#4783)

- fixes #4782

* [XamlC] instantiate generic parameter on base types (#4776)

* [XamlC] Instantiate generic parameters in base type generic arguments

* Add unit test for #4047

- fixes #4760
- closes #4047

* [Android] set ClipBounds to use ViewCompat.SetClipBounds (#4819)

* [X] Design time properties (#4743)

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.

* Remove unnecessary OK button check that won't pass on older Android versions

* [*] Drop MenuItem.IsEnabledPropertyName (#4659)

* [*] Drop MenuItem.IsEnabledPropertyName

While doing one of the big refactoring of 2006, we missed an
opportunity to use a propertyKey for IsEnabled, ending up in some
less-than-optimal  design choices, like IMenuController.IsEnabledPropertyName.

Properly using a public r-o BP removes the need for IsEnabledPropertyName.

* other plats

* use the key

* [Flex] fix Padding on the FlexLayout (#4823)

As the flex engine doesn't handle x,y offset on the root layout,
handle that at the XF.FlexLayout level.

- fixes #2663

* [Shell] fix queryParam navigation (#4843)

when navigating to pages, not shell-section, handle the queryParams

- fixes #4837

* Make ListView CachingStrategy property visible to Intellisense (#4846)

* Implement Android single selection in CollectionView (#4651)

* Implement Android single selection

* Fix naming conflicts with SelectionChangedEventArgs

* Split files by class; make SelectionChangedEventArgs constructors internal;
Optimizations for SelectionChangedEventArgs;
Fire selection changed event/command from property changed handler;

* Update Xamarin.Forms.Core/Items/SelectableItemsView.cs

Co-Authored-By: StephaneDelcroix <stephane@delcroix.org>

* Set default value for SelectedItemProperty

* Remove unnecessary null check

* Fix order of OnElementChanged and Setup/Teardown Element

* Fix project file weirdness

* Add instructions to manual UI test

* Remove nonsensical comments

* Make test button visible on UWP

* Min viable FontImageSource (#4747)

* min viable fontImageSource

* [UWP] Min viable FontImageSource (#4817)

* [UWP] font image source

* address comment

* [UWP] performance optimization of the rendering of icons font
- the minimum Dpi of the icon is 300

* char -> string; CR feedback

* Add instructions for test 764; remove automated test that did nothing;

* Clean up old comments

* Add manual test run instructions for UI test 1025

* Add manual instructions to UI test 1026

* Automate UI test 1028

* Add manual test instructions for 1075, match button text with actual color

* Automate UI test 1219

* Automate UI test 1236

* Automate UI test 1267

* Fix test 852

* Add missing preserve attribute for UI test 1267

* [iOS] Implement item move on iOS CollectionView (#4863)

* Implement item move on iOS CollectionView

* Remove private modifier

* Use PushAsync for 1305 UI test so the toolbar shows up

* Material Design Renderers for the Material Visual (#4733)

* Use the auto-generated constants

* [Visual] Work on the Material Frame

* Improving the code for the sample

* Added a controller to help with frames that have additional padding
 - Android MaterialCardView does not use the default padding to determine where the content starts, rather it uses the content padding of the view because there is a border that does not affect the content

* [Visual] Added a few extra checks on Android to reduce unnecessary interop

* [Visual] A few more frame changes and some button tweaks

* [Visual] use the themers on iOS and save default properties

* [Visual] Add placeholders for themer and cache defaults

* [Visual] Added the material slider for iOS
 - Android does not have a custom control, so uses the existing renderer

* [enhancements] Move from duplicate LoadImageAsync code to GetNativeImageAsync

* [visual] Updated the controls to use the new iOS bits

* [visual] some fixes for material components

* [visual] Added hacks for material alerts

* [visual] removing the alert changes for the main branch

* [visual] Update the MaterialComponents NuGet

* [visual] Rework the theming/customization of Material controls on iOS

* [visual] fix the places where the user colors were being changed

* [visual] Improve the ColorStateList management for Android

* [visual] Re-implemented the Android ProgressBar as a fast, material renderer

* Material Entry

* [visual] Add Android ActivityIndicator

* filter out material layouts for 8.1

* remove folder

* fix __ANDROID_28__

* MaterialContextThemeWrapper

* [visual] remove the `IFrameController` interface

* [visual] reverting the changes to the Frame layout

* [visual] reverting whitespace

* [visual] make sure to raise both property changed

* formatting changes

* fixing colors on android to match with ios themes

* Update Xamarin.Forms.Platform.Android/Material/MaterialButtonRenderer.cs

Co-Authored-By: mattleibow <mattleibow@live.com>

* fix sizing of entry with infinite width size request

* update to release 28 of support

* Update Xamarin.Forms.Platform.Android/Resources/values/styles.xml

Co-Authored-By: PureWeen <shane94@hotmail.com>

* Update Xamarin.Forms.Platform.Android/Resources/values/styles.xml

Co-Authored-By: PureWeen <shane94@hotmail.com>

* PR Comment changes

* added case in GTK listviewrendered for change of SelectedItem property (#4757)

* [Android] Ensure the page background can be un-set (#4916)

* [Android] If drawable doesn't exist don't dispose of it (#4904)

* [iOS] CollectionView EmptyView (#4870)

* Implement EmptyView for iOS

* Allow for changes to EmptyView on iOS; rename confusing variables;

* Fix incorrect bug description

* Only post DisableTimer to the queue if it's not on the UI thread (#4866)

* hide obsolete API from editor (#4938)

- fixes #4772

* [UITests] Disable test #1931 on iOS12 for now

* [Android] Fix for ListViewRenderer causing ObjectDisposedException (#4931)

* [Android] Fix for ListViewRenderer causing ObjectDisposedException

* Probably cleaner to use _refresh for IsDisposed check

* [Enhancement] Entry: Read-only Entry and Editor (#1972)

- fixes #1678
- fixes #4834

* InputView BindableProperty IsReadOnly

* Android Editor and Entry setup

* MacOS Editor and Entry setup

* Tizen Editor and Entry setup

* UAP Editor and Entry setup

* WPF Editor and Entry setup

* iOS Editor and Entry setup

* Issue1678 - TestContentPage added

* Tests added

* Tizen Editor and Entry fix

* UI Test fix

* Android fix for Entry and Editor.

* Unit Tests fix.

* Android Renderer first try.

* MacOS Entry renderer small fix.

* UpdateEditable fix.

* Android Entry and Editor reduced number of calls to BP.

* fix TestAttributes conflicts

* Remove keyboard

* [macOS] relinquish first responder

* [Android] remove call to UpdateCursorSelection

* [UWP] fix tabs

* Map with ItemsSource and ItemTemplate (#4269) fixes #1708

* [Android] fixes Right-to-Left Hamburger icon in MasterDetailPage (#4716) fixes #2818

* [UITests] Ignore test failure on iOS9, use manual review

* [tests] UWP requires file extensions (#4945)

* [macOS] BoxView binding to BackgroundColor broken (#4958)

- fixes #4338

* fix #4788 (#4959) fixes #4788

* [tests] UWP requires file extensions (#4944)

* Auotmate test for Issue 1538

* Automate test for Issue 1557

* Automate test for Issue 1590

* Automate test for Issue 1685

* Automate test for Issue 1700

* [Android] Fix brief display of incorrect keyboard (#4384)

* Automate test for 39072

* Add Focus test category

* Add test instructions

* Use named flags value instead of magic number

* Rearrange keyboard hide/show handling when focus changes; fixes #3647

Clean up usings

Add null checks in case Controls are unloaded before the handler executes

* Update Xamarin.Forms.Platform.Android/ContextExtensions.cs

Co-Authored-By: hartez <hartez@users.noreply.github.com>

* Update Xamarin.Forms.Platform.Android/ViewRenderer.cs

Co-Authored-By: hartez <hartez@users.noreply.github.com>

* Fix bug where programmatic focus of SearchView does not display keyboard;
Add test for programmatic focus of SearchBar, Entry, Editor;

* Prevent object disposed exception if control is disposed before posted ShowKeyboard is run

* Changes that VS Mac and Dev16 automatically make when you open SLN (#4969)

* vsmac changes these when you open it

* dev 16 changes

* [iOS] Fix unsubscribing the `PropertyChanged` event of the ViewCell (#4728)

* [Controls] Add repo for comment related with #4186

* [iOS] Fix unsubscribing PropertyChanged when disposing ViewTableCell

* [Controls] Fix test

* Disable suggestions for all Pickers (#4824) fixes #4629

* Disable suggestions for all Pickers

* Removed redundant disabling of spellcheck

* fix merge

* fix merge

* [iOS, Android] Implement Snap alignment for CollectionView (#4414)

* Implement snap alignment for iOS CollectionView

* Add missing End/MandatorySingle implementation for Android

* Implement MandatorySingle snapping on iOS

* Fix issues with Android MandatorySingle skipping items;

* Fix rebase issue

* [Build] Fix method accessibility

* [ios] clear perfect value add ui test (#4968)

- fixes #4957

* [UITests] Fix #1685 UITest

* Add instructions to test 33450

fixes #2246

* Null/disposed check for spannableString to fix ObjectDisposedException. (#4878) Fixes #4864

* [UITest] Add Preserve to issue #1931 uitest

* [C] Obsolete Vec2 (#4980)

* [Shell] fixes navigate to a relative URI (#4977)

* [UITests] Fix #1685 UITest

* [Android] set ClipBounds to use ViewCompat.SetClipBounds (#4954) fixes #4789

* [UWP] Fix ScrollViewer Horizontal Scroll Bar Visibility when set before control load (#3195) fixes #3193

* Fix 3193

* Update to restore default behavior

* Fix 3193

* Update to restore default behavior

* Spelling Fix

* Add preserve attr to 1326,1400

* Remove Unused Types (#4948)

* Remove NavigationMenu & Renderers
 - Never completed and there is the new CollectionView
 - Only (partially) implemented on iOS/Android

* Removing ToolbarButton and related types
 - `ToolbarButton`, `ToolbarImageButton`, `IToolbarButton`
 - this appears not to be used at all
 - was part of `ToolbarRenderer` in the old Duplo repo, which has since been removed

* Update Xamarin.Forms.Platform.cs

* Implement CollectionView item replace on iOS (#4865)

* .create-nuget.bat + maps (#4952)

* [UWP] Implementation of Switch.OnColor (#4883)

* Implemented Switch.OnColor on UWP

* Processed first feedback

* Removed hardcoded opacity

* Update Xamarin.Forms.Platform.UAP/SwitchRenderer.cs

Co-Authored-By: jfversluis <github@geraldversluis.nl>

* Update Xamarin.Forms.Platform.UAP/SwitchRenderer.cs

Co-Authored-By: jfversluis <github@geraldversluis.nl>

* [C] add null check for FlexLayout.OnPropChanged (#5012)

We had null checks in 3 places, not the fourth one. and that case was
hit by #5001.

- fixes #5001

* Changed Span default binding to OneWay (#4850)

* Fixed bug where switch in a `TableView` would disappear on UWP. The method for setting the default color was only called when it was in a ListView. Also renamed the method to be more clear. (#4912)

* [UWP] fixes crashing ActivityIndicator with COMException (#4988)

fixes #4982

* [UWP] Fixes IsTabStop property in Layouts (#4703)

* [UWP] the ScrollView does not gain focus

* address comments

fixes #4653

* Add Serializable on exception types (#4690)

* Added Serializable on exception types. See #4685

* Make exception types public. See #4685

* Added default-recommended constructors to exception classes. See #4685

* Make exception types compatible with .net standard 1.0 See 4685

* Call base in xaml parse exception. See #4685

* Merged XamlParseException #4685 related changes with chanes of #4582

* [UWP] Fixes hide DisplayActionSheet behind the dialog box (#3163)

* [Build] Fix provisioning

* [Build] Update build def

* [Build] Update variable for keychain pass

* Remove unnecessary search for root (#5036)

* [Android] Tests for multiple item collection changes in CollectionView (#4869)

* Add multi-item removal test; handle multi-item removal scenarios on Android;

* Add test harness for adding multiple items to CollectionView at once

* Add test harness for multi-item move/replace; handle Android multi-item move;
Fix bug when replacing differently-sized item sets on Android;

* Add test harness for INotifyCollectionChanged Reset

* Performance improvements and clearer test code

* Remove private modifier

* Fix bug where updating items sources changed source types

* Remove private modifier

* Make index checks clearer

* Remove private modifier

* Remove private modifier

* Move code into if clause

* Use local variable

* Better indication of how to use collection modification tests

* Include end index in items moved

* Make update range include items between source and destination indexes

* Remove commented code

* [Android] Fixes keyboard navigation in custom view (#4612)

* [iOS] CollectionView single selection (#4985)

* Working single selection on iOS

* Fix rebase errors

* Make ItemsLayout a constructor parameter for the Delegator

* Make common VSM states public consts

* Make file and type name match

* Simplify method we'll be completely rewriting while implementing the next feature

* VS didn't save project file changes

* Update submodule

* [iOS] Move Material iOS components to a separate nuget (#5026)

* [ios] extract ios material out to its own project

* [core] fix platform messaging

* add material to other test projects

* update MaterialComponents on all test projects

* remove material from platform

* yml updates

* nuspec

* add iOS description

* language

* add dummy file so package installs into netstandard/android

* Add Target Framework checks

* [Android] fixes issue content set after an await is not visible (#4861)

* [Android] fixes issue content set after an await is not visible

* [Android] refactoring. Fixes frame inside frame does not resize after visibility changed.

* - add on-screen description to 1332 test

* - add 1760 uitest uses StackLayout

* fix autotest

* [Enhancement][Core] ListView should report index of item on all events (#4431)

* Update from origin (#8)

* [C] VisibilityConverter Trims input (#3581)

For CSS purposes, the VisibilityConverter was added, and actually
replaced the `Boolean.Parse(str)` call for parsing Visibility.
`Boolean.Parse()` trims input, and the converter was not, so this was a
regression.
This changes Trim() the input, to be fully backward compatible.

- fixes #3554

* Ensure ConstructorCountId and TimeId elements are available before querying them (#3588)

* For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)

This would allow previewer/designer/reloader to determine the source of a
stylesheet and refresh its content when appropriate.

* Revert "For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)"

This reverts commit f66a72de5b475a6a8387a80e418997b38dc40d4c.

* Fix NRE; Ret 0 if Text null (#3594) fixes #3579

* [UWP, WPF] Fixes rendering of the main page (#2896) fixes #2704

* [Core] Ignore Shamehat target when running DesignTimeBuild (#3605)

* [XamlC] Fix binding compilation fo value types (#3551)

properly load valuetype arguments of generated setters, using ldarg,
instead of ldarga.

- fixes #3539

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

* [Android] Fix Label LineHeight (#3452)

* fix line height android

* Make UAP respect initial LineHeight

* update .create-nuget.bat (#3638)

* Add Null Check to GetRenderer (#3575)

- fix #3563

* Fix 3562 Null Reference Exception (#3576)

- fixes #3562

* Fix 3564 Null Reference Exception (#3578)

- fixes #3564

* [iOS] AutomationProperty support for cells (#3313) fixes #3296

* [iOS] AutomationProperty support for cells

* Add test case to AutomationProperties gallery

* [UWP] Fix crash app when create navigation/tabbed page without children pages fixes #3188 (#3514)

* [Android] Use height when determining ScaledScreenSize; fixes #3609 (#3641)

* [C] Set binding context on Span Gestures (#3639)

* [Core] Set binding context on Span Gestures
* [Core] Simplify loop setting child binding context

- fixes #3524

* Update PULL_REQUEST_TEMPLATE.md

* [Android] remove deprecated AndroidUseLatestPlatformSdk (#3672)

* [iOS] iPad ActionSheet should always have a Cancel method (#3636)

* Add repro for #3049

* [iOS] iPad ActionSheet should always have a Cancel method

fixes #3049

* [Android] fixes #3675 - set  initial ScrollView Scroll values when RTL (#3676)

* [Android] API check for Shadow properties on Button (#3617) fixes #2702

* [Android] API check for Shadow properties on Button

* Fix swapped shadow values

* [iOS] fixes #3525 - add epsilon for float compare (#3654)

* [iOS] fixes #3525 - add epsilon for float compare and make region immutable

* [ControlGallery] spread out spans to account for click slop

* [ControlGallery] - adjust span slightly for android test

* [Core] remove private

* Fix text wrapping (#3671) fixes #3634

* [GTK] Fix navigation bar visibility updates (#3651)

* Fix partially  #3585 (#3592)

* Make webkit-sharp.dll.config cross-platform

* Update webkit-sharp.dll with missing signals bindings

see: https://github.com/ylatuya/webkit-sharp/tree/fluendo

* [iOS, UWP] fixes #2894 - Gestures collection changes weren't correctly propagating (#3643)

* [iOS, UWP] fixes #2894 - Gestures weren't wiring up to spans in all cases

* [Core] remove ChildGestureRecognizers when spans get removed

* [iOS] removed incorrect return from null

* Fixes #3663 (#3684)

* Fix ScrollView Padding issue (#3685)

* [WPF] Memory leak when you pop a TabbedPage (#3372) fixes #3267

* Fix [WPF] Memory leak when you pop a TabbedPage

* Update ViewRenderer.cs

* Update ViewRenderer.cs

* [Android,iOS,UWP] Allow Entry CursorPosition/SelectionLength to be set in ctor (#3402) fixes #3343 fixes #3633

* Add repro for #3343 + unit tests

* [Core] Disallow negative values for CursorPosition/SelectionLength

* [All] CursorPosition/SelectionLength can bindin ctor & clear value

fixes #3343

* typo

* cleanup

* [iOS] Cursor snaps to end

* try/catch

* [CSS] add more properties (#3466)

map new CSS properties:
- `color` on `IColorElement` (`ActivityIndicator`, `BoxView`),
  `ProgressBar` and `Switch`
- `row-gap` and `column-gap` on `Grid`
- `transform` and `transform-origin` on `VisualElement`
- `vertical-align` on `Label`

add new XF-specific CSS properties
- `-xf-placeholder` and `-xf-placeholder-color` on `Editor`, `Entry`,
  `SearchBar`
- `-xf-max-length` on `InputView` (`Editor` and `Entry`)
- `-xf-bar-background-color` and `-xf-bar-text-color` on
  `NavigationPage` and `TabbedPage`
- `-xf-orientation` on `ScrollView` and `StackLayout`
- `-xf-horizontal-scroll-bar-visibility` and
  `-xf-vertical-scroll-bar-visibility` on `ScrollView`
- `-xf-min-track-color`, `-xf-max-track-color` and `("-xf-thumb-color`
  on `Slider`
- `-xf-spacing` on `StackLayout`

This PR replaces and closes #3276

- fixes #2891

* [iOS] Specify a default size for UISearchBar width if needed (#3635) fixes #3413 fixes #2139

* [Controls] Add reproduction and test case for issue #3413

* [iOS] Don't use max value for iOS UISearchbar breaks on iOS 11.3

* [iOS] Force width value so we can renderer UISearchBar on iOS10 with infinite width

* [Controls] Fix spelling and add Manual Review to the test of #3413

* [iOS] Simplify code for UISearchBar width

* [iOS] Return always some width from measure the UISearchBar on IOS

* [Controls] Add reproduction case for issue #2139

* [UWP] Fixed double set margins in Layouts (#3570) fixes #3398 fixes #3616

* [Android] Support multiple clipping settings in single layout (#3559)

* Repro

* Fix for API 18+

*  [iOS] Unsubscribe CellPropertyChanged when SwitchCellRenderer is disposed (#3518)

* [Controls] Add repo of issue #3408

* [iOS] Unsubscribe CellPropertyChanged when cell is disposed

* [Controls] Add issue to project

* [iOS] Introduce CellPropertyChange to CellTableViewCell to used by all other cell renderers

* [Controls] Simplify Issue

* [iOS] Remove PropertyChanged that was not used

* [Controls] add check for null binding on template, add notes about issues

* [Controls] added reference to Android crash

* [iOS]Use existing PropertyChanged on ViewCelRenderer

* [iOS] Keep the existing override so we don't break users

* Update TextCellRenderer.cs

* update submodule

* 24H Mode (#3701)

The 24h mode for the pickerdialog was not working.

Version 3.1 was working fine. 

Here is an updated file.

* [UWP] uncomment tests that are now passing for 3188 (#3723)

* [UITest] Update Xamarin.UITest nuget package (#3632)

* [UITests] Update Xamarin.UITest 2.2.5

* [UITests] Try fix Toolbaritems

* [UITest] Update to 2.2.5-1606

* [UITests] Small Fixes and workarounds to make uitest happy

* [UITests ] Add delay to 1733 for API28

* [Android] Revert bad merge (#3746)

fixes #3705

* [Android, iOS] Fixes layout compression causes (#3698) fixes #3624

* [Android, iOS] Fixes layout compression causes

* [iOS] improve UpdateNewElement method

* Fix build error hopefully

* [UWP] Fixes CollectionChanged events in ListView (#3323)

* fixes #3273

* [UWP] Fixes CollectionChanged events in ListView

* a wrapped collection is used only if the SourceItem is not ObservableCollection

* improve uitest

* fixed NRE in empty ListView

* added a sortable custom renderer for UItest

* minor refactoring

* fixed reset of not wrapped collections

* addressing comments

* [UWP] remove WinRT hack

* [UWP] add missing using and cleanup additional resources

* [Android] Update Forms to remove API28 deprecated API (#3653) fixes #2128 fixes #3629

* [Build] Update provisioning

* [Controls] Ignore deprecated  Android API usage

* [Android] Remove use of obsolete color usage

* [Android] Remove app fragment usage

* [android] Rollback changes to EntryCellRenderer

* [Android] Better way to get the default color for the label text

* [Android] Obsolete message for ContentPage.CreateFragment()

* [ControlGallery] - create bitmap from Drawable to use for pixel location

* [Android] Use textcolor resource

* Update submodule

* Fix tests (#3771)

* [ControlGallery] Wait for element and add timing to tests

* [iOS] Fix NRE on RenderPool

* Add TabStop/TabIndex (#2795)

* [Core, UWP, Android] support TabStop/TabIndex

* removing linq

* add iOS / MacOS implementation

* add WPF implementation
fixes UWP implementation

* - addressing comments
- improve test
- optimizations
- added previous tab direction in same tab group

* addressing comments

* [Android] support tabstop for pickers

* - moving shared code to a static class
- removed reflection

* ITabStop -> changed to internal, renamed, added in to fastRenderers

* Update ITabStop to be public

* Fix : Binding Icon in ToolbarItem in TabbedPage doesn't refresh (#3761) fixes #3756

* [iOS] Fix NRE on ContextCell (#3714) fixes #3275

* [Controls] Add repo for issue #3275

* [iOS] Fix NRE when no gestures exist on table

* [iOS] Null check outside loop

* [iOS]Make sure to dispose/unhook when we are removed from UITableView.

* Update submodule

* [iOS] Don't double dispose ContextActionCell

* WPF - Fix Width and Height measurement when GetDesiredSize (#3750)

* WPF - Reset Width and Height when GetDesiredSize

* Some formatting changes

* Add APP directive

* [WPF]Fix build

* [Android Maps] Make markers available to subclasses (#3751)

* Make markers available to subclasses

* Fix build

* Use Find instead of FirstOrDefault

* [UITests] wait for element before querying for it (#3791)

* [UITests] wait for element before querying for it

* [Controls] generalize and better represent intended behavior

* WPF - Fix Local store not persistant when restarting App (#3752)

-fixes #3541
* WPF - Fix Local store not persistant when restarting App
* Add UITest
* [Controls] Add automated UI Test

* [UITests] Isolate test 3408

* [UITest] Update Xamarin UITest packages

* [UWP] implement Replace without reloading ListView (#3792)

-fixes #3788
* [UWP] implement Replace without reloading ListView
* [UWP] extract bindingcontext of new item for replace

* [iOS] Use UIApperance default color for UISwitch (#3819)

* [Controls] Set default color of UISwitch to Red

* [iOS] Use default color from Apperance API

* [UITests] replace awaits with more reliable WaitForElement (#3835)

* [Core] Propagate BindingContext changes to TitleView (#3823)

* [Core] Propagate BindingContext changes to TitleView

* [Tests] Move UI test to Core Unit Test

* [A] do not draw gradient for empty CornerRadius (#3786)

Drawing CornerRadius (introduce by #1998) when the CornerRadii are
actually 0 causes scaling artifacts on API < 25.

This fixes the regression when no CornerRadius is set. Expect blurry
border scaling with CornerRadius not empty and API < 25

- fixes #3781

* [Android] Fix WebView.Navigating event, make WebViewClient inheritable (#3780)

* Extracted WebViewRenderer.WebClient to FormsWebViewClient, moved SendNavigating call from ShouldOverrideUrlLoading to OnPageStarted

* Changed _webViewClient and GetWebViewClient() method to return base class

* Changed public things to protected internal

* Fix spaces to tabs indentation to match the coding style (#3745)

* [Build] Fix merge

* Fix #3097 swipe gesture not being handled in VisualElementTracker. (#3098) Fixes #3097

* Update from origin (#9)

* [C] VisibilityConverter Trims input (#3581)

For CSS purposes, the VisibilityConverter was added, and actually
replaced the `Boolean.Parse(str)` call for parsing Visibility.
`Boolean.Parse()` trims input, and the converter was not, so this was a
regression.
This changes Trim() the input, to be fully backward compatible.

- fixes #3554

* Ensure ConstructorCountId and TimeId elements are available before querying them (#3588)

* For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)

This would allow previewer/designer/reloader to determine the source of a
stylesheet and refresh its content when appropriate.

* Revert "For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)"

This reverts commit f66a72de5b475a6a8387a80e418997b38dc40d4c.

* Fix NRE; Ret 0 if Text null (#3594) fixes #3579

* [UWP, WPF] Fixes rendering of the main page (#2896) fixes #2704

* [Core] Ignore Shamehat target when running DesignTimeBuild (#3605)

* [XamlC] Fix binding compilation fo value types (#3551)

properly load valuetype arguments of generated setters, using ldarg,
instead of ldarga.

- fixes #3539

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

* [Android] Fix Label LineHeight (#3452)

* fix line height android

* Make UAP respect initial LineHeight

* update .create-nuget.bat (#3638)

* Add Null Check to GetRenderer (#3575)

- fix #3563

* Fix 3562 Null Reference Exception (#3576)

- fixes #3562

* Fix 3564 Null Reference Exception (#3578)

- fixes #3564

* [iOS] AutomationProperty support for cells (#3313) fixes #3296

* [iOS] AutomationProperty support for cells

* Add test case to AutomationProperties gallery

* [UWP] Fix crash app when create navigation/tabbed page without children pages fixes #3188 (#3514)

* [Android] Use height when determining ScaledScreenSize; fixes #3609 (#3641)

* [C] Set binding context on Span Gestures (#3639)

* [Core] Set binding context on Span Gestures
* [Core] Simplify loop setting child binding context

- fixes #3524

* Update PULL_REQUEST_TEMPLATE.md

* [Android] remove deprecated AndroidUseLatestPlatformSdk (#3672)

* [iOS] iPad ActionSheet should always have a Cancel method (#3636)

* Add repro for #3049

* [iOS] iPad ActionSheet should always have a Cancel method

fixes #3049

* [Android] fixes #3675 - set  initial ScrollView Scroll values when RTL (#3676)

* [Android] API check for Shadow properties on Button (#3617) fixes #2702

* [Android] API check for Shadow properties on Button

* Fix swapped shadow values

* [iOS] fixes #3525 - add epsilon for float compare (#3654)

* [iOS] fixes #3525 - add epsilon for float compare and make region immutable

* [ControlGallery] spread out spans to account for click slop

* [ControlGallery] - adjust span slightly for android test

* [Core] remove private

* Fix text wrapping (#3671) fixes #3634

* [GTK] Fix navigation bar visibility updates (#3651)

* Fix partially  #3585 (#3592)

* Make webkit-sharp.dll.config cross-platform

* Update webkit-sharp.dll with missing signals bindings

see: https://github.com/ylatuya/webkit-sharp/tree/fluendo

* [iOS, UWP] fixes #2894 - Gestures collection changes weren't correctly propagating (#3643)

* [iOS, UWP] fixes #2894 - Gestures weren't wiring up to spans in all cases

* [Core] remove ChildGestureRecognizers when spans get removed

* [iOS] removed incorrect return from null

* Fixes #3663 (#3684)

* Fix ScrollView Padding issue (#3685)

* [WPF] Memory leak when you pop a TabbedPage (#3372) fixes #3267

* Fix [WPF] Memory leak when you pop a TabbedPage

* Update ViewRenderer.cs

* Update ViewRenderer.cs

* [Android,iOS,UWP] Allow Entry CursorPosition/SelectionLength to be set in ctor (#3402) fixes #3343 fixes #3633

* Add repro for #3343 + unit tests

* [Core] Disallow negative values for CursorPosition/SelectionLength

* [All] CursorPosition/SelectionLength can bindin ctor & clear value

fixes #3343

* typo

* cleanup

* [iOS] Cursor snaps to end

* try/catch

* [CSS] add more properties (#3466)

map new CSS properties:
- `color` on `IColorElement` (`ActivityIndicator`, `BoxView`),
  `ProgressBar` and `Switch`
- `row-gap` and `column-gap` on `Grid`
- `transform` and `transform-origin` on `VisualElement`
- `vertical-align` on `Label`

add new XF-specific CSS properties
- `-xf-placeholder` and `-xf-placeholder-color` on `Editor`, `Entry`,
  `SearchBar`
- `-xf-max-length` on `InputView` (`Editor` and `Entry`)
- `-xf-bar-background-color` and `-xf-bar-text-color` on
  `NavigationPage` and `TabbedPage`
- `-xf-orientation` on `ScrollView` and `StackLayout`
- `-xf-horizontal-scroll-bar-visibility` and
  `-xf-vertical-scroll-bar-visibility` on `ScrollView`
- `-xf-min-track-color`, `-xf-max-track-color` and `("-xf-thumb-color`
  on `Slider`
- `-xf-spacing` on `StackLayout`

This PR replaces and closes #3276

- fixes #2891

* [iOS] Specify a default size for UISearchBar width if needed (#3635) fixes #3413 fixes #2139

* [Controls] Add reproduction and test case for issue #3413

* [iOS] Don't use max value for iOS UISearchbar breaks on iOS 11.3

* [iOS] Force width value so we can renderer UISearchBar on iOS10 with infinite width

* [Controls] Fix spelling and add Manual Review to the test of #3413

* [iOS] Simplify code for UISearchBar width

* [iOS] Return always some width from measure the UISearchBar on IOS

* [Controls] Add reproduction case for issue #2139

* [UWP] Fixed double set margins in Layouts (#3570) fixes #3398 fixes #3616

* [Android] Support multiple clipping settings in single layout (#3559)

* Repro

* Fix for API 18+

*  [iOS] Unsubscribe CellPropertyChanged when SwitchCellRenderer is disposed (#3518)

* [Controls] Add repo of issue #3408

* [iOS] Unsubscribe CellPropertyChanged when cell is disposed

* [Controls] Add issue to project

* [iOS] Introduce CellPropertyChange to CellTableViewCell to used by all other cell renderers

* [Controls] Simplify Issue

* [iOS] Remove PropertyChanged that was not used

* [Controls] add check for null binding on template, add notes about issues

* [Controls] added reference to Android crash

* [iOS]Use existing PropertyChanged on ViewCelRenderer

* [iOS] Keep the existing override so we don't break users

* Update TextCellRenderer.cs

* update submodule

* 24H Mode (#3701)

The 24h mode for the pickerdialog was not working.

Version 3.1 was working fine. 

Here is an updated file.

* [UWP] uncomment tests that are now passing for 3188 (#3723)

* [UITest] Update Xamarin.UITest nuget package (#3632)

* [UITests] Update Xamarin.UITest 2.2.5

* [UITests] Try fix Toolbaritems

* [UITest] Update to 2.2.5-1606

* [UITests] Small Fixes and workarounds to make uitest happy

* [UITests ] Add delay to 1733 for API28

* [Android] Revert bad merge (#3746)

fixes #3705

* [Android, iOS] Fixes layout compression causes (#3698) fixes #3624

* [Android, iOS] Fixes layout compression causes

* [iOS] improve UpdateNewElement method

* Fix build error hopefully

* [UWP] Fixes CollectionChanged events in ListView (#3323)

* fixes #3273

* [UWP] Fixes CollectionChanged events in ListView

* a wrapped collection is used only if the SourceItem is not ObservableCollection

* improve uitest

* fixed NRE in empty ListView

* added a sortable custom renderer for UItest

* minor refactoring

* fixed reset of not wrapped collections

* addressing comments

* [UWP] remove WinRT hack

* [UWP] add missing using and cleanup additional resources

* [Android] Update Forms to remove API28 deprecated API (#3653) fixes #2128 fixes #3629

* [Build] Update provisioning

* [Controls] Ignore deprecated  Android API usage

* [Android] Remove use of obsolete color usage

* [Android] Remove app fragment usage

* [android] Rollback changes to EntryCellRenderer

* [Android] Better way to get the default color for the label text

* [Android] Obsolete message for ContentPage.CreateFragment()

* [ControlGallery] - create bitmap from Drawable to use for pixel location

* [Android] Use textcolor resource

* Update submodule

* Fix tests (#3771)

* [ControlGallery] Wait for element and add timing to tests

* [iOS] Fix NRE on RenderPool

* Add TabStop/TabIndex (#2795)

* [Core, UWP, Android] support TabStop/TabIndex

* removing linq

* add iOS / MacOS implementation

* add WPF implementation
fixes UWP implementation

* - addressing comments
- improve test
- optimizations
- added previous tab direction in same tab group

* addressing comments

* [Android] support tabstop for pickers

* - moving shared code to a static class
- removed reflection

* ITabStop -> changed to internal, renamed, added in to fastRenderers

* Update ITabStop to be public

* Fix : Binding Icon in ToolbarItem in TabbedPage doesn't refresh (#3761) fixes #3756

* [iOS] Fix NRE on ContextCell (#3714) fixes #3275

* [Controls] Add repo for issue #3275

* [iOS] Fix NRE when no gestures exist on table

* [iOS] Null check outside loop

* [iOS]Make sure to dispose/unhook when we are removed from UITableView.

* Update submodule

* [iOS] Don't double dispose ContextActionCell

* WPF - Fix Width and Height measurement when GetDesiredSize (#3750)

* WPF - Reset Width and Height when GetDesiredSize

* Some formatting changes

* Add APP directive

* [WPF]Fix build

* [Android Maps] Make markers available to subclasses (#3751)

* Make markers available to subclasses

* Fix build

* Use Find instead of FirstOrDefault

* [UITests] wait for element before querying for it (#3791)

* [UITests] wait for element before querying for it

* [Controls] generalize and better represent intended behavior

* WPF - Fix Local store not persistant when restarting App (#3752)

-fixes #3541
* WPF - Fix Local store not persistant when restarting App
* Add UITest
* [Controls] Add automated UI Test

* [UITests] Isolate test 3408

* [UITest] Update Xamarin UITest packages

* [UWP] implement Replace without reloading ListView (#3792)

-fixes #3788
* [UWP] implement Replace without reloading ListView
* [UWP] extract bindingcontext of new item for replace

* [iOS] Use UIApperance default color for UISwitch (#3819)

* [Controls] Set default color of UISwitch to Red

* [iOS] Use default color from Apperance API

* [UITests] replace awaits with more reliable WaitForElement (#3835)

* [Core] Propagate BindingContext changes to TitleView (#3823)

* [Core] Propagate BindingContext changes to TitleView

* [Tests] Move UI test to Core Unit Test

* [A] do not draw gradient for empty CornerRadius (#3786)

Drawing CornerRadius (introduce by #1998) when the CornerRadii are
actually 0 causes scaling artifacts on API < 25.

This fixes the regression when no CornerRadius is set. Expect blurry
border scaling with CornerRadius not empty and API < 25

- fixes #3781

* [Android] Fix WebView.Navigating event, make WebViewClient inheritable (#3780)

* Extracted WebViewRenderer.WebClient to FormsWebViewClient, moved SendNavigating call from ShouldOverrideUrlLoading to OnPageStarted

* Changed _webViewClient and GetWebViewClient() method to return base class

* Changed public things to protected internal

* Fix spaces to tabs indentation to match the coding style (#3745)

* [Build] Fix merge

* Fix #3097 swipe gesture not being handled in VisualElementTracker. (#3098) Fixes #3097

* Ensure that the ListViewAdapter is no longer being used by the ListVi… (#3848) fixes #3603

* Ensure that the ListViewAdapter is no longer being used by the ListView before disposing it

* Remove `RemoveAllViews` from `Dispose`

* Update from origin (#11)

* [Android] Enable MaxLines and TextDecorations on fast renderers (#3878)

* enable MaxLines on fast renderers

* added text decoration functionality

* include test in project

* [Enhancement] Create a bindable property for AutomationId (#3879)

* create a bindable property for automationId

* make ClassId and AutomationId properties of Element

* add comments to .create-nuget.bat

* added preserve attribute (#3876) fixes #2306

* [Core] Moving Command's CanExecuteChanged to use the WeakEventManager (#3852) fixes #3656

* [Core]  Use WeakEventManager on CanExecuteChanged

* [Core]Add unit test for remove event handler with WeakEventManager

* [Core] Fix remove the correct handler

* [CSS] accept 'oblique' for 'font-style' (#3815) fixes #3808

- fixes #3808

* Prevent double time/date picker dialogs on Android when setting focus (#3899)

* Prevent double time/date picker dialogs on Android when setting focus (#3899)

* [Controls] Fix merge remove duplciated issue 3788

* WPF - Fix Unable to intercept back button (#3762)

* WPF - Fix Unable to intercept back button

* WPF - Improve OnBackButtonPressed

-fixes #3689

* Fix Bugzilla38723 (#3812)

fixes #2302

* [C] fix css mapping (#3919)

* [Android] Fix UI test 1851 (#3882)

* add preserve attribute

- fixes #2255


* added using System

* fixed spacing

* use TestContentPage

* fixed scope issues

* [Android] Make native Android Platforms accessible via Context (#3364)

* Make native Android Platforms accessible via Context

* Add null checks

* Added a disabled look to Android Toolbar Item images. (#3773)

* Added a disabled look to Android Toolbar Item images.

* Update NavigationPageRenderer.cs

Refactored DisabledToolbarAlpha into a constant as requested.

* [UWP] fixes tabstops of TimePicker, DatePiker. SearchBar, Stepper (#3896)

* [UWP] fixes tabstops of TimePicker, DatePiker. SearchBar, Stepper

* common code moved to VisualElementRenderer

* rename interface

fixes #3872

* [UWP] For the Slider default value of step is set to 1000 to match Android. (#3141)

* WPF - Ctrl+A does not select all in WPF password Entry (#3908)

* [WPF] Fix Height of items not consistent (#3925) fixes #3913

* Fix StartTimer and Ticker for UWP (#3911)

- fixes #1937

* Apply font fix for button and span (#3907)

* added instructions (#3891)

- fixes #2361

* [Android] Convert corner radius with correct pixel density (#3893) fixes #3884

* [Controls] Add Issue #3884 repo

* [Android] Convert  corner radius with correct pixel density fixes #3884

* [Controls] Update test message

* WPF - Fix TimePicker with short time pattern shows verbose time (#3924)

* Fix UI test 39378 (#3928)

fixes #2305

* Update ClipBounds when View bounds changes (#3909)

fixes #3717

* [C] catch AmbiguousMatchException on GetProps (#3915)

- fixes #3870

* Automate UI test B45702 (#3914) fixes #2389

* automate 45702

* fix indentation

* Fix bugzilla60787 (#3933)

* [Android]Fix for frame renderer's bug (bugzilla 60787).

#3902
https://bugzilla.xamarin.com/show_bug.cgi?id=60787
https://github.com/xamarin/Xamarin.Forms/issues/3902

* Add control to repro

* PR fix

* Build fix

* Build fix for Xamarin.Forms.Core.Android.UITests

* added instructions (#3926)

* [UWP] fixes flyout menu on cell item (#3682)

* Fix UI test B41424 needs instructions (#3942)

* Add manual test steps and checks for ui test

* step4Label text fix

* [iOS] fix full width issues for TitleView (#3939)

* [iOS] fix full width issues for TitleView

* [iOS] simplified iOS 10

fixes #3881
fixes #3679

* Changes in TableView GTK Control to allow refresh the content (#3941)

- fixes #3725

* Only set the Page Padding via SafeAreaInset on iOS (#3811)

* only set the Page Padding via SafeAreaInset on iOS
-fixes #3809

* [Controls] add waits for clicks in ui tests

* [Controls] remove wrong category

* [iOS] Move inset logic down into ios renderer

* Added logic to allow set the ListView SelectedIndex (#3948) fixes #3766

* Automate UI test 35127 (#3927)

* automate test
- fixes #2262
* indentation fix
* indentation fix 2

* Make GetIconDrawable virtual (#3967)

By making GetIconDrawable virtual for the Android TabbedPageRenderer it allows for the icon to come from other sources (like glyph fonts). This will work for both top and bottom tabs.

* [GTK] Fix visibility of hidden pages in the stack (#3904)

When navigating to a new page, we should hide the previous
content and show the new one so that the previous page
renderer is not taken in account for redraws and resizes

* [Android] If MaxLines is not explicitly set, let LineBreakMode handle it (#3936)

* [Android] If MaxLines is not explicitly set, all LineBreakMode to set it;
if MaxLines is explicitly set, MaxLines setting wins. Use a more reasonable
default for native MaxLines when handling it via LineBreakMode. Consolidate
MaxLines handling code between legacy and fast renderers. Remove unnecessary
setting of SingleLine (which only applies to input).
- fixes #3772

* Remove unnecessary maxLines setting

* Handle resetting MaxLines to -1/default

* Reinstate workaround for array bounds exception in older Android APIs

* Fix UI test B43941 (#3889)

* Add all platforms and remove non-deterministic behaviour

* Return back correct check of counter

* Endline fix

* remove childPages list

* [XamlC] avoid multiple subscription (#3969)

Avoid multiple subscription to PropertyChanged on TypedBindings

- fixes #3613
- fixes #3650

* Fix typos (mainly 'toogle' becoming 'toggle') (#3975)

* Fix Issue2597 Needs UI Test (#3966)

* Add test for issue 2597

* Fix space

* Add CODEOWNERS

* Fix PanGesture inside scroll issue https://github.com/xamarin/Xamarin… (#3842)

* Fix PanGesture inside scroll issue https://github.com/xamarin/Xamarin.Forms/issues/3840
- fixes #3840
* fixe formatting

* [UITest] added UI Test

* [Controls] adjusted UI Test button positions

* [UITEST]  simplify UI tests

* [C] add CSS mapping for max-lines (#3991)

- fixes #3982

* [iOS] Add ability to turn off updates to native controls from another thread (#3774)

* [iOS] Add ability to turn off updates to native controls from another thread

* Flip evaluation order

fixes #1755

* Fixed NotImplementedException refreshing items in WPF ListView (#3962)

* Fixed NotImplementedException refreshing items in WPF ListView

* Small changes in ListView events subscription

fixes #3309
fixes #3737
fixes #3648

* [GTK] Fix transparent background in visual elements (#3744)

* Fix ActivityIndicator.IsRunning state (#4007)

* add pdb for uap into nuget (#4015)

* update GitInfo

* [XamlC] don't compile bindings with Source (#3978)

Sources are usually x:reference that can't be resolved at compilation
time.

- fixes #3606

* [Xaml[C]] resolve Extensions first (#3977)

XamlLoader should first look for type with the Extension suffix. It used
to be the case, but somehow regressed.

- fixes https://github.com/xamarin/Xamarin.Forms/issues/3606#issuecomment-422377338

* [UWP] Document in the README.md the steps required to run UI Tests (#4014) fixes #3984

* [Tizen] Add TabIndex implement for Tizen renderer (#4046)

* [Tasks] multitarget the build tasks (#3895)

- fixes #2690
- closes #2706

* [UITests] Update TestCloud.Agent (#4055)

* [Tizen] Fix ProjectGuid for Forwarders (#4063)

* [Tizen] Fix ProjectGuid for Forwarders

* [Tizen] Make sure not to generate dependency file

* Correct minor typo (#4068)

* Added WebView Reload (#4013) fixes #3776

* Added WebView Reload

* WebView Reload Added Tizen suport

* [Tizen] Cleanup Code (#4080)

* fixed ios editor placeholder font (#4009)

* Prevented crash https://github.com/xamarin/Xamarin.Forms/issues/2291 (#4072)

- fixes #2291

* [Xaml] Allow OnPlat markup in Styles (#3995)

- fixes #3862

* [Xaml] fix Namescope being different than tree (#4089)

As part of #2556, the namescoping tree was assumed to be equiv to the
object tree, which is obviously wrong. This fixes it, while keeping the
old behavior as a fallback.

We might go further, but I can't come up with a reasonable scenario
failing.

- fixes #3821

* [Sample] [Android] Fixed PagesGallery.Droid build (#3999)

* fixed PagesGallery.Droid build

* Moved Xamarin.Forms.Platform.Android (Forwarders) reference to previous place

* updated project guid to lower case

* Fix typeface reset issue (#4019)

* Use ViewCompat to set and get label for view (#3996)

* Removing LineBreakMode support from WindowsResourcesProvider (#4024)

* Repro test page for 3979

* Removes LineBreakMode support from WindowsResourcesProvider as it is inconsistent with other platforms and caused issues when setting Span style to the default Device Styles

* [macOS] Fix NRE on Mojave when aligning the tile (#4086) fixes #3031

* [GTK] Add support for ClickGestureRecognizer (#3971)

* [GTK] Add support for ClickGestureRecognizer

* Add ClickGestureGalleryPage to test ClickGestureRecognizer

* [iOS] Label TextColor has no effect with FormattedString (#4043)

* https://github.com/xamarin/Xamarin.Forms/issues/4040 fix default font/color for formatted string

* https://github.com/xamarin/Xamarin.Forms/pull/4043 fixed naming, added test case

* Moved field and property to top

- fixes #4040

* fix build, tentatively (#4117)

* [Xaml] don't swallow exceptions from converters (#4100)

Compiled converters are invoked, by reflection, at compile time. Any
exception thrown there will be wrapped in a TargetInvocationException.
When that happens, we still want to expose the inner XamlParseException
to the user.

- fixes #4099

* housekeeping ended with https://github.com/xamarin/Xamarin.Forms/pull/3999 (#4105)

* Bump minimum Microsoft.NETCore.UniversalWindowsPlatform version to 6.0.12 (#4106)

* [Tizen] Fix Window alpha update timing (#4119)

* [UWP] fixed `MinimumDate` and `MaximumDate` properties of DatePicker (#3683) fixes #3331

* [WPF] Fixes `ControlTemplate` sizing issue (#2656)

- fixes #2642

* Remove BOM from nuspec (#4128)

* Navigation Page double Popped event Workaround (#3851) fixes #3509

* Navigation Page double Popped event Workaround

* [UITest] Add UI Test

* [Core] fix formatting

* revert formatting fix

* implemented workaround suggested by PureWeen

* removed whitespace

* moved ignorePopCall to a better location

* [Enhancements] Toolbar a11y  (#3974) fixes #1742 fixes #3795

* [Controls] Add automation id to icon

* [iOS] Add AutomationId support to MDP tooggle button

* [Android] Add support for AutomationId to ActionBarDrawerToggle and MasterDetailPage

* [IOS] Refactor and add Accessibility to ToolbarItems

* [iOS] Fix typos

* [Android] Add accessibility to ToolbarItems

* [UWP]  Refactor A11y to extensions

* [UWP]  Set Accessibility properties on ToolbarItems

* [UWP] Set accessibility to MDP button

* [ControlGallery] Add accessibility toolbaritems to gallery

* Comment test out

* [iOS] Fix NRE when Control is being disposed

* [UITests] Remove not used UITests file

* Implementation of method ForceUpdateSize for Cell on macOS (#4104)

* Implemented Cell ForceUpdateSize on macOS

* Tab Styling

* Prevent crash during setting NULL to element via interface method (#4179)

- fixes #4178
- fixes #4146

* https://github.com/xamarin/Xamarin.Forms/issues/4076 fix (#4161)

* [iOS] Rapidly clicking span (6 times at least) on UITest 3525 throws a null exception (#4109)

* https://github.com/xamarin/Xamarin.Forms/issues/3930 fix

* following convention

* [Android] Fixes AutomationProperties.Name on Button (#4094)

* [Android] Fixes AutomationProperties.Name on Button

* [Android] Fixes for Switch control

* UWP Toolbar dynamic overflow (#4022)

* Adding Windows specific ToolbarDynamicOverflowEnabled configuration

* Enabled ToolbarDynamicOverflowEnabled (pun intended) on page controls and renderers

* Issue 3988 sample

* Removed obsolete comment, cleaned up private and whitespace

* Added toolbar dynamic overflow examples for master detail page and tabbed page


- fixes #2057
- fixes #3988

* Add missing initial call to UpdateLineHeight; fixes #4136 (#4147)

* Added UI test to B45027 (#4079)

* Add UI test to B45027

* Changed execution of current UI test to Android platform

* Added iOS UI test to B45027

* Refactored UI test execution

* Fix https://github.com/xamarin/Xamarin.Forms/issues/3301 (#4164)

- fixes #3301

* [UWP] fixes entering text into SearchBar with UI Tests (#4173)

* [UWP] fixes entering text into SearchBar with UI Tests

* [UWP] ITabStopOnDescendants - fixed selection when setting focus from Selenium

* [UWP] Fix TitleView Width and MDP rendering quirks (#3987)

* [UWP] Fix TitleView Width and MDP rendering quirks

* [UWP] fix load timing for pushed pages and titleview

* [UWP] move renderer check

* [UWP] remove re-measure until 4116 fixed

- fixes #3828
- fixes #3834

* [macOS] NRE in WebViewRenderer (#4188) fixes #4001

* https://github.com/xamarin/Xamarin.Forms/issues/4001

* fixed build

* https://github.com/xamarin/Xamarin.Forms/issues/2831 fixes #2831 (#4111)

* [msbuild] use portable pdb files (#4201)

Currently, on the first build of a "Hello World" Xamarin.Forms app,
you will see this in the build log:

    ConvertDebuggingFiles
        Parameters
            Files
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\FormsViewGroup.pdb
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.pdb
        OutputItems
            _ConvertedDebuggingFiles
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\FormsViewGroup.dll
                C:\Users\myuser\.nuget\packages\xamarin.forms\3.1.0.697729\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.dll

The logging is a little weird here, but this `ConvertDebuggingFiles`
MSBuild task takes about 100ms on my machine.

What is it doing?

The Mono debugger can support two types of debugging files:
- `mdb` files
- "portable" `pdb` files

If Xamarin.Android's build finds a "non-portable" `pdb` file, we have
to run it through this task to convert to an `mdb` file... This gives
us proper stacktraces for `FormsViewGroup.dll` and
`Xamarin.Forms.Platform.Android.dll`.

You can change the type of debugging symbols in your project with the
`DebugType` setting, which has these options:
- Blank or `None`: don't generate symbols. (Although Xamarin.Android
  has funny behavior here, see:
  https://github.com/xamarin/xamarin-android/issues/2282)
- `Full` generates an `mdb` file, this is a Windows-proprietary format
  for debug builds
- `PdbOnly` generates a "non-portable" `pdb` file, a
  Windows-proprietary format for release builds
- `Portable` generates a "portable" pdb file, which is the new
  standard that works for debug and release builds. New SDK-style
  MSBuild projects use this option by default.

These values are not case sensitive, I have mostly seen them lower
case in newer projects.

So what does Xamarin.Forms need to do?

Use `<DebugType>portable</DebugType>` in any Android class library or
app project. Other platforms, this is optional, not as much benefit. I
have heard that `DebugType=portable` might cause a problem on UWP.

* Xamarin.Forms will ship "portable" `pdbs` in its NuGet package for
  `FormsViewGroup.dll` and `Xamarin.Forms.*.Android.dll`. Developers
  won't pay the 100ms on initial build.
* Initial build times for `Xamarin.Forms.sln` will be slightly better
  for development, although I didn't measure the difference here.

* [XamlC] fix the argument match check for events (#4134)

Well, it looks like the order of arguments of InheritOrImplements was
reversed... a totally fine and normal Friday so far

- fixes #4130

* Add UI Test. Add instructions. Move to correct namespace (#4170) fixes #2251

* Add uitest for 2794 (#4110) fixes #2293

* Fix PropagateEvent value properly on Cells (#4191)

* bump gitinfo

* [Core, iOS, MacOS, Android, UWP, WPF] ListView hide scroll view scroll bars (#3897) fixes #3843

* Update from origin (#8)

* [C] VisibilityConverter Trims input (#3581)

For CSS purposes, the VisibilityConverter was added, and actually
replaced the `Boolean.Parse(str)` call for parsing Visibility.
`Boolean.Parse()` trims input, and the converter was not, so this was a
regression.
This changes Trim() the input, to be fully backward compatible.

- fixes #3554

* Ensure ConstructorCountId and TimeId elements are available before querying them (#3588)

* For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)

This would allow previewer/designer/reloader to determine the source of a
stylesheet and refresh its content when appropriate.

* Revert "For consistency with ResourceDictionary, expose the Source for a StyleSheet (#2589)"

This reverts commit f66a72de5b475a6a8387a80e418997b38dc40d4c.

* Fix NRE; Ret 0 if Text null (#3594) fixes #3579

* [UWP, WPF] Fixes rendering of the main page (#2896) fixes #2704

* [Core] Ignore Shamehat target when running DesignTimeBuild (#3605)

* [XamlC] Fix binding compilation fo value types (#3551)

properly load valuetype arguments of generated setters, using ldarg,
instead of ldarga.

- fixes #3539

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

* [Android] Fix Label LineHeight (#3452)

* fix line height android

* Make UAP respect initial LineHeight

* update .create-nuget.bat (#3638)

* Add Null Check to GetRenderer (#3575)

- fix #3563

* Fix 3562 Null Reference Exception (#3576)

- fixes #3562

* Fix 3564 Null Reference Exception (#3578)

- fixes #3564

* [iOS] AutomationProperty support for cells (#3313) fixes #3296

* [iOS] AutomationProperty support for cells

* Add test case to AutomationProperties gallery

* [UWP] Fix crash app when create navigation/tabbed page without children pages fixes #3188 (#3514)

* [Android] Use height when determining ScaledScreenSize; fixes #3609 (#3641)

* [C] Set binding context on Span Gestures (#3639)

* [Core] Set binding context on Span Gestures
* [Core] Simplify loop setting child binding context

- fixes #3524

* Update PULL_REQUEST_TEMPLATE.md

* [Android] remove deprecated AndroidUseLatestPlatformSdk (#3672)

* [iOS] iPad ActionSheet should always have a Cancel method (#3636)

* Add repro for #3049

* [iOS] iPad ActionSheet should always have a Cancel method

fixes #3049

* [Android] fixes #3675 - set  initial ScrollView Scroll values when RTL (#3676)

* [Android] API check for Shadow properties on Button (#3617) fixes #2702

* [Android] API check for Shadow properties on Button

* Fix swapped shadow values

* [iOS] fixes #3525 - add epsilon for float compare (#3654)

* [iOS] fixes #3525 - add epsilon for float compare and make region immutable

* [ControlGallery] spread out spans to account for click slop

* [ControlGallery] - adjust span slightly for android test

* [Core] remove private

* Fix text wrapping (#3671) fixes #3634

* [GTK] Fix navigation bar visibility updates (#3651)

* Fix partially  #3585 (#3592)

* Make webkit-sharp.dll.config cross-platform

* Update webkit-sharp.dll with missing signals bindings

see: https://github.com/ylatuya/webkit-sharp/tree/fluendo

* [iOS, UWP] fixes #2894 - Gestures collection changes weren't correctly propagating (#3643)

* [iOS, UWP] fixes #2894 - Gestures weren't wiring up to spans in all cases

* [Core] remove ChildGestureRecognizers when spans get removed

* [iOS] removed incorrect return from null

* Fixes #3663 (#3684)

* Fix ScrollView Padding issue (#3685)

* [WPF] Memory leak when you pop a TabbedPage (#3372) fixes #3267

* Fix [WPF] Memory leak when you pop a TabbedPage

* Update ViewRenderer.cs

* Update ViewRenderer.cs

* [Android,iOS,UWP] Allow Entry CursorPosition/SelectionLength to be set in ctor (#3402) fixes #3343 fixes #3633

* Add repro for #3343 + unit tests

* [Core] Disallow negative values for CursorPosition/SelectionLength

* [All] CursorPosition/SelectionLength can bindin ctor & clear value

fixes #3343

* typo

* cleanup

* [iOS] Cursor snaps to end

* try/catch

* [CSS] add more properties (#3466)

map new CSS properties:
- `color` on `IColorElement` (`ActivityIndicator`, `BoxView`),
  `ProgressBar` and `Switch`
- `row-gap` and `column-gap` on `Grid`
- `transform` and `transform-origin` on `VisualElement`
- `vertical-align` on `Label`

add new XF-specific CSS properties
- `-xf-placeholder` and `-xf-placeholder-color` on `Editor`, `Entry`,
  `SearchBar`
- `-xf-max-length` on `InputView` (`Editor` and `Entry`)
- `-xf-bar-background-color` and `-xf-bar-text-color` on
  `NavigationPage` and `TabbedPage`
- `-xf-orientation` on `ScrollView` and `StackLayout`
- `-xf-horizontal-scroll-bar-visibility` and
  `-xf-vertical-scroll-bar-visibility` on `ScrollView`
- `-xf-min-track-color`, `-xf-max-track-color` and `("-xf-thumb-color`
  on `Slider`
- `-xf-spacing` on `StackLayout`

This PR replaces and closes #3276

- fixes #2891

* [iOS] Specify a default size for UISearchBar width if needed (#3635) fixes #3413 fixes #2139

* [Controls] Add reproduction and test case for issue #3413

* [iOS] Don't use max value for iOS UISearchbar breaks on iOS 11.3

* [iOS] Force width value so we can renderer UISearchBar on iOS10 with infinite width

* [Controls] Fix spelling and add Manual Review to the test of #3413

* [iOS] Simplify code for UISearchBar width

* [iOS] Return always some width from measure the UISearchBar on IOS

* [Controls] Add reproduction case for issue #2139

* [UWP] Fixed double set margins in Layouts (#3570) fixes #3398 fixes #3616

* [Android] Support multiple clipping settings in single layout (#3559)

* Repro

* Fix for API 18+

*  [iOS] Unsubscribe CellPropertyChanged when SwitchCellRenderer is disposed (#3518)

* [Controls] Add repo of issue #3408

* [iOS] Unsubscribe CellPropertyChanged when cell is disposed

* [Controls] Add issue to project

* [iOS] Introduce CellPropertyChange to CellTableViewCell to used by all other cell renderers

* [Controls] Simplify Issue

* [iOS] Remove PropertyChanged that was not used

* [Controls] add check for null binding on template, add notes about issues

* [Controls] added reference to Android crash

* [iOS]Use existing PropertyChanged on ViewCelRenderer

* [iOS] Keep the existing override so we don't break users

* Update TextCellRenderer.cs

* update submodule

* 24H Mode (#3701)

The 24h mode for the pickerdialog was not working.

Version 3.1 was working fine. 

Here is an updated file.

* [UWP] uncomment tests that are now passing for 3188 (#3723)

* [UITest] Update Xamarin.UITest nuget package (#3632)

* [UITests] Update Xamarin.UITest 2.2.5

* [UITests] Try fix Toolbaritems

* [UITest] Update to 2.2.5-1606

* [UITests] Small Fixes and workarounds to make uitest happy

* [UITests ] Add delay to 1733 for API28

* [Android] Revert bad merge (#3746)

fixes #3705

* [Android, iOS] Fixes layout compression causes (#3698) fixes #3624

* [Android, iOS] Fixes layout compression causes

* [iOS] improve UpdateNewElement method

* Fix build error hopefully

* [UWP] Fixes CollectionChanged events in ListView (#3323)

* fixes #3273

* [UWP] Fixes CollectionChanged events in ListView

* a wrapped collection is used only if the SourceItem is not ObservableCollection

* improve uitest

* fixed NRE in empty ListView

* added a sortable custom renderer for UItest

* minor refactoring

* fixed reset of not wrapped collections

* addressing comments

* [UWP] remove WinRT hack

* [UWP] add missing using and cleanup additional resources

* [Android] Update Forms to remove API28 deprecated API (#3653) fixes #2128 fixes #3629

* [Build] Update provisioning

* [Controls] Ignore deprecated  Android API usage

* [Android] Remove use of obsolete color usage

* [Android] Remove app fragment usage

* [android] Rollback changes to EntryCellRenderer

* [Android] Better way to get the default color for the label text

* [Android] Obsolete message for ContentPage.CreateFragment()

* [ControlGallery] - create bitmap from Drawable to use for pixel location

* [Android] Use textcolor resource

* Update submodule

* Fix tests (#3771)

* [ControlGallery] Wait for element and add timing to tests

* [iOS] Fix NRE on RenderPool

* Add TabStop/TabIndex (#2795)

* [Core, UWP, Android] support TabStop/TabIndex

* removing linq

* add iOS / MacOS implementation

* add WPF implementat…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.