Win2D pipeline brushes (#3112)
* Added extensions and Win2D helpers
* Added PipelineBuilder type
* Added acrylic and tiles brushes
* Added XamlCompositionBrush type
* Added Win2D/Composition effects
* Added pipeline brush
* Minor code styling tweaks
* Switched composition cache to ConditionalWeakTable<TKey, TValue>
* Minor performance improvements
* More code switched to ConditionalWeakTable<TKey, TValue>
* Fixed missing file header
* Added empty PipelineBrush sample page
* Fixed an incorrect namespace
* Implemented PipelineBrush sample
* Fixed incorrect extensions namespaces
* Reordered using directives
* Code refactoring, added LuminanceToAlpha pipeline effect
* Added C# sample code
* Reordered a using statement
* Renamed some public APIs
* More API refactoring
* Removed unused API
* Reordered a using statement
* Added support for repeated effects in a pipeline
* Animation delegates changed to TimeSpan params
* Added effects setter APIs
* Removed unnecessary remarks
* Added generic parameter to effect setters
* Added generic parameter to effect animations
* Added overloads to set/animate a color effect
* Fixed some XML docs
* Added check for composition capabilities in brushes
* BackdropSaturationBrush switched to pipeline
* Removed unnecessary using directives
* Added pipeline invert effect
* BackdropInvertBrush switched to pipeline
* Reordered using directives
* BackdropBlurBrush switched to pipeline
* Added sepia effect APIs
* BackdropSepiaBrush switched to pipeline
* Added HDR color pipeline initialization APIs
* Minor code refactoring
* More code refactoring
* More code refactoring
* Added exposure effect
* Added grayscale effect
* Minor code refactoring and bug fixes
* Switched to ValueTask<T> to reduce allocations, new APIs
* Removed unnecessary APIs
* Streamlined prebuilt acrylic pipelines
* Added support for live updates in the acrylic brush
* Code refactoring to keep the style consistent
* Added support for noiseless acrylic effects
* Code refactoring
* Added XML remarks with Win2D reference links
* Renamed the TintEffect type
* Added TintEffect
* Added TemperatureAndTintEffect
* Added HueRotationEffect
* Aadded missing capability check
* Removed unnecessary APIs, code refactoring
* Removed an unnecessary resize step
* Win2DImageHelper class renamed to SurfaceLoader
* Unified SurfaceLoader APIs in the .Media package
* Added sample page for the AcrylicBrush
* Updated AcrylicBrush icon
* Added bindings for the AcrylicBrush sample
* Added dependency property to the TilesBrush
* Added sample page for the TilesBrush
* Fixed two XML comments
* Updated tile texture
* Added new brushes to the readme
* Minor code refactoring
* Added support for device lost in SurfaceLoader.Instance
* Updated tile brush texture
* Added opacity to tile brush sample
* Updated the PipelineBrush sample page icon
* Fixed PipelineBrush sample page shallow copy
* Update Microsoft.Toolkit.Uwp.SampleApp/SamplePages/TilesBrush/TilesBrushXaml.bind
Co-authored-by: Michael Hawker MSFT (XAML Llama) <24302614+michael-hawker@users.noreply.github.com>
* Removed unnecessary CU badges
* Update Microsoft.Toolkit.Uwp.UI.Media/Brushes/AcrylicBrush.cs
Co-authored-by: Michael Hawker MSFT (XAML Llama) <24302614+michael-hawker@users.noreply.github.com>
* Added missing effects to shallow copy
* Moved brushes to .Media namespace
* Fixed crash in pipeline sample page
* Switched BlendEffect.Mode to use proxy enum
* Minor code refactoring
* Added unicorn to PipelineBrush sample
* Fixed code URLs for brushes
* Fixed documentation URLs to brushes
* Fix StyleCop Issues with namespaces in Brushes
* Fixed uppercase acronym in public property
* Added DpiMode property to TilesBrush
Co-authored-by: Michael Hawker MSFT (XAML Llama) <michael.hawker@outlook.com>
Co-authored-by: Michael Hawker MSFT (XAML Llama) <24302614+michael-hawker@users.noreply.github.com>