* propagate bindingcontext
* - add exception message and fix poorly named xaml file
* add ui test automation
* - fix unit test to represent new code
* - changed from ui test to unit test
* - propagate visual, parent, bc to titleview
* - style fixes
* [Android] Null check on Switch TrackDrawable
fixes#5553
* Add a few more checks, dispose Drawable, fix copy/paste error
* Couple more for safety's sake
* Automated test for issue
* Fix empty view swapping for Android (fixes#5535)
* Remove private modifier
* Account for null Flags when setting flags for test
* Fix rebase issue
* DataTemplateSelector working on Android for ItemTemplate and EmptyTemplate
* Demonstrate DataTemplateSelector working with EmptyViewTemplate
* Handle DataTemplateSelector on iOS CollectionView
* Add UI test
Fixes#4826
* Temporarily patching EditorRenderer to get tests running
* Add test for binding errors;
Fix binding errors on Android;
* Fix binding errors for iOS
* Add flag setting to allow UI test to run
* Fix rebase errors
* Enable "treat warnings as errors"
* Remove unnecessary for loop
* Remove properties which already exist in base class
* Make property hiding explicit and obsolete hiding property
* Move Treat Warnings as Errors setting to props file
* Fix weird quotation changes in Xamarin.Forms.Build.Tasks.csproj
* Scrub empty WarningsAsErrors tags
* Remove unused variable
* Fix TearDown method hiding in UI tests
* Fix Id member hiding in test for Bugzilla32871
* Fix RootPage member hiding in Bugzilla51503
* Fix RooPage member hiding in Issue1483
* Disable warnings for deprecated OpenGL calls
* Fix member hiding in test view models
* Fix RootPage member hiding in Issue1931
* Fix Id member hiding in Bugzilla42620
* Fix AutomationId member hiding in Bugzilla57114
* Fix Layout member hiding in Bugzilla40911
* Remove unused variables from Bugzilla31114
* Remove unused variable
* Fix various unused variable warnings
* Disable warning to leave example code for reference
* Fix unused variable from macOS test
* Remove unused members
* Fix unused variable warnings
* Fixed unused property warnings
* Fix warnings for unused code
* Disable 'await' warning
* Remove unused variable
* Adding pragma directives for await warnings
* Remove member hiding
* Turn off global "Treat warnings as errors" in other platforms
* Use MarkerId instead of obsolete Id member
* Fix await warnings in WPF GeocoderBackend
* Add missing await
* Disable warning for unused event
* [Controls] Add repo for shell issue
* [iOS] Allow specify SetPaddingInsets on the ShellContent
* [iOS,Shell] Fix issue when disposing ToolbarItems of old page
* [Controls] Add demo repo for #5466
* [Shell,Core] Fix navigating to a registered route
* [Shell,Core] Add better exception messages for wrong or non existing content fixes#5081
* [Core,Shell,iOS,Android] Add FlyoutIcon property
* [Controls] Make shell sample work on Android
* [Controls,Android] Add ImageSource support to FlyoutIcon
* [Android]Allow to set text on the back button
* [Android] Create default text back button
* [Controls] Add example to push with back button behavior
* [Android] Fix back button tint color
* [Android] Cleanup and refactor UpdateDrawerArrow
* Update Xamarin.Forms.Platform.Android/Renderers/ShellToolbarTracker.cs
Co-Authored-By: rmarinho <me@ruimarinho.net>
* [iOS,Shell] Fix go back (Pop) when proving BackButtonBehavior
* [iOS] Check the ParentViewController since we were push to it
* [Android,iOS,Shell] Remove extra code implement feedback
* removed old code
* minor cleanup
* - locate activity
* get tests to run
* - fix and force core gallery to work against default
* - fix check if control already disposed
* - fixing what automationid assigns to
* - input transparent fixes
* - fix sandbox back
* - set default visual back to default
* Update Xamarin.Forms.Material.Android/MaterialStepperRenderer.cs
* Update Xamarin.Forms.Material.Android/MaterialSliderRenderer.cs
* - fix core gallery ui tests to find container
* - ui test tweak
* - fix background color on pickers
* - suggested changes
* - suggested fix
* Android - Fix old root page dispose when main page change.
* Revert dead code cleanup.
* Use direct cast for IApplicationController
Co-Authored-By: kvpt <kevin.petit@outlook.com>
* Use direct cast for IApplicationController (bis).
* Unsubscribe the event handler on the right application object.
* Prevent disruptive layout request from toolbar + Revert renderer clearing modification.
* If the page change, do nothing (dont dispose).
* Unsubscribe activity from application on destroy.
* Paused activity must not react to application changes
* Use nameof.
* Handle multiple selection on Android and iOS
* Fire SelectionChanged events and commands when switching modes
* Do not fire the selection change if the mode change results in identical selection
* Fix rebase
* Temporarily patching EditorRenderer to get iOS tests running
* Fix bug where native selection is lost when items are off-screen
* [Core] Cleanup drop private o SelectionList
* [Android] Use local variable on foreach
* [Android] Fix issue when Message is null on Android API19
* added kitkat check and moved check to extension method
* - remove awaken for kit kat and just catch all NPE
* - remove using
Update Xamarin.Forms.Platform.Android/Forms.cs
Does this do all the suggestions?
Co-Authored-By: kingces95 <kingces95@users.noreply.github.com>
ContextCompat.getColor if API < 23
* Implemented Core and iOS
* Implemented Android
* Supressed platform specific obsolete warnings for now
* Implemented UWP
* Make selected page on UWP not rely on title
* Review feedback
* Removed references to (now) obsolete members
* Review feedback fixes
* Code review feedback
* Changed obsolete msg to reflect right XF version
* Apply suggestions from code review
Co-Authored-By: jfversluis <github@geraldversluis.nl>
fixes#3478
* [Android] move renderers to separate nuget
* additional android dependency
* rebase with material changes
* add android to material check
* simplify assembly info
* - add context to Init for future cases
* [Visual] remove visual flag and tidy up code
* - added basic loading ui test
* change material namespaces to be Xamarin.Forms.Material.<Platform>
* api 19 fixes
* fix casing on resources
* [visual] add intellisense popups for visual
* Add visual registrations into type converter
* combine VisualMarker and VisualRendererMarker
* remove visual from class name for intellisense
* set Match Parent to internal
* Remove register code and just scan assemblies
* [Visual] Add Visual Attribute and some additional attribute checks
* remove registrar changes
* renamed to specific VisualTypes
* - move check up to LINQ statement
* Make sure the other platforms can create visuals
* fix renderer names
* move stepper renderer
* rename converter
* [Android] [Material] Refactored the Stepper on Android #5011
- reuse code between default and material
- added material stepper
* [Android] [Material] Using the "Fast" renderer style for the stepper #5011
- switched the button style to the outlined buttons
* [Android] [Material] Adding the tab stops support (#5000)
* [Android] [Material] Switching back to a traditional renderer for now to get tabstops working
* [Material] [iOS] Added a Material stepper for iOS
* [Material] [Android, iOS] Addressed the PR feedback
* [Material] Remove private
* Update MaterialStepperRenderer.cs
* Update StepperRendererManager.cs
* Fixed the merge issues
* add steppers to visual gallery
* The material stepper buttons now resize to fit the available space.
* Update Xamarin.Forms.Controls/ControlGalleryPages/VisualGallery.xaml
Co-Authored-By: mattleibow <mattleibow@live.com>
* [Material] [Stepper] Don't set the background color for steppers
- we still need to decide on the logic behind the coloring of outline buttons
* Fixed the Android accessibility
* Change UI tests to not use a Text search for locating stepper controls
If you want a foolproof way of getting a reference to the assembly from
the Android head project, then just use the EntryAssembly
property of the AppDomain.
* Implement FlowDirection propagation to items in CollectionView; fixes#4583
* Run logical child detachment via CellDisplayingEnded
* Fix Visual propagation on iOS
* Fix Visual propagation on Android
* Fix rebase error
* [Android Material] Linear Progress Indicator (#5079)
Merging into the material "slider" / "progress" bar branch so that we can share some code as they are the same control
* [Material] [Slider, ProgressBar] Updated the progress bard and added the slider
* Renamed the gallery
fixes#5008fixes#5079fixes#5018
* Reanimate IPlatform and mark it obsolete
* Reinstate IPlatform everywhere in case someone is using it or subscribing to
PlatformSet
* Revert breaking parameter name change
* Obsolete IsEnabledPropertyName
* Reinstate and obsolete Realized property and constructor
* Escape string format so solution will build
* Fix previewer reflection test
* Fix interface on Tizen/TizenPlatformServices
* Update Xamarin.Forms.Core/Element.cs
Co-Authored-By: hartez <hartez@users.noreply.github.com>
* [Android, WPF] Fixes rounding down the size of visual elements
[Android] Fixes settting background color for BoxView
* refactoring PrepareLayout action
* address comments
* Prevent snap helpers from snapping until the user interacts with scrolling; fixes#4935
* Lower sensitivity for snapping to kick in on Android
* Remove underscore in method name
* [Android] Refactored and fixed lots of button layout issues
- All text, image and content layout logic has been extracted into a separate manager
- Fixed the issue buttons with just an image changing size
- Fixed a few button padding issues (still needs another look)
- Fixed the issue with the content layout changes not updating the actual button layout
- Fixed image positioning for all (not legacy) buttons
- Material button no longer uses material image layout as it overrides the custom positioning
- Fixed a few other issues where properties don't change the native button, or layouts break the positioning of the image
* [Button] Fixed a whole bunch of issues
- added a platform specific "BorderAdjustsPadding" to Android and iOS to prevent border overlap
- added a new gallery with all sorts of buttons
- improvements to the Android button layout manager
- fixed to the Android button measure/layout process
* [Android] [Button] The preservation of default padding is now a flag
* [iOS] [Button] Extracted all the layout logic for the classic button
- yet to update Material button to use this
- fixed a few issues with the iOS layout
- content layout changes were not updating the control
- top/bottom did not respect spacing
- the native control trimmed text in the getter, so use the value from the element
* Removing the platform specifics as they were the wrong property
- the property is part of the renderer implementation
- Material button on iOS still needs implementing
* Updated the material button to use the layout manager
- the iOS layout logic needs some more investigation
* remove old comments
* A fix for when there is no text and some backwards compatibility
* Added a more realistic set of values
* Restrict the material button border to 1px. See #4951.
* Fixed that issue with the buttons and the padding...
- Removed the inset so that layout is accurate
- set the padding to 8dp to match that of iOS and Material
- set the minimum height to 36 according to Material (it was 48dp, with 12dp total inset, and, 48-12=36)
* Update Xamarin.Forms.Core/Button.cs
Co-Authored-By: mattleibow <mattleibow@live.com>
* Don't add members to the public type
* [Material] Added a button to change text size in the demo page
* appcompat regression fixes
* move state checks around
* fix bad merge
* adding delay to ui tests
* [Android] fixes issue content set after an await is not visible
* [Android] refactoring. Fixes frame inside frame does not resize after visibility changed.
* - add on-screen description to 1332 test
* - add 1760 uitest uses StackLayout
* fix autotest
* Working single selection on iOS
* Fix rebase errors
* Make ItemsLayout a constructor parameter for the Delegator
* Make common VSM states public consts
* Make file and type name match
* Simplify method we'll be completely rewriting while implementing the next feature
* VS didn't save project file changes
* Update submodule
* Add multi-item removal test; handle multi-item removal scenarios on Android;
* Add test harness for adding multiple items to CollectionView at once
* Add test harness for multi-item move/replace; handle Android multi-item move;
Fix bug when replacing differently-sized item sets on Android;
* Add test harness for INotifyCollectionChanged Reset
* Performance improvements and clearer test code
* Remove private modifier
* Fix bug where updating items sources changed source types
* Remove private modifier
* Make index checks clearer
* Remove private modifier
* Remove private modifier
* Move code into if clause
* Use local variable
* Better indication of how to use collection modification tests
* Include end index in items moved
* Make update range include items between source and destination indexes
* Remove commented code
* Remove NavigationMenu & Renderers
- Never completed and there is the new CollectionView
- Only (partially) implemented on iOS/Android
* Removing ToolbarButton and related types
- `ToolbarButton`, `ToolbarImageButton`, `IToolbarButton`
- this appears not to be used at all
- was part of `ToolbarRenderer` in the old Duplo repo, which has since been removed
* Update Xamarin.Forms.Platform.cs
* Automate test for 39072
* Add Focus test category
* Add test instructions
* Use named flags value instead of magic number
* Rearrange keyboard hide/show handling when focus changes; fixes#3647
Clean up usings
Add null checks in case Controls are unloaded before the handler executes
* Update Xamarin.Forms.Platform.Android/ContextExtensions.cs
Co-Authored-By: hartez <hartez@users.noreply.github.com>
* Update Xamarin.Forms.Platform.Android/ViewRenderer.cs
Co-Authored-By: hartez <hartez@users.noreply.github.com>
* Fix bug where programmatic focus of SearchView does not display keyboard;
Add test for programmatic focus of SearchBar, Entry, Editor;
* Prevent object disposed exception if control is disposed before posted ShowKeyboard is run
* Use the auto-generated constants
* [Visual] Work on the Material Frame
* Improving the code for the sample
* Added a controller to help with frames that have additional padding
- Android MaterialCardView does not use the default padding to determine where the content starts, rather it uses the content padding of the view because there is a border that does not affect the content
* [Visual] Added a few extra checks on Android to reduce unnecessary interop
* [Visual] A few more frame changes and some button tweaks
* [Visual] use the themers on iOS and save default properties
* [Visual] Add placeholders for themer and cache defaults
* [Visual] Added the material slider for iOS
- Android does not have a custom control, so uses the existing renderer
* [enhancements] Move from duplicate LoadImageAsync code to GetNativeImageAsync
* [visual] Updated the controls to use the new iOS bits
* [visual] some fixes for material components
* [visual] Added hacks for material alerts
* [visual] removing the alert changes for the main branch
* [visual] Update the MaterialComponents NuGet
* [visual] Rework the theming/customization of Material controls on iOS
* [visual] fix the places where the user colors were being changed
* [visual] Improve the ColorStateList management for Android
* [visual] Re-implemented the Android ProgressBar as a fast, material renderer
* Material Entry
* [visual] Add Android ActivityIndicator
* filter out material layouts for 8.1
* remove folder
* fix __ANDROID_28__
* MaterialContextThemeWrapper
* [visual] remove the `IFrameController` interface
* [visual] reverting the changes to the Frame layout
* [visual] reverting whitespace
* [visual] make sure to raise both property changed
* formatting changes
* fixing colors on android to match with ios themes
* Update Xamarin.Forms.Platform.Android/Material/MaterialButtonRenderer.cs
Co-Authored-By: mattleibow <mattleibow@live.com>
* fix sizing of entry with infinite width size request
* update to release 28 of support
* Update Xamarin.Forms.Platform.Android/Resources/values/styles.xml
Co-Authored-By: PureWeen <shane94@hotmail.com>
* Update Xamarin.Forms.Platform.Android/Resources/values/styles.xml
Co-Authored-By: PureWeen <shane94@hotmail.com>
* PR Comment changes
* min viable fontImageSource
* [UWP] Min viable FontImageSource (#4817)
* [UWP] font image source
* address comment
* [UWP] performance optimization of the rendering of icons font
- the minimum Dpi of the icon is 300
* char -> string; CR feedback
* Implement Android single selection
* Fix naming conflicts with SelectionChangedEventArgs
* Split files by class; make SelectionChangedEventArgs constructors internal;
Optimizations for SelectionChangedEventArgs;
Fire selection changed event/command from property changed handler;
* Update Xamarin.Forms.Core/Items/SelectableItemsView.cs
Co-Authored-By: StephaneDelcroix <stephane@delcroix.org>
* Set default value for SelectedItemProperty
* Remove unnecessary null check
* Fix order of OnElementChanged and Setup/Teardown Element
* Fix project file weirdness
* [*] Drop MenuItem.IsEnabledPropertyName
While doing one of the big refactoring of 2006, we missed an
opportunity to use a propertyKey for IsEnabled, ending up in some
less-than-optimal design choices, like IMenuController.IsEnabledPropertyName.
Properly using a public r-o BP removes the need for IsEnabledPropertyName.
* other plats
* use the key
* 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
* [Android] fixes pop-up dialog in Pickers when you call Focus()
* [Android] Extract the popup-on-focus logic
- the will be useful when other, non-EditText triggers are used
- this can be extended later if more features are needed
- no specific types in base types
* [Android] ItemContentView should use all available space; fixes#4406
Fix inconsistent/inaccurate class naming for cells/views.
* Update Xamarin.Forms.Platform.Android/CollectionView/SizedItemContentView.cs
Add missing space.
Co-Authored-By: hartez <hartez@users.noreply.github.com>
* Make ReuseId values match class names
* [Android] fixes Picker list shows up, when focus is set on other controls
* - fixes Picker outside the cell, when you tap on the adjacent EditBox
- address comments
* [Android] added automated UItest
* [Android] added automated test in the carousel
* correct namespace UITest
* fix uitest
* fix uitest #2
* [Controls] Add test for #4494
* minor formating
* [Shell] The glorious Shell
* set the flag for the test
* remove the FastRenderer flag
* [Android] If we were disposed earlier Element can be null and Control was disposed
* [Controls] Seems part of #2520 was solved so we don't need this
* [iOS] Fix NRE on the ScrollviewTracker
* add missing constructor for RenderWith
* [Core] propagate visual/flow through shell
* use interlock increment
* hide IDataTemplateController
* [Android] Fix TableViewModelRenderer dispose
* [Core] propagate visual/flow direction through shell hierarchy
* [Android-Gallery] removed some left in settings changes that effect UI Tests
* [iOS,Droid,Core] Code formatting
* [iOS,Core] Last minute style refactoring
* Implemented colored spinner for ListView pull-to-refresh
* Added back default spinner color
* Renamed away from "spinner" and did some default value magic
Color.Default reinstated, but also added the default black color in the iOS `UpdateRefreshControlColor` method. Seeing this also happens for the seperator color this is something that is necessary. If not, the spinner is invisible.
* Implemented default color on iOS and right property name on Android
For iOS, when the new `RefreshControlColor` has the default color, the `TintColor` for iOS is set to null, causing the color to be the default one.
Forgot to refactor the new name in the Android renderer, whoops
* Reinstated coloring on listview gallry page
* Implemented colored spinner for ListView pull-to-refresh
* Added back default spinner color
* Renamed away from "spinner" and did some default value magic
Color.Default reinstated, but also added the default black color in the iOS `UpdateRefreshControlColor` method. Seeing this also happens for the seperator color this is something that is necessary. If not, the spinner is invisible.
* Implemented default color on iOS and right property name on Android
For iOS, when the new `RefreshControlColor` has the default color, the `TintColor` for iOS is set to null, causing the color to be the default one.
Forgot to refactor the new name in the Android renderer, whoops
* Reinstated coloring on listview gallry page
* Added documentation for new property
* Fixed merge boo-boos