* TPV fixes and added CG demos
* - simplify two page sample
* - fixes
* - uwp screen size fixes
* - performance updates
* - android alive check
* - code cleanup and more samples
* - additional gallery updates
* - add one shot hinge angle to android head
* - add text
* - dispose of hinge changes
* - unit test compile fix
* - split hinge angle into separate file
* MediaElement and iOS/Android/UWP renderers.
* Added basic WPF renderer. Fixed sizing issue on UWP renderer. Added sample page to ControlGallery app
* MediaEnded event on UWP. Source Uri convert ms-appx to pack:// uri scheme on WPF
* code style fixes
* resolving conflicts
* Following discussion on PR made NaturalDuration a nullable TimeSpan so that can determine when value is not present.
Added CanSeek property to indicate when Position property can be set.
Added support for KeepScreenOn to WPF renderer.
Improved ControlGallery page with separate Play/Pause/Stop buttons and label to display current state
* coding style fixes
* coding style fixes 2
* Improved media controls on demo page. Renderer enhancements for Android and iOS
* Improved logic around media metadata in iOS renderer.
Switched to https video uri to allow playback in iOS. Increased media control button sizes
* Improved parsing of ms-appdata uris supporting both the local and temp folders
* Removed redundant Debug.WriteLines. Removed XML docs from MediaElement and MediaElementState types.
* Bug fix for iOS MediaElement.Source Uri escape handling
* Adding MediaElement fast renderer for Android
* Rearchitecting the Element/Renderer connectivity. New WPF,UAP and Android FastRenderer complete. Still requires Android classic renderer and iOS renderer...
* More MediaElement renderer development. Converted iOS to a FastRenderer
* Latest android renderer
* Android renderer fix for StopPlayback reusability. MetadataRetreiver now loaded async.
* Added an IMediaElementController property to Android renderers to simplify code.
* Simplified Aspect property
* Changed AreTransportControlsEnabled to ShowsPlaybackControls. Removed commented-out code.
* merging
* merging
* added mediaelementrenderer back
* support for polling the position property. Added timer to demopage to poll for position.
* Fixed scaling issue on iOS and background color
* Renderer code review issues
* Implementing MediaSource (ImageSource pattern) to replace Uris. Other code cleaning fixes.
* Hooked up MediaSource and kept uri custom schema logic
* Moved all the "callback" methods to the IMediaElementController interface so they are not publicly exposed on the MediaElement. Removed HttpHeaders and associated code for v1 release. Other code tidying.
* Code review feedback
* Integrated unit tests. Added support for inherited binding on MediaSource.
* Additional Windows file path test. Fix for UWP renderer to check if Control is released
* Fix for FormsVideoView metadata causing aspect issues. Simplified Android FastRenderer to correctly handle VideoView lifetime.
* fixed merge error
* fixed merge errors
* MediaElement and iOS/Android/UWP renderers.
* Added basic WPF renderer. Fixed sizing issue on UWP renderer. Added sample page to ControlGallery app
* MediaEnded event on UWP. Source Uri convert ms-appx to pack:// uri scheme on WPF
* code style fixes
* resolving conflicts
* Following discussion on PR made NaturalDuration a nullable TimeSpan so that can determine when value is not present.
Added CanSeek property to indicate when Position property can be set.
Added support for KeepScreenOn to WPF renderer.
Improved ControlGallery page with separate Play/Pause/Stop buttons and label to display current state
* coding style fixes
* coding style fixes 2
* Improved media controls on demo page. Renderer enhancements for Android and iOS
* Improved logic around media metadata in iOS renderer.
Switched to https video uri to allow playback in iOS. Increased media control button sizes
* Improved parsing of ms-appdata uris supporting both the local and temp folders
* Removed redundant Debug.WriteLines. Removed XML docs from MediaElement and MediaElementState types.
* Bug fix for iOS MediaElement.Source Uri escape handling
* Adding MediaElement fast renderer for Android
* Rearchitecting the Element/Renderer connectivity. New WPF,UAP and Android FastRenderer complete. Still requires Android classic renderer and iOS renderer...
* More MediaElement renderer development. Converted iOS to a FastRenderer
* Latest android renderer
* Android renderer fix for StopPlayback reusability. MetadataRetreiver now loaded async.
* Added an IMediaElementController property to Android renderers to simplify code.
* Simplified Aspect property
* Changed AreTransportControlsEnabled to ShowsPlaybackControls. Removed commented-out code.
* merging
* support for polling the position property. Added timer to demopage to poll for position.
* Fixed scaling issue on iOS and background color
* Renderer code review issues
* Implementing MediaSource (ImageSource pattern) to replace Uris. Other code cleaning fixes.
* Hooked up MediaSource and kept uri custom schema logic
* Moved all the "callback" methods to the IMediaElementController interface so they are not publicly exposed on the MediaElement. Removed HttpHeaders and associated code for v1 release. Other code tidying.
* Code review feedback
* Integrated unit tests. Added support for inherited binding on MediaSource.
* Additional Windows file path test. Fix for UWP renderer to check if Control is released
* Fix for FormsVideoView metadata causing aspect issues. Simplified Android FastRenderer to correctly handle VideoView lifetime.
* fixed merge error
* manual merge fixes
* Fixed missing FileMediaSourceConverter
* Fixed merge issue with iOS project file
* Clarification to WPF Source Uri exception message
* Changed iOS local path to the Library path as this is not user visible or synchronised with iCloud. Fix for breaking change in WeakEventManager
* Added Volume property
* Fixes for code-review feedback
* Optimised iOS renderer to remove a view layer
* fixes to resolve possible rotation bug
* Moved ms-appdata parsing to shared location.
* fixed codesign error
* Fix for issue on Android where control may show black screen prior to video playing - now respects backgroundcolor property
* Renamed conflicting extensions class
* Add experimental flag; remove slow renderer
* Update MediaElementDemoPage.cs
* Update MediaElementRenderer.cs
* Update MediaElementRenderer.cs
* Porting latest renderer updates. iOS re-written as a non-fast renderer to workaround issue with dispose when using on modal pages.
* Fixed protected member in sealed class issue
Co-authored-by: Rui Marinho <me@ruimarinho.net>
Co-authored-by: Samantha Houts <samhouts@users.noreply.github.com>
fixes#1692
Co-authored-by: Peter Foot <peter@inthehand.com>
* Added Windows Platform Specific to avoid set the default image directory
* Fixed build error
* Renamed ImageSearchDirectory to ImageDirectory
* Fixed build error
* Undo Issue8525 changes
* Revert changes in Issue8525
* Add image animation API.
* Add animated image tests.
* Add animated image UWP implementation.
* Add animated image IOS implementation.
* Add animated image Android implementation.
Also include GIF image parser base class + android parser sub class.
* Add animation finished playing event to Android/IOS for image.
* Add fallback when loading none GIF as animation image.
* Adding a couple of additional tests for animated images.
* Adjusting image animation support based on PR feedback.
* Add support to reload as animated image on StartAnimation call.
* Add UITest and activity indicator when loading from source for Issue1704.
* Reduce number of temporary bitmaps when scaling.
* Implemented review feedback.
* Animation problems related to Android API level 19 and earlier
due to a couple of bugs and changed behavior in AnimationDrawable class.
Implemented a couple of fixes and workaround related to these bugs, fixing
the animation issues on devices before Android Lollipop.
* Moved a couple of methods implemented in FormsAnimationDrawable into an
interface that is used to hide implementation details. Enables possibility
to factor different implementations of animation support going forward.
* Fixed review feedback and comments.
* Notify IOS to redraw control when changing animation layer.
* - android rebase fixes
* - first set of iOS changes for gifs
* - uwp Gif changes
* - clean up android gif code and enable gif for ImageButtons
* - cleanup iOS gif implementation
* - fix imagebutton and other sources
* - add imagebutton to tests
* - getting rid of start/stop and just using IsAnimationPlaying
* - image button
* - adding animation handler for android
* - replace gifs
* - fix rebase issues
* Added gif samples in Core Gallery
* Updated gif Core Gallery sample
* Fixed UWP gif samples path
* - remove auto play
- fix uwp so it plays correctly on load
* Added support to Url gifs on Android
* - fix rebase
* - fix NRE and iOS repeat
* - fix android loop counter
* - fix animation stopped on ios
* - fix removed ImageHandler interface Android
* - add top margin so ui tests can click button
* 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
* Swipe To Refresh
* pull in pull to refresh
* api changes
* Added RefreshView CoreGallery and Gallery Samples (using ScrollView, ListView, CollectionView, etc.)
* Code refactoring in RefreshViewRenderer (iOS)
* Updated RefreshView Android Renderer
* Fixed RefreshView Android samples in Core Gallery
* Added initial RefreshView UWP implementation
* Added another UWP RefreshView renderer using WinUI NuGet controls (RefreshContainer)
* - additional linker settings
* - uwp fixes
* - disable SkipMicrosoftUIXamlCheckTargetPlatformVersion check
* Update .nuspec/Xamarin.Forms.targets
* Limited RefreshView in Android to support only content using scroll.
Small changes in RefreshView iOS renderer.
Updated Core Gallery RefreshView samples.
* Fixed Visualizer colors in UWP RefreshView
* Added UWP RefreshPullDirection Platform Specific
* Small changes in code syntax in iOS renderer.
* Removed some unnecessary curly braces .
* Register effect provider in iOS RefreshView
* Changes in RefreshView UWP Dispose
* Added conditional code to manage the refresh control differently if it is iOS 10 or higher.
* Fixed error in Android Core Gallery (Linker)
Code refactoring and small changes (PR Feedback)
* Changes disposing the Android renderer
* - fix SkipMicrosoftUIXamlCheckTargetPlatformVersion so it can be turned off
* Removed UWP RefreshView renderer and Platform Specific
* - remove winui from nuspec
* - remove skip checks from targets
* - remove XamlControlsResources
* - remove skip check on UAP platform
* Revert changes in Android Core Gallery manifiest
* Revert unnecessary space in UAP Platform csproj
* Removed unnecessary new line in UWP Resources
* Simplified RefreshView iOS Renderer.
fixes#5882
* Changes to support multiple windows on UWP
* Locker on Layout.cs to prevent concurrency
* Changes on UnitTests to work with multi-window
* implemented Xamarin.Forms.Core and UAP Element.Dispatcher
* Implementation on each platform
* Implementation on each platform
* Improved Element casting for Dispatcher utilization
* Correction of the items presented in the code review
* Control Gallery for Multiple Window and Code Review
* [UnitTests]Add missing file
* Correction for Unit Tests
* Correction for Unit Tests
* Correction for Unit Tests - Removed ThreadStatic in Ticker
* removed thread static
* removed thread static into application class
* Update Control Gallery
* Code Review (Changes)
* Comment
* Adjust StackOverflow when close the app
* Performace improvements
* - fix merge and ui test performance
* Name of method and adjust on NavigationProxy
* Adjustments in the implementation of the DispatcherManager
* Updated the ListProxy method and adjust the initialization of dispacther on page.
* Remove GetDispacther method from IPlatformServices and some adjusments of code review.
* Adjust after merge on NavigationProxy
* Register IDispatcherProvider on Xamarin.Forms.Core.UnitTests
* Adjustments for correct unit tests operation
* Adjustments for correct unit tests operation
* remove spaces
* Adjust for UITests
* Remove IsInvokeRequired and adjusted de instance of s_resolutionList
* Remove lock() on ResolveLayoutChanges method
* Make IDispatcher implementations internal
* Removed Dispatcher association from Element and Page class. Removed Child Assignment in Element Class and ThreadStatic Removal from NavigationProxy Property
* Remove DispatcherManager; contain thread static to UWP implementation
* Make dispatcher lazy
* MockDispatcherProvider on Xaml.UnitTests
* Add mock Dispatcher and DispatcherProvider for XAML unit tests
* Revert "Add mock Dispatcher and DispatcherProvider for XAML unit tests"
This reverts commit 134320d348a3812e44507ae0b50459c8f43478e9.
* Add MockDispactcherProvider on Pager.UnitTests
* Revert covariance change
* Centralize dispatcher checking logic
* Add a fallback dispatcher for platforms without a registered DispatcherProvider
* Remove Dispatcher/DispatcherProvider from project
* Allow UI test pages which use ListProxy to get a dispatcher in UITest mode
* Prevent crash instantiating UITest version of Issue2004
* Removed unnecessary old codes
* Clean up whitespace changes
* Remove unused method
* 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
* [Build] Remove submodule
* [Build] Use GitInfo to set Assembly metadata
* [Build] Remove extra prop
* [Build] Update version
* [Build] Update versions to be consistent with existing Build.Tasks
* [Build] Update build number
* [Build] make sure build tasks gets info
* [Build] Add assembly info unit test
* [Test] Refactor test for gitinfo on vsts
* Make secondary window work in UWP (fixes#2229)
* Update Xamarin.Forms.Core/Internals/Ticker.cs
Co-Authored-By: hartez <hartez@users.noreply.github.com>
* 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
* Updated all the OpenTK references to use NuGet
- Using the same NuGet version of OpenTK across the board
- Added a gallery factory to allow for platform-specific pages
- Added the OpenGL galleries to Android, iOS, GTK# and WPF
* Fix the build for iOS and macOS
* Fix the modified defines for the control gallery
* 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
* 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
* Changed the namespace for all the issues to Xamarin.Forms.Controls.Issues
* Moved some classes to Control directory with namespace Xamarin.Forms.Controls to fix conflicts after namespaces changes
* Fixed missed namespace for ButtonExtension
* Fixed namespace reference of Bugzilla42602 in WindowsUniversal/CustomRenderers.cs
* 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
* 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
* Add RegistrarValidationService to test presence of renderers
* [iOS] Restore NativeViewWrapper registration
fixes#2757
* [Android] Prevent NRE in ListViewAdapter
* Add repro for 2489
- Repo steps are to swap to the TabbedPage root; if the tabs are still visbile, test has passed.
- Also add Preserve attribute to the core test pages so we can test with the Android linker on.
* [Android] Add note to remind us where the renderers are registered
* [iOS] Switch to loading renderers via RenderWithAttribute
* [Core] Ensure that the most specific renderer is returned by Registrar.GetHandlerType
fixes#2489
* [Core] Prevent insane loop
* implement review feedback