Граф коммитов

45 Коммитов

Автор SHA1 Сообщение Дата
Gerald Versluis 3ea7886368
[Bug] [Regression] UWP Button breaks the Layout (#14768)
* Fix hover and focus

* Revert ButtonRenderer change

* Fix build

* Fixed sample bindings

* Fix the Layout issue in the Button

Co-authored-by: Javier Suárez Ruiz <javiersuarezruiz@hotmail.com>
2021-10-21 20:12:17 +02:00
Javier Suárez 9666abca33
Fix broken disabled Button visual state in UWP (#14567)
Co-authored-by: Gerald Versluis <gerald.versluis@microsoft.com>
2021-09-03 14:12:03 +02:00
Javier Suárez b85c28e530
Fix Button VisualState Disabled in UWP (#13148) 2021-05-11 10:23:27 +02:00
Shane Neuville 0c95d0976c
Rename MDP to Flyoutpage (#12073)
* - additional renames

* - fix tizen exceptions

* - files

* - flyout pages

* - obsolete

* - fix android references

* - fix android references

* - obsolete attributes

* - remove warnings as errors

* - fix release
2020-09-17 23:47:56 +01:00
Javier Suárez 3a57e2e020
[Enhancement] Brushes (#9220)
* Added brushes to Core, Core Gallery and the iOS implementation

* Implemented brushes on UWP

* Improved UWP brushes implementation

* Changes to improve the brushes Core Gallery samples

* Added default SolidColorBrush colors

* Improved brushes samples adding more options

* Implement brushes on Android

* Fixed Brush Background on Android ImageButton

* Initial code to add support to brushes using CSS

* Support more CSS gradient options
Added more unit tests

* Changes in Core Gallery brushes samples

* Reuse same ColorTypeConverter in the GradientBrushParser

* Fixed brush issues on specific controles (Android: Page) (iOS: Label, ImageButton, NavBar)

* Updated brushes unit tests

* Added new sample in Core Gallery
Fixed angle issue in UWP LinearGradientBrush

* Fixed UWP issue updating brushes in Buttons

* Improved UWP UpdateBackground logic in VisualElementRenderer

* Fixed UWP build errors
Fixed some UWP brushes issues

* Added WPF implementation

* Fixed issue verifying brushes in iOS VisualElementRenderer

* Fixed iOS brushes in BoxView

* Added scroll to LinearGradientPointsGallery sample

* Fixed iOS brushes size issue

* Implemented brushes in macOS

* Uncommented wrong method to update image brushes resizing the App Window

* Fixed Windows Build

* Fixed broken unit tests

* Added more comments in UWP RadialGradientBrush

* Added BrushExperimental flag

* Notify VisualElement Background changes if some Brush property have changed

* Fixed brush issue in Android Button using CornerRadius

* Fixed unnecessary border color issue applying brushes to Layouts in Android

* Fixed brushes unit tests

* Removed EditorBrowsable label in BackgroundColor until deprecate it

* - fix whitespace

* Changed IsEmpty Brush property to be abstract and implemented it in every brush.

* Changed IGradientShader to GradientShader

* Fixed BindableBrushGallery issue on iOS/macOS

* Fixed wrong iOS right RadialGradientBrush

* Fixed Brush in iOS NavBar iOS < 13

* Fixed iOS Brush on Button and Label

* Fixed Build errors

* Replace UWP Community Toolkit RadialGradientBrush class by WinUI 2.4 RadialGradientBrush

* Fixed broken unit test

* Fixed brushes issues on macOS resizing the Window or on iOS rotation, etc.

* Added the option to choose the BorderColor in the Brushes Playground

* Removed duplicated ShapeRenderer Compile line in Platform iOS csproj

* Removed unnecessary changes

* Added Visual Brush samples

* Implemented Brushes in iOS Visual Renderers

* Only show the access to the Brushes Visual sample in Android and iOS

* Added brushes support to shapes

* Fixed Build error

* Removed unnecessary changes

* Added Brushes support to Android Material ActivityIndicator

* Added brushes support to Android Visual Frame

* Updated Visual Android Renderers

* Fixed BoxView Brush issue

* Updated brush views sample to add more BoxView cases

* Added brushes tests classes

* More Brushes unit tests

* Added more controls to test in the BrushesViewGallery

* Added new Brushes sample

* Fixed build error

* Updated AnimateShapeGallery to use a Brush

* Fixed CoreGallery Core samples allowing to use the Background property

* Added Brushes platform unit tests

* - apply background color if solid brush is empty

* - fix visual checkbox

* Fixed the build

* Fixed issue on Shapes

* Updated MaterialButtonRenderer to use IsOneOf with several properties

* Removed unnecesary change in UWP Styles

* Use IsOneOf in UWP BackgroundTracker

* Added IsNullOrEmpty Brush method

* Removed unnecessary brush updates

* Added more constructors to LinearGradientBrush and RadialGradientBrush

* Fixed UWP NavBar BarBackgroundColor issue

* Removed unnecessary line in UWP BoxViewRenderer

* Fixed NRE in iOS ButtonRenderer

* Updated iOS Button SetBackground logic

* Implemented Shell FlyoutBackground

Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
Co-authored-by: Samantha Houts <samhouts@users.noreply.github.com>
2020-07-17 08:44:13 -06:00
Brian Macomber 8dbc0df500
Fix 8503, 8787 - text in Entry not immediately visible, or visible after IsVisible set to true (#11140)
fixes #8503
fixes #8787

* Adding a testpage for Issue 8503.

* Adding isolated and simplified test to Issue8503, without animations.

* Adding fix for Issue 8503, by setting VerticalContentAlign on ContentPresenter wrapped by existing ScrollViewer in FormsTextBoxStyle

* Adding Test Page for Issue 8787

* Trimming test page 8787.

* Improving title for test page 8787

* wip

* Create two control templates

* Remove Measure Style, set alignment in FormsTextBox

* Add support for updating vertical text alignment

Co-authored-by: Jon Robinson Levy <jon.r.levy@gmail.com>
2020-07-02 09:46:52 +02:00
Shane Neuville 924315ada3
[Shell] Implement FlyoutBackgroundColor for UWP (#9915)
* implement FlyoutBackgroundColor for UWP

* - fix nuspec

* - winui
2020-03-16 11:50:09 -06:00
Samantha Houts 0871de12f3 Merge branch '4.4.0' into 4.5.0 2020-01-09 14:32:59 -08:00
Jon Robinson Levy 6fab987101 Fix 8743 - now using specific style in SearchBar [UWP] (#8773)
* Adding a test page for Issue 8743.

* Correcting UITestCategory

* Renaming AutoSuggestStyle.xaml -> FormsAutoSuggestBoxStyle.xaml; adding x:Key to AutoSuggestBox-style.

* Applying style to AutoSuggestBox in SearchNarRenderer - fixing 8743

* Removing comment about default style - as style is no longer default

* Fixing typo in class name for Issue8743 (was erroneously Issue8843, might create conflict)

* Making GlyphElement in FormsCancelButton template use TemplateBinding for FontSize instead of fixed 12 pts.

* Updating nuspec to include FormsAutoSuggestBoxStyle instead of AutoSuggestStyle
fixes #8743
2020-01-09 14:19:09 -08:00
shane 87d720c71e Merge branch '4.4.0'
# Conflicts:
#	Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/TestPages/TestPages.cs
#	Xamarin.Forms.Core/Button.cs
#	Xamarin.Forms.Core/IImageElement.cs
#	Xamarin.Forms.Platform.iOS/Renderers/ShellSectionRootHeader.cs
2019-11-23 17:19:34 -07:00
Gerald Versluis 2188232bc4 [UWP] Fix MDP Button "Padding" issue (#8610)
* Update MasterDetailControlStyle.xaml

* Added comments

* Update MasterDetailControlStyle.xaml
2019-11-21 20:04:10 -07:00
Shane Neuville 47714fe10f Merge branch '4.4.0'
# Conflicts:
#	Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems
#	Xamarin.Forms.Platform.UAP/Resources.xaml
2019-11-08 13:38:21 -07:00
E.Z. Hart ccd4145e5b Make character spacing work for UWP Picker without breaking ItemsSource (#8356)
* Make character spacing work for UWP Picker without breaking ItemsSource
Fixes #8177

* Add test instructions
2019-11-08 12:44:08 -07:00
Glenn Versweyveld 80bb211f93 Add ListViewHeaderItemMinHeight override in UWP resources.xaml (#8010)
* Add ListViewHeaderItemMinHeight override in UWP resources.xaml

* Amend csproj
2019-10-29 10:07:59 -07:00
Morten Nielsen aeafec9ff6 Adds UWP support to Shell (#6015)
* Some basics to get started

* more renderers

* Fix titlebar color

* More shell stuff working

* Hacked some more UI in

* Fix null ref issue

* Move renderer registration outside common code (for now)

* Re-write of the renderers to better use a cleaner UWP approach

* Moved functionality around, bug fixesetc

* Added null check

* Added null-check on appearance and use default colors as fallback

* Handle change in flyout behavior to correctly turn the flyout on/off

* Handle the TabBarIsVisible property

* code formatting

* Ensure FlyoutHeader isn't show if the app starts up with a minimal pane

*  Throw if used on versions lower than Windows 10 1809

* Added null-check for when ShellContent isn't set

* Support tabs in FlyoutItems with Display AsMultipleItems by using the generated FlyoutGroupings instead

* Improve pane behavior and styling

* Undo Android change used during testing

* Fix platform support check

* Use FileImageSourcePathConverter on NavigationViewItem instead of a custom control (so I deleted ShellNavigationViewItemRenderer which is no longer needed).
Ensure `FileImageSourcePathConverter` won't throw if it didn't get a FileImageSource.
Move the flyout data templates into a resource so they can be overridden and compiled.

* Delete renamed file

* Use a resource instead of parsing a string template

* Handle search box property changes

* Update page title on property change

* Update bottombar when shellitems change

* Guard against API usage not present

* Platform check comments

* Fix problem running in release mode (use Bindable to generate XamlMetadata

* Trigger rebind of menu items source when collection changes

* Added support for Toolbar

* Fix searchbox behavior (still lacks expand/collapse feature)

* Add overload for defining the navigation transition

* Use different navigation transitions based on navigatin direction

* Hides header with show / hide nav command

* collapses header area on hide nav

* Move to use WinUI

* Fix runtime issues after merge.

* - rebase fixes

* - rebase fixes

* - fix spaces/tabs

* - flags, hide apis, delete assembly info

* - set flag on UWP CG

* - expose renderer creations and make them all public

* - formatting fixes

* - address PR comments

* - fix header so it's full width and swappable
2019-09-17 23:26:56 +01:00
Shane Neuville f51099c382
[UWP] RefreshView (#7319)
* UWP Swipe Refresh implementation

* - target platform warnings for UWP

* - move dictionary registration to code

* - remove SkipMicrosoftUIXamlCheckTargetPlatformVersion
2019-09-07 01:11:41 -06:00
E.Z. Hart 880f368dda UWP CollectionView cleanup (#6928)
* Move files to CollectionView folder for consistency with other platforms
Move SelectableItemsViewRenderer to Setup/Teardown pattern
Fix event handler naming
Use Is method for property changed check

* Rebase cleanup
2019-07-29 16:50:11 -07:00
Samantha Houts 1707f56d7e Merge branch '4.0.0' into 4.1.0 2019-07-03 16:42:03 -07:00
Shane Neuville e15ae8ca86
Cherry pick Issue4597 fixes back to branch 4.0.0 (#6724)
* Split up Issue4597 into separate testable chunks (#6654)

* split up tests

* fix tests for ios

* comment out tests for UWP for now

* - add delay for loading from uri
- rearrage components so switch is always visible

* add retry logic to url based tests so images can load

* fix automationid binding

* remove extra file

* fix tabs
2019-07-01 10:42:41 -06:00
Shane Neuville 4d09f7698a Split up Issue4597 into separate testable chunks (#6654)
* split up tests

* fix tests for ios

* comment out tests for UWP for now

* - add delay for loading from uri
- rearrage components so switch is always visible

* add retry logic to url based tests so images can load
2019-06-29 14:53:38 +01:00
Shane Neuville 5b284b4d76
Checkbox (#6232)
* Add CheckBox class and Renderer

* Add CheckBoxCell class

* Add Control Gallery for CheckBox and CheckBoxCell.
Add stubs only for Android for now.

* Update to fast renderer for Android, Implement Checked and Unchecked Colors!

* Initial UWP implementation, no colors yet.

* Add iOS implementation for checkbox. It's not pretty, but it is a start!

* Updates from Frank

* Code cleanup with frank

* Finalize iOS checkbox!!! it is a circle!

* Fix WPF build and Add a checkbox!!!

* Cell Renderers and macOS

* UWP switchcell

* Update CheckBox Cell on ios/android with colors

* Remove all instances of CheckBoxCell per demand

* Added UITests and UnitTests

* Changed colors to TintColor which makes sense. Added a IsChecked visual state property and a sample!

* checkbox cleanup, tint color fixes, and material

* uwp fix when changing TintBrush

* add checkbox to visual controls page

* formatting fix

* formatting fix

* formatting fix

* convert to tabs

* formatting

* checkbox tabs

* roll back formatting changes to WPFResources

* android renderer overrides

* uwp fix and sizing fix ios

* mask checkbox

* use a single image for ios inatead of always drawing new ones

* wpf fix

* rename to color and add css interfaces

* missing wpf file

* designer hack

* fix wpf for ios builds

* assembly info

* fix default tint color and infinite crash

* [iOS] fixes change checked state from control
simplification
added to dynamic galery

* [iOS material] fix crash when dispose

* [UWP, WPF] fix vertical alignment

* [Android] fixes does not change size when the reduction HeightRequest

* Update Xamarin.Forms.Material.iOS/MaterialCheckboxRenderer.cs

Co-Authored-By: Samantha Houts <samhouts@users.noreply.github.com>

* [Android] TabStop support

* alphabetize gallery, fix color update when disabled, unsubscribe from event in dispose

* cleanup assembly info

* fix assembly attributes

* remove assembly info

* pr comments

* couple of more dispose fixes

* One Last Dispose

* fix api 19 call to ClipToOutline
2019-05-30 10:32:28 -06:00
Matthew Leibowitz a8d0d7a1d4 [WIP] Unify the image handling (#4915)
* Initial code to get unifiied image handling
 - not yet tested
 - still using FileImageSource in some areas

* Updated the button renderers and added tests for Android

* Updated a few more of the Android renderers
 - also added an `IsEmpty` property to the ImageSource to indicate if this source actually contains data that can be used to try and load an image
 - added a few more "tests"
 - includes the changes for #4916

* A few more changes

* Keep the default page for the sample app

* Changing everything to ImageSource and going from there
 - Android, iOS, UWP and WPF are compiling
 - GTK, Mac and Tizen are not yet finished
 - Added a new interface for UWP to return an IconElement in addition to ImageSource (for app bar buttons)
 - not tested yet, nor are there any tests

* Renamed the property to be more useful

* All of Android is now async
 - still only minimal tests
 - also removed the bits that are in https://github.com/xamarin/Xamarin.Forms/pull/4948

* Update Xamarin.Forms.Platform.cs

* A few fixes to whitespace and nameof()

* Updated iOS and UWP wirth async image sources

* A few fixes and WPF support

* A few fixes for Android after the big merge

* Updated a few more loaders:
 - ios
 - macos
 - tizen
 - gtk

* Fix a few things after the merge

* - cast type to FileImageSource

* fix setting of title content if icon doesn't load

* fix IButtonLayoutManager to return correct control

* remove cast and add pack api

* - fix timing issues with layout/invalidation

* - remove aggresive element invalidations for now

* first set of api changes

* obsolete old apis and create new ones for ImageSource

* obsolete messages and static ordering fix

* add tests

* switch default on windows to show images on tabs

* - XStatic obsolete fix

* fix NPC test and bring back alert check on uwp

Fixes #3207
Fixes #4689
2019-04-26 13:46:13 -07:00
Stephane Delcroix fb169ce976 Merge branch '3.6.0' into 4.0.0 2019-03-18 09:40:11 +01:00
Shane Neuville 0376a5f692 [Android] fix focus event on android and add UI Tests (#5528)
* fix focus event for material entry and add ui tests

* fix iOS

* - Focused
fixes #5509
2019-03-15 14:43:04 -07:00
Pavel Yakovlev 4c720530e6 [UWP] Fixes call Tapped event ListView (#3400) fixes #2318 fixes #4901
- fixes EntryCellTextBox template
2019-02-12 13:13:58 +00:00
Gerald Versluis 27f83582e9 [C, iOS, AND, UWP] Color for Picker.Title (#4701)
* Implemented Core, iOS and Android

* Implemented UWP

* Processed code review feedback

* More code review feedback
And implemented reset scenarios for all platforms

* Also apply color to popup dialog on Android

- fixes #4669
2018-12-18 13:12:30 +01:00
Gerald Versluis 4c00ac34f6 [Core, iOS, Android, UWP, WPF, GTK, Tizen] Implement TextColor on TableSection (#4379) fixes #2910
* 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 f66a72de5b.

* 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 f66a72de5b.

* 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 f66a72de5b.

* 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

* Implemented for iOS, Android and MacOS

* Implemented UAP and WPF

* Refactored duplicate code and removed typo in method name

* 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 f66a72de5b.

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

* Fixed code review comments

* Removed obsolete convert method

* Making sure default platform functionality is intact iOS and Android

As er code review comments

* Making sure default platform functionality is intact MacOS

* Making sure default platform functionality is intact UWP and WPF

* Code review comments for iOS, Android and MacOS

Default platform value is now preserved and applied when setting is set to default

* Code review comments UWP and WPF

* Fix build

* [UITest] - add ui test to test scroll permutations

* [Uwp] fix bad merge

* [wpf] fix spacing

* Adding instructions and UI tests for Bugzilla44461 (#4144)

* Adding instructions and UI tests for Bugzilla44461

* Update Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla44461.cs

Co-Authored-By: mikescandy <michele.scandura@outlook.com>

* Fix assert

* [C] avoid AmbiguousMatchexception in Bindings (#4216) fixes #4215

if a type defines multiple op_implicit from the same type to different
ones, trying to retrieve it with GetMethod() throws an
AmbiguousMatchException. If this happens, we have to do the resolution
ourself.

- fixes #4215

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

* [Enhancement] Possibility to change IsPassword for MacOS (#4175) fixes #2223

* https://github.com/xamarin/Xamarin.Forms/issues/2223 added possibility to change IsPassword for mac

* added test case

* [Core] Fix layout padding update issue (#4166)

- Update PaddingPropertyChanged handler
 - Add UnitTest for Padding
 - Update ControlGallery

- fixes #4165

* Bindable layouts (#4052)

- fixes #1718

* [GTK] Do not show a label in gtk slider renderer (#4098)

* Remove unnecessary ToArray to reduce number of BindableObject[] allocations (#4101)

* [Mac] Fixes crash after changing main page (#4228)

- fixes #4156

* Enforce clipping on fast renderer ImageRenderer when using AspectFill; fixes #4133 (#4218)

- fixes #4133

* notify me of changes to XamlC

* [MacOs] Image from file not getting searched in the bundle  fixes #2322 (#4247)

* [GTK] Fix several memory leaks in the GTK backend (#4112)

* [GTK] Don't recreate master or detail if it didn't change

* [GTK] Fix several memory leaks using the Destroy pattern

Gtk objects must be disposed using the Destroy function that will
automatically iterate over the children and destroy them too:
https://developer.gnome.org/gtk2/stable/GtkWidget.html#gtk-widget-destroy

The gtk-sharp bindings discourage the use of Dispose and don't even call
the base class, leaving it without effect:
https://github.com/mono/gtk-sharp/blob/gtk-sharp-2-12-branch/gtk/Object.custom#L98

In the Controls, that inherits directly from native Gtk objects, the
overrides of the Dispose function are changed to override the Destroy
function.  In the Renderers, that inherit from VisualElementRenderer,
the Destroy funtion is called in the dispose implementation so
subclasses only have to override Dispose (bool disposing) as they do
now.

* [GTK] Don't recreate the toolbar on each change

* [GTK] Fix leak connecting to the PropertyChanged event twice

* [UWP] Fix ActivityIndicator width in absolutelayout (#3224)

* [Core] Fix autosize elements in absolute layout

* revert the Hasflag extension

* - refactoring to the local UWP fix for Activity Indicator
- fixes #1399

* [iOS] Fix issue where entry would emit a change notification without a user triggered change (#3433)

* [iOS] Fix issue where entry would emit a change notification without a user triggered change

* Add repro

* [iOS] Change CALayer.Transform in MainThread (#4160)

* fixes #1480

* Added test case

* Update Xamarin.Forms.Platform.iOS/VisualElementTracker.cs

Co-Authored-By: AndreiMisiukevich <andrei.misiukevich@gmail.com>

* updated test case

* Move GetNativeSize to PlatformServices, remove IPlatform (#4235)

* [UnitTest] Remove UnitPlatform

* Add Editor.IsTextPredictionEnabled property (#4023)

* Add Editor.IsTextPredictionEnabled property

* simplfy UpdateInputType logic

* modify IsTextPredictionEnabledProperty BindingMode to Default

* undo changes of commit 5db2456d

* [UITests] update namespace for UI Tests

- Fixes #3555

* ListView should convert item to string when ItemTemplate is not specified (#4016)

* Convert item to string, when ListView has no ItemTemplate

* ToStringValueConverter tests

* Format value using parameter in ToStringValueConverter
- fixes #3715

* Removed custom entitlements entry for iOS simulator builds (#4257)

* [UITests] fix dismiss page crash (#4251)

* ImageButton (#1974)

* ImageButton Implementation

* [Android] rename BorderBackgroundManager

* [Android] copy AspectFill changes to ImageButton

* [UITests] fix order of gallery pages to work with tests

* [Android] Account for changing image region with border/shadows

* [Android] check for api 18 and add setpadding call back in

* [Android] throw exception instead of crash when image fails to load

* Addressing issue comments and adding additional test cases to Issue demo

- fixes #1724

* [C] Add Default value to OnIdiom (#4225)

* [C] Add Default value to OnIdiom

- fixes #4006
- closes #4025

* add test

* xamarin/Xamarin.Forms/issues/2315 (#4190) fixes #2315

* [iOS] make button constructor public (#4313)

* fix merge issues

* Added UI test to B44338 (#4307) fixes #2379

* Move github files to .github dir (#4288)

This change is completely non-functional, the files moved will function identically in the .github dir, but don't cruft up the root dir.

* [GTK] Fix synchronization context fairness (#4237)

GLib.Idle.Add enqueues functions in the main loop
with the lowest priority, so while the UI is updating
tasks will be queued in the main loop.
Using Gtk.Application.Invoke they are interleaved with UI
updates and handled with more fairness.

* Implemented Core and iOS

* Implemented Android

* Fixed bug on iOS where default color would cause heading to disappear

* Implemented UWP

* Implemented WPF

* Implemented GTK

* Implemented Tizen
2018-11-27 19:26:34 +00:00
E.Z. Hart aabe44fe7d [Enhancement] Add CollectionView progress behind feature flag (#4265)
* The barest beginnings of starting a spike for LV2

* Very basic RecyclerView

* Very, very basic UICollectionView

* Start setting up galleries

* De-duplicate some gallery code

* Android horizontal layout

* Very basic horizontal/vertical text lists for iOS

* Vertical list views working in iOS, stashing while trying to figure out what the deal is
with horizontal views and frames with heights of 1

* Working on rotation issues in iOS

* Fix name of renderer in UWP; make horizontal scrolling work for horizontal
lists on UWP

* Set up gallery to generate different sizes of lists for testing

* Respond to items source updates on UWP

* Add gallery for GridLayout; Add GridLayout;
begin GridLayout implementation UWP

* Basic UWP gridness

* Add demo page for grid layouts with text;
Handle grid layout spans on UWP; handle grid layout span changes on UWP;

* Implement span updates on Android grid layouts;

* Ironed out most of the iOS text cell layout issues

* iOS vertical/horizontal text lists now working reliably;

* In progress on UWP DataTemplate stuff

* Dumping the data template into the itemsource

* Vertical list basically working with DataTemplate; horizontal list having image size issues

* Clean up names and move classes to their own files

* Adding some notes for FormsContentControl

* Rolling back platform test on UWP

* Fix Tizen build

* Fix typo and roll back old test code

* Remove old testing comments

* Make basic data templates work on Android

* Update measure to work horizontally

* Remove old testing code

* Terser rectangles

* Use nameof()

* Rename FormsContentControl to ItemContentControl

* Use CreateRenderer instead of GetOrCreateRenderer

* Clean up TemplateCodeCollectionViewGallery

* Add grid galleries for templates

* Nicer example templates

* Create gallery to test removing items from collections

* Smooth single item removal on Android

* Smooth item insertion on Android

* Observable collection item adds working on UWP

* UWP Remove

* Split files

* Add gallery for snap points; start implementation of snap points on Android;

* Move snap handling to separate class; implement Start snapping (horizontally)

* Debugging vertical overlap issues on Android

* Temporarily add IsClippedToBounds to generators to force clipping on Android

* Start and End SnapHelpers are working horizontally and vertically

* Consolidate some snap code on Android

* Mandatory Single Snapping working for Center/Start horizontally

* Throwing together scrollto gallery

* Super basic "ScrollTo" implementation for Android, plus test page

* Expand ScrollTo test harness;

* Move ScrollToRequestEventArgs to its own file

* Mostly working Carousel renderer; needs some cleanup and its own gallery pages

* Carousel gallery

* Naming cleanup

* Make parameter name consistent

* Finally some basic data template functionality for lists

* Checkpoint; sort of working

* Working out estimate size hacks

* Working out cell optimizations

* Checkpoint before some serious refactoring

* Collapsing closer to a solution; text lists and grids working;
template lists and grids working; uniform size hint mostly implemented;

* Remove awkward Update method

* No longer hard-coding list item heights estimates

* Consolidate more code

* Get rid of event on ItemsViewLayout

* Remove public NeedsEstimate stuff

* Get rid of IConstrainedCell

* Watch for Span changes on iOS

* Indexed ScrollTo on iOS

* Implement removal/insertion of items on iOS

* Handle Move, Reset, Replace on Android

* Add screens to test ScrollTo Item; implement ScrollTo Item for iOS

* ScrollTo Item working on Android, but only works for MakeVisible

* Implement Android ScrollTo Animated ScrollToPosition

* Ugly but functional non-animated scroll with ScrollToPosition

* Move Scroll logic into helper class for clarity and maintenance

* Fix Start snapping with grids (hard-coded span of 1)

* Fix next/previous row/col snapping bug for EndSnapHelper

* Remove some debug statements

* Clean up example code

* Fix missing delegate setting on CollectionView

* Add filtering example

* Watching the adapter and handling empty view from the renderer

* Add debugging for all the FindViewHolder methods

* Suuuuper basic but functional EmptyView

* Allow EmptyView to be turned on and off

* Building tests for all the EmptyView scenarios

* Set Platform on EmptyView (for now)

* Templated EmptyView on Android

* Clean up merge errors

* Require flag to use CollectionView on Android

* Require flag to use CollectionView on UWP

* Restore Label functionality commented out during testing

* Adding a note for myself

* Add flags for iOS; flags for Android CarouselView;

* Remove Calabash out-commenting

* Undo changes to DotSettings; remove outdated TODOs

* Fix formatting

* Remove debugging code; remove outdated todos; remove unnecessary comments

* Undo randon VS changes

* Include CollectionView in experimental renderer testing

* Use correct property in nameof() call

* Rename ScrollToRequestEventArgs Animate -> IsAnimated

* Rename Constrain -> ConstrainTo for consistency

* Add Core flags feature; add flag verification for CollectionView features

* Make sure no one is subclassing native CollectionView stuff without flag

* Set CollectionView flags for unit tests

* Make flags depend on Application.Current

* Fix iOS 9.3 exception when laying out CollectionView

* Use Device.Flags

* Move CV flag check to CollectionView; use Device.Flags on native platforms;

* Move classes into their own files

* Make CollectionView flag check method non-browseable

* Remove old TODO

* Remove Element.Platform sets

* stubbed toolbox entries and snippets for Carousel and Collection

* updated CV snippet to include layout

* Remove Linq using statement

* Remove unused using statement

* Turn off CollectionView in Control Gallery

* Move PropertyChangedEventArgsExtensions to internal on each platform

* Clean up debugging code

* Fix broken test setup

* Remove ToString overrides

* Fix broken test screen
Fix broken test screen

* Fix rebase errors

* Update submodule

* Fix rebase error
2018-11-13 12:49:08 +00:00
E.Z. Hart b25ca40edb [UWP] Remove old appbar code in Platform (#3409)
* Remove unused option for Platform to add toolbars to any page;

* Remove IPlatform interface

* Reinstate OnBackRequested method
2018-08-08 10:03:44 +01:00
E.Z. Hart 599541e3de [UWP] Thumb color and image for Slider (#2065) fixes #1684
* Add demo/test pages for new properties

* Test attributes for new Slider properties

* Implement slider thumb color and thumb image on UWP

* Use nameof for ThumbImage property
2018-03-14 11:02:26 +00:00
E.Z. Hart 3b0a6d2432 Allow SearchBar cancel button colors to be set individually (fixes #1878) (#1885) 2018-02-15 15:48:53 +00:00
Poppyto 309751523a [UWP-WinRT] Bug 25662, SwitchCell.IsEnabled not rendered (#1279)
* Bugfix for #25662, Property SwitchCell.IsEnabled wasn't implemented in the rendering

* Revert unused files
2017-12-05 17:07:34 +00:00
Jimmy Garrido 658f321599 [UWP] Update Alert and ActionSheet implementations (#881)
* [UWP] Update Alert and ActionSheet implementations

* Add new xbf file to nuspec

* Fix code after rebase
2017-12-05 16:33:28 +00:00
Samantha Houts d3d59ee4f0 [All] Basic Right-To-Left Support (#1222)
* Restart RTL work

* Remove IsInherited flag as it never got used

* [Core] Unit tests

* [Core] FlowDirection

* Add FlowDirectionGallery

* Android gallery supports RTL

Need to set minSdkVersion to 17 to test

* iOS gallery supports RTL

* UWP gallery supports RTL

* [Android] Implement FlowDirection

* [iOS] Implement FlowDirection

* [macOS] Implement FlowDirection

* [UWP] Implement FlowDirection

* Update docs

* [Core] Simplify EffectiveFlowDirection enum & expose helper extensions

Also, TEST TEST TEST

* Update docs
2017-11-09 14:31:15 +00:00
kingces95 ff7a3bcde0 Fix 53427; Change default UAP styling for a label (#837) 2017-03-27 11:32:18 +01:00
Paul DiPietro 83fd2751e6 [WinRT/UWP] Fix Opacity behavior with ProgressBar (#695)
* [WinRT/UWP] Fix Opacity behavior with ProgressBar

* Update .nuspec

* Further update .nuspec

* Adjust .csproj line to fix Mac build
2017-03-14 11:00:10 +00:00
E.Z. Hart 4df66d139f Allow CommandBar to expand and show command labels (#594)
* Allow CommandBar to expand and show command labels
Consolidate command bar placement code

* Make title text wrapping consistent between NavigationPage and MasterDetailPage

* Align toolbar/navigation bar behavior with other platforms
2016-12-02 20:48:42 +00:00
Samantha Houts 5e553f6195 Platform Specifics (#301)
* Playing around with how the platform specifics interfaces etc. might work

* Sample implementation of iOS navigation translucency

* Very slightly reduced code

* Better vendor stuff

* Drop single-implemenation interfaces

* Generics on NavigationPage

* On-demand vendor stuff

* Remove functionally duplicate classes and make ControlGallery work again

* Namespace all the things. XAML test.

* Can use Effect to attach platform specific

* Attach Effect on PropertyChanging for XAML support!

* Rename IConfigPlatform interfaces for readability

* Some renaming to match the documents

* Split class files

* Clear out test-only code

* Re-namespace

* Added On method to rendered Elements

* Allow for removal of platform suffix, convenience methods on specific platforms

* Creating a gallery page for specifics

* Add rudimentary Platform Specifics gallery; make CollapseStyle work on UWP;
Add CollapsedPaneWidth specific property

* Toolbar now working with both collapse styles

* MDP now displaying Content title; toolbar routing around title

* Add a gallery for the iOS NavigationPage stuff

* Add Navigation Page as detail page to verify it works with new Toolbar options

* Make titlebar/toolbar background colors consistent

* ToolbarPlacement now working on NavigationPage

* Toolbar Placement working for tabbed and nav pages

* Fix bug where phone doesn't get default toolbar placement on start

* [Core] Add PS WindowSoftInputModeAdjust

[Core] Make Application extendable

* Toolbar placement now working on Nav, Tabbed, and Master pages on desktop/phone

Remove unnecessary style indirection

Fix build errors

* [A] Add PlatformConfigurationExtensions

* SetSoftInputMode test page

* [A] SetSoftInputMode

Known issue: Status bar color does not work in AdjustResize mode

* [Core] Add PS Blur

* [iOS] Configure renderer for blur

* Add test page

* Move to blur VisualElement for broader support

* Move test pages to gallery

* Update docs

* Use lazy initializer for PlatformConfigurationRegistry
2016-08-30 10:46:14 -07:00
E.Z. Hart 30c0dcb949 Fix Entry/SearchBar color issues (#306)
* Fix disappearing Entry text on UWP Anniversary Edition
Fix background color reversion bug in UWP Phone
Move SearchBar styling on UWP to its own file
Make foreground/background color changes on UWP SearchBar/Entry consistent
Fix SearchBar color toggle bug on WP8

* Temporarily moving SDK target to previous version

* Fix build error on OSX
2016-08-16 11:10:32 -07:00
Samantha Houts a490740a2e [Win] Setting TabbedPage.BarTextColor works (#244)
[Win] TabbedPage BarBG takes precedence
2016-07-18 16:33:41 -07:00
Jason Smith 409e105284 Carousel clean (#135)
CarouselView moving to preview repo
2016-04-26 15:35:52 -04:00
kingces95 0d57b35f21 CarouselView Fixes (#101)
* Fix CarouselView.Item

* CarouselView formatting

* Move ItemsView.Count to IItemsViewController

* Remove dead code: CarouselView.IndexOf

* CarouselView re-layout subviews on resize.

* Add ItemTemplate to resources.xaml on UWP

* Docs
2016-04-18 11:39:23 -07:00
Samantha Houts 75f1124002 BarBackgroundColor and BarTextColor on TabbedPage (#96)
* [Core] Add properties to TabbedPage

* [Controls] Add properties to test page

* [iOS] Added BarBackgroundColor & BarTextColor to TabbedPage

* [A] Added BarBackgroundColor & BarTextColor to TabbedPage

* [UWP] Added BarBackgroundColor & BarTextColor to TabbedPage

* [WinRT] Format file

* [WinRT] Added BarBackgroundColor & BarTextColor to TabbedPage

* [Docs] Updated docs
2016-04-18 09:46:51 -07:00
Samantha Houts d5c3359070 [W] ListView Cells will respect RowHeight 2016-03-23 15:32:21 -07:00
Jason Smith 17fdde66d9 Initial import 2016-03-22 16:13:41 -07:00