Skip to content

Latest commit

 

History

History
626 lines (358 loc) · 14 KB

ReleaseNotes.md

File metadata and controls

626 lines (358 loc) · 14 KB

2.21.0

  • Fix nullable annotations in WeakEventSource
  • Add extension methods so we can use IServiceProvider with the same notation as IExportProvider.

2.20.0

  • MultiSelectorExtensions support typed arrays as selection source.

2.19.1

  • Stick with System.Composition.AttributedModel Version="[1.4.1]" for Netframework

2.19.0

  • Support scoped service lifetime for Microsoft.Extensions.DependencyInjection

2.18.1

  • Typed MetadataAdapter should be more robust and never throw.

2.18.0

  • Composition: Support typed metadata for services

2.17.4:

  • Update dependencies

2.17.3:

  • Fine-tune AdvancedScrollWheelBehavior, remove dynamic scroll speed adaption

2.17.2:

  • Fine-tune AdvancedScrollWheelBehavior, respect system settings.

2.17.1:

  • AdvancedScrollWheelBehavior: Adjust scrolling speed to be more reasonable

2.17:

  • Replace SmoothScrollingBehavior with AdvancedScrollWheelBehavior
  • Fix scrolling behavior in AdvancedScrollWheelBehavior, improve support for touchpad scrolling
  • Shortcut to attach AdvancedScrollWheelBehavior with or without animation

2.16:

  • Add the smooth scrolling behavior to extend the scroll viewer mouse wheel behavior.

2.15:

  • Fix handling of exported types with contract name: exports should not be reachable without contract name.

2.14.0:

  • Remove ToDictionary extension method in Net8.0 ff to avoid conflicts with existing methods

2.13.0:

  • Fix #18: TableHelper.ParseTable swallows empty lines

2.12.0

  • Fix #17: Trigger Actions not copied when using StyleBindings.Triggers

2.11.0

  • Drop native net7, include net8

2.10.0

  • Restore netstandard2.0

2.9.1

  • Fix focusing of HighlightingTextBlock control

2.9.0

  • Add new HighlightingTextBlock control

2.8.10

  • Fix memory leak in Validation.ShowErrorInTooltip

2.8.9

  • DependencyProperty change tracker should no make assumptions about threads when attaching or releasing event handlers

2.8.8

  • Fix ObservableObject: Using RelayEventsOf may cause memory leak

2.8.7

  • Fix #16: Layout Options context menu over maximize button is not visible on Win11

2.8.6

  • Fix #16: Layout Options context menu over maximize button is not visible on Win11

2.8.5

  • Revert upgrade of System.Composition.AttributedModel

2.8.4

  • Fix #14: PresentationFrameworkExtensions.GetPhysicalPixelSize should not trow exceptions
  • add net6.0 Support

2.8.3

  • Microsoft.Extensions/ExportProviderAdapter service retrieval is compliant with ServiceProvider

2.8.2

  • Microsoft.Extensions/ExportProviderAdapter => GetExportedValueOrDefault may fail if implementation is un-registered.

2.8.1

  • Fix: Nested types are enumerated twice in MetadataReader

2.8.0

  • Fix design flaw in MicrosoftExtensions ExportProviderAdapter

2.7.13

  • Add GetServiceInfo methods

2.7.12

  • Composition.Analyzer: also inspect constructors
  • ExportProviderAdapter must be disposable

2.7.11

  • Fix Composition.Analyzer nuget package

2.7.10

  • Fix Composition.Analyzer nuget package

2.7.9

  • Fix namespace of NonSharedAttribute

2.7.8

  • Add analyzer to support writing DI-framework independent code.

2.7.7

  • Fix UserAccountControl issues with long names/passwords

2.7.6

  • Polyline: set canvas anchors on the child of the ViewportCanvas.

2.7.5

  • ViewportCanvas: Fix minimum constraints

2.7.4

  • ListBoxSelectAllBehavior: SelectAll() must not be called when ListBox is not loaded.

2.7.3

  • Fix #11: ReplaceTextConverter may return wrong result

2.7.2

  • Fix nullable signature of DelegateEqualityComparer
  • Fix focus visual style for the CheckBox w/o content

2.7.1

  • Fix possible stack overflow

2.7.0

  • Use C#9, migrate Nullable annotations, drop JetBrains.Annotations for nullability

2.6.1

  • support net5.0-windows and netcoreapp3.1 targets

2.5.5

  • Fix restore button image

2.5.4

  • Modernize WindowStyle

2.5.3

  • Adjust checkable style of MenuItem

2.5.2

  • CustomNonClientAreaBehavior: DwmExtendFrameIntoClientArea uses margin of 1 to not interfere with child windows (e.g. via WinForms interop)

2.5.1

  • Fix TabControlStyle: design is more VS-like
  • Fix MenuStyle: Add missing InputGestureText + design more VS-like

2.5.0

  • Add attached property to CustomNonClientAreaBehavior to control DWM composition.

2.4.4

  • Fix unexpected cursor in scroll bar thumb
  • Align ListView and ListBox border styles

2.4.3

  • Fix #10: missing RecognizesAccessKey in some buttons.

2.4.2

  • WpfStyles: Support CheckBoxStyle in ToolBar, fine-tune styles.

2.4.1

  • WpfStyles: Fix text-clipping in tool-bar; icon margin in Window.

2.4.0

  • WpfStyles: add ListView and ToolBar

2.3.2

  • Fix nullable annotations

2.3.1

  • Fix nullable annotations

2.3

  • Add nullable helpers

2.2.1

  • MetaDataReader: Support Enums as attribute arguments

2.2

  • Add ScrollBar, ScrollViewer and Expander style
  • Fix some color usages to fully support theming of styles

2.1.1

  • Fix Ninject ExportProvider for singletons with multiple exports.

2.1

  • Introduce SemanticVersion class
  • WPF window style: allow to have some additional content in the title bar.
  • Add GitHubTasks to check for new releases.
  • Improve performance of TextBoxVisibleWhiteSpaceDecorator.

2.0.2

  • MetadataReader properly reads MEF1 creation policy.
  • Fine-tune nullability annotations.
  • Fix Ninject bindings for singletons with multiple exports.

2.0.1

  • Refactored for target frameworks Net 4.5, NetStandard 2.0/Net Core 3.0
  • Renamed TomsToolbox.Core to TomsToolbox.Essentials to avoid naming confusion with .NetCore
  • Visual Composition: Decoupled DI container from usage. Now you can use the DI container of your choice.
  • Migrated System.Windows.Interactivity to Microsoft.Xaml.Behaviors

1.0.75.0

  • Add ThreadBoundTaskScheduler and BindingRelay class.

1.0.74.0

  • Fix ComboBoxStyle: Cursor of editable combo box is not visible in dark mode.

1.0.73.0

  • Added StyleBindings also for Column- and RowDefinitions
  • VisualCompositionBehavior: Defer ExportProvider check to avoid false warnings; during unload export provider is released while the visual is still loaded.

1.0.72.0

  • Extend tracing of VisualComposition

1.0.71.0

  • Add trace capabilities to VisualComposition

1.0.70.0

  • Correctly redraw window resize buttons when resizing window via mouse drag
  • Fix in CustomNonClientAreaBehavior: When taskbar is set to auto-hide, it sometimes does not appear when window is maximized.
  • Fix SampleApp click once prerequisites

1.0.69.0

  • Fix: missing 4.5 extensions in TomsToolbox.Desktop

1.0.68.0

  • Add an icon control that dynamically displays the image best fitting the actual size.
  • Fix possible flickering of window when using the custom style.
  • Provide an explicit .net45 version with all packages to fix issues with referenced packages (e.g. System.Windows.Interactivity).

1.0.67.0

  • Use weak reference in ObservableObjectBase.RelayEvents to avoid memory leaks

1.0.66.0

  • Add dependency property change tracker for framework elements that avoids accidental memory leaks

1.0.65.0

  • Add XAML extensions for Button
  • CustomNonClientAreaBehavior: Fix Maximized window handling
  • Fix memory leaks in visual composition
  • Add a TimerTrigger that continuously fires and avoids the memory leak of the Microsoft.Expression.Interactivity version.
  • Add a WeakEventSource class
  • Drop CodeContracts support

1.0.64.0

  • Speedup TextBoxVisibleWhiteSpaceDecorator

1.0.63.0

  • Rename private method SetRegionId, R# gets confused and shows false errors.
  • Add missing nullability annotations

1.0.62.0

  • Add ThemeResourceLoader support to window style

1.0.61.0

  • Remove runtime dependency to Jetbrains.Annotations, replace with external annotations
  • Add missing nullability annotations

1.0.60.0

  • Fix data grid header styles
  • Add possibility to set more than on group style via StyleBindings
  • Add style for Window class
  • Add ToDictionary from IEnumerable{KeyValuePair} extension method
  • Improve DispatcherThrottle implementation
  • Support NetStandard (TomsToolbox.Essentials)

1.0.59.0

  • Add a VirtualizingDoubleClickPanel (same as DoubleClickPanel, but derived from VirtualizingPanel).

1.0.58.0

  • Fix ItemsControlExtensions.DefaultItemCommand: Avoid duplicate executions on nested controls.

1.0.57.0

  • Added R# [CanBeNull] on all unannotated parameters.

1.0.56.0

  • CustomNonClientAreaBehavior: Schedule a redraw after WM_NCACTIVATE; if DWM composition is disabled, DefWindowProc(...WM_NCACTIVATE..) does some extra drawing on the window frame.

1.0.55.0

  • Add GetItemContainers extension method for ItemsControl.
  • InPlaceEdit: Support text alignment and begin edit on enter if focused.
  • Add VisualAncestors extension method.
  • Add a validation template for Validar.Fody with DataAnnotations.
  • Added HashCode class.

1.0.54.0

  • Remove reference to JetBrains.ExternalAnnotations.

1.0.53.0

  • Added WPF Styles.
  • Added R# [NotNull] annotations to complement Code Contracts.

1.0.52.0

  • Extend CommandRoutingBehavior to track focus to update the active instance.

1.0.51.0

1.0.50.0

  • ObservableObject: Pass validation context to ValidationAttribute.

1.0.49.0

  • Speed up SelectGroupOnGroupHeaderClickBehavior.

1.0.48.0

  • VisualComposition runtime error handling.

1.0.47.0

  • Add ListBoxSelectAllBehavior.

1.0.46.0

  • CustomNonClientAreaBehavior: Handle SizeToContent.

1.0.45.0

  • Add liveTrackingProperties parameter also to ObservableWhere extension.
  • Use DWM to draw the glass frame in custom windows + minor fixes.
  • Add generic dialog commands to build generic dialogs.

1.0.44.0

  • Support live filtering in ObservableFilteredCollection/ObservableWhere.

1.0.43.0

  • Fix performance issues of the ObservableCompositeCollection indexer.

1.0.42.0

  • Add ImportBehavior.
  • DataTemplate.Role also works with ContentPresenter.

1.0.41.0

  • Refactor visual composition to not require the IComposablePart interface and allow lazy setting of the export provider.

1.0.40.0

  • Extend ObservableObject to enable validation error tracking.
  • Add additional classes.

1.0.39.0

  • ObservableCompositeCollection: Property changed for Count property not always raised.

1.0.38.0

  • Split ObservableObject to have a serializable base class.
  • Focus not set when MultiSelectorExtensions selects single item via SourceSelection_CollectionChanged.

1.0.37.0

  • Fix command routing behavior: Detach does not work if called after unloading.

1.0.36.0

  • Role property should be of type object everywhere.

1.0.35.0

  • Make attributes serializable.
  • Define xmlns prefix.
  • Fix missing parameters in AppDomainHelper.

1.0.34.0

  • Add UnaryOperationConverter and AggregatingMultiValueConverter.
  • Enhance DateTimeSource and UpdatePropertyAction.
  • Fix BinaryOperationConverter for DateTime operations.

1.0.33.0

  • Attributed validation support for ObservableObject.
  • ClipoardHelper: Default to TEXT, as CSV is not Unicode.
  • Enhance all converters (usage, error handling, tracing).

1.0.32.0

  • UpdatePropertyAction: Stop updating the binding when the target has been unloaded.
  • Added: AssemblyExtensions, HighResolutionTimer.
  • Fix ClipboardHelper (broken parsing of quoted strings).

1.0.31.0

  • Clipboard helper: proper handling for a single cell that contains only white space.

1.0.30.0

  • Add clipboard helper to support table data exchange via clipboard.

1.0.29.0

  • Fix raise condition in ThreadWithDispatcher.
  • Visual composition behavior works with free threaded export provider.
  • ItemsControlCompositionBehavior forces the selection of the first element after applying the content if the target is a selector.

1.0.28.0

  • Fix/Rename ObservableFilteredCollection and add ObservableWhere extension.

1.0.27.0

  • Improve ObjectToText converter.
  • Add StringToObject converter.

1.0.26.0

  • Fix typo in CommandRoutingBehavior.IsChecked property.

1.0.25.0

  • Composite commands re-factored.

1.0.24.0

  • Add Logical, Arithmetic, and Composite MultiValueConverters.

1.0.23.0

  • Add KeyboardNavigation helper class.
  • Add BinaryOperationConverter class.

1.0.22.0

  • UpdatePropertiesAction => UpdatePropertyAction, improves usability; add usage sample.

1.0.21.0

  • Extend CommandRoutingBehavior by CommandParameter.
  • Add WindowButtonsBehavior for default button handling.

1.0.20.0

  • Add DataTemplate helper.
  • Add Interactivity style bindings.
  • Add CustomNonClientAreaBehavior class.
  • Add DateTimeSource class.
  • Add DoubleClickPanel class.
  • Add WindowsCommands class.
  • AllowRecomposition in ImportExtension class.

1.0.19.0

  • Improve import error messages.
  • Add composite command handling.

1.0.18.0

  • Add LegacyV2RuntimeActivationPolicy helper.
  • Restructure composition framework, fix export provider locator issues and adapt sample application to use dynamic export provider locator.
  • Add portable version of Core and .Net45 version of Desktop.

1.0.17.0

  • Add Import markup extension.
  • Simplify ComposableContentControl, improve loading behavior.

1.0.16.0

  • Add FrameworkElementBehavior and UpdatePropertiesAction.
  • Fix ComposableContentControl loading behavior.

1.0.15.0

  • Add performant ToArray() for collections.
  • Add HGlobal class for proper handling of unmanaged memory.

1.0.14.0

  • Added optional change callback to ObservableObject.SetProperty.

1.0.13.0

  • Fix alignment problem in SharedWidthHeaderedContentControl.
  • Clean up/improve the sample application.
  • MultiSelectorExtensions - no more updating if items control is about to be unloaded.

1.0.12.0

  • Adapt DependencyObject usage and extensions after fixing CodeContract.

1.0.11.0

  • Add VisualComposition framework.
  • Add TextBoxVisibleWhiteSpaceDecorator.

1.0.10.0

  • Preserve Jetbrains.Annotations attributes.

1.0.9.0

  • Fix a bug in MultiSelectorExtensions.

1.0.8.0

  • Add FilteredObservableCollection, XmlExtensions, and dependency property change tracking.

1.0.7.0

  • Add new features.

1.0.6.0

  • Upgrade JetBrains.Annotations.
  • Add culture info helper extensions.

1.0.5.0

  • Add type converter support and ObservablePropertyChangeTracker.

1.0.4.0

  • Add map control and various behaviors.

1.0.3.0

  • Add controls and converters.

1.0.2.0

  • Simplified non-generic DelegateCommand (risk of recursive calls).

1.0.1.0

  • Fixed NuGet packages: CodeContract libraries were added as reference.

1.0.0.0

  • Initial version.