Changelog
Version 2.2.6
Released 7 Jan 2020 - Download
- Feature Support for XCode 11
- Feature Exposed CheckAccess and VerifyAccess in DispatcherObject (#1470).
- Feature Added Placeholder text extension for TextBlock and PasswordBox templates.
- Feature C# Implemented Dispatcher and ThreadSwitcher (#1548).
- Feature Unity New Visual Studio Project Template.
- Enhancement No more binding errors when clearing or changing ObservableCollection (#1572).
- Enhancement Unity Moved Interactivity folder out of Samples.
- Enhancement C# Touch events implemented.
- Fixed Crash using InlineUIContainer inside style (#1594).
- Fixed Crash specifying unknown TargetName in Trigger Setter (#1603).
- Fixed Crash destroying interactivity EventTrigger with SourceName.
- Fixed Crash changing IsDropDownOpen while destroying ComboBox.
- Fixed ComboBox closing dropdown when changing item collection.
- Fixed ComboBox moving focus to dropdown or edit box when not focused.
- Fixed Layout freezing when changing over-element visibility (#1599, #1600).
- Fixed NaN not handled correctly in bindings (#1555).
- Fixed Changes to Row and Column in Grid while measuring being ignored (#1582).
- Fixed GridViewColumnHeader Click event not being raised (#937, #1499).
- Fixed GridViewColumn bindings not working inside a template (#1559).
- Fixed Style resource not applied to GridViewColumn's DisplayMemberBinding (#1570).
- Fixed Directional navigation not working when intermediary UI element getting collapsed (#1604).
- Fixed Separator control not rendering (#1602).
- Fixed Command converter not supporting prefixes in xaml (#1561).
- Fixed Opacity groups disappearing when overlapping bottom screen edge (#1565 #1574).
- Fixed StoryboardCompletedTrigger not working when used inside template (#1576).
- Fixed ControlStoryboardAction cannot use Storyboard defined in application resources (#1575).
- Fixed Unity Exception creating multiple TextureSource (#1607).
- Fixed Unity Eliminated GC allocs when gamepad not mapped (#1587)
- Fixed Unity Scrolling on touchpad not working (#1347).
- Fixed C# Bad performance when lots of extends being kept alive.
- Fixed C# UICollection compatible with Xamarin.Mac 6.2.0.42.
- Fixed C# SupportsFocusEngagement not recognized in Noesis.GUI.Extensions (#1560).
- Fixed C# PasswordLength extension property not working correctly in Blend.
Version 2.2.5
Released 27 Sept 2019 - Download
- Feature C# Support for linux-arm and linux-arm64.
- Enhancement C# Projects for linux samples using NETCore.
- Fixed C# Linux samples using EGL render context for ARM architectures.
- Fixed C# Native interop problems for XDisplay in 32 bit systems.
- Fixed C# Incorrect Enumerator implementation producing GC allocs.
- Fixed C# Searching for extend proxies producing GC allocs.
- Fixed C# Bad performance dealing with lots of extend proxies.
- Fixed C# DictionaryIndexer proxies not working.
- Fixed C# Crash using some classes without initializing Noesis (#1538).
- Fixed Crash unregistering binding to destroyed GridViewRowPresenter.
- Fixed UI freeze when hiding and showing Popups.
- Fixed Crash destroying UI tree with a ControlStoryboardAction.
- Fixed Controllable storyboards removing animated values when restarted.
- Fixed Crash using interactivity EventTrigger in a Storyboard resource.
Version 2.2.4
Released 23 Aug 2019 - Download
- Feature Support for Unity 2019.2.
- Feature Support for XCode 10.3 (iOS Deployment Target is now to 8.0+).
- Feature Support for GCC 8.
- Feature Raspberry Pi 4 officially supported.
- Feature Implemented GamepadTrigger to specify gamepad input in Blend.
- Enhancement Unity Added note to Blend tutorial conflicts with Visual Studio project name.
- Enhancement Added Thickness constructor with 2 arguments (#1492).
- Enhancement Implemented Copy/Paste event handling.
- Enhancement Zoom from mouse wheel added to TranslateZoomRotateBehavior (#1486).
- Enhancement Improved documentation about x:Static extension (#1353).
- Enhancement Added support in x:Static extension for RoutedEvents defined in classes.
- Enhancement ContentPresenter checking if content already connected to another visual parent.
- Enhancement Better error message when using a non-null default value in collections.
- Enhancement Added support for overriding how C# Application logs messages.
- Enhancement TouchUp promotion to Mouse now includes an extra MouseMove (as in WPF).
- Fixed Out of range assert in VGLTextLayout HitTestPoint.
- Fixed Assert when closing a MenuItem.
- Fixed ContentControl content object not released after Content property nulled (#1495).
- Fixed Weird selectable rectangle rendered in ListView headers (#1502).
- Fixed ToolTip not disappearing when the mouse leaving hosting window (#1511).
- Fixed MouseDragElementBehavior not working in parents with TranslateZoomRotateBehavior (#1487).
- Fixed Crash on DynamicResource with a null key (#1515).
- Fixed Binding nested dictionaries not working (#1501).
- Fixed ColumnDefinition MinWidth and MaxHeight incorrectly accepting NaN values (#1516).
- Fixed TSF candidate window shown even if focus is not in a TextBox (#1514).
- Fixed Removed unnecessary TSF document disable code when HideKeyboard.
- Fixed Unloaded event raised after element is disconnected from the View as it occurs in WPF.
- Fixed Crash destroying Visual with UIElementCollection dependency property with children.
- Fixed Crash destroying UIElementCollection or VisualCollection parent before collection.
- Fixed Resource lookup not searching in all BasedOn style chain.
- Fixed Infinite layout loop when using same Visual as Content in 2 ContentPresenters (#1529).
- Fixed Partially resolved Binding path incorrectly notifying of read-only error.
- Fixed Access violation exception when clicking in a ListBox item (#1528).
- Fixed Storyboards fired with Begin() version should be controllable.
- Fixed ControlStoryboardAction inside template incorrectly referencing cloned storyboard.
- Fixed ControlStoryboardAction not working properly when used inside templates.
- Fixed ConditionBehavior inside template ignored for PropertyChangedTrigger and DataTrigger.
- Fixed DataTrigger not working when trigger value is null.
- Fixed Crash when FocusVisualStyle control was incorrectly focused.
- Fixed Crash clearing InlineCollection that contains InlineUIContainer (#1542).
- Fixed StackPanel ScrollData not going through custom allocator (#1541).
- Fixed Crash when mouse capture changed while raising MouseLeave events (#1518).
- Fixed Missing namespace in macro NS_IMPLEMENT_INLINE_REFLECTION_ENUM (#1422).
- Fixed Cannot stop manipulation inertia in ScrollViewer (#866, #1405, #1072).
- Fixed Can't get Touch captured element (#1489).
- Fixed LostTouchCapture not raised after manipulations are completed (#1488).
- Fixed Wrong GetTouchPosition result in GotTouchCapture callback (#885).
- Fixed C# Exposed TouchDevice and Captured element (#1489).
- Fixed Unity Packages folder incorrectly being preprocessed (#1508).
- Fixed Unity XAML freezes Unity on Begin MonoManager ReloadAssembly (#1388).
- Fixed Unity Event handlers not be called during ReloadAssembly (#1491).
- Fixed Unity Button Click event not raised when pressing gamepad Accept (#1524).
- Fixed Unity Using the delegate version of VisualTree.HitTest crashes Unity (#1527).
- Fixed Unity System fonts not working in iOS 9 and lower (#1520).
Version 2.2.3
Released 10 Jun 2019 - Download
- Enhancement C# Exposed MainWindow in Application.
- Enhancement C# Exposed Rendering event in Window.
- Enhancement C# Added support for fullscreen to XDisplay.
- Enhancement C# Embedded providers constructed now with Assembly and Namespace.
- Enhancement C# Fallback embedded providers no longer overridable.
- Enhancement C# Removed dependency to OpenGL.Net NuGet.
- Enhancement Added IView.Scroll(x, y, value) overloaded method.
- Enhancement Binding logs removed in release builds.
- Enhancement Improved Drag & Drop behaviors in Inventory sample.
- Fixed Can't write more than one character in an editable ComboBox (#1477).
- Fixed Double clicking on TreeViewItem collapses root node (#1466).
- Fixed TextBlock LineStackingStrategy property value not inherited (#1460).
- Fixed Crash closing ToolTip with bindings.
- Fixed Selector resetting SelectedIndex and SelectedItem bound properties on DataContext changes.
- Fixed BindingOperations GetBindingExpression working only for local values.
- Fixed Expressions recreated when invalidating dependency properties.
- Fixed Using StaticResource in ChangePropertyAction value not working.
- Fixed Crash closing the Window (#1424).
- Fixed C# Text input not working in AppKitDisplay, UIKitDisplay and XDisplay.
- Fixed C# Incorrectly using dynamic code in iOS.
- Fixed C# GoToStateAction not working (#1464).
- Fixed Unity NoesisView icon not showing in inspector.
- Fixed Unity Fatal error in Xaml parser trying to create an UIElementCollection (#1461).
- Fixed Unity Noesis DLL crash on Alt-Tab (#1459).
- Fixed Unity Upside down images on OpacityMask when FlipY was enabled (#1462).
Version 2.2.2
Released 26 Apr 2019 - Download
- Feature Support for Unity 2019.1.
- Feature Support for Unreal Engine 4.22.
- Enhancement Unity Native allocated memory exposed in Noesis settings panel.
- Enhancement C# Removed unnecessary TypeHandle comparisons in proxies.
- Enhancement Improvements to performance and stability of Metal renderer.
- Fixed Unity Gamepad input using GetAxisRaw instead of GetAxis.
- Fixed Unity Noesis renders to wrong camera in multi-camera case (#1427).
- Fixed PointToScreen not throwing error when element not connected to visual tree (#1378).
- Fixed ToolTipService SetToolTip with null element crashing (#1423).
- Fixed Resources DataContext not behaving as in WPF (#1004).
- Fixed ToolBarOverflowPanel incorrectly doing layout sometimes.
- Fixed Routed commands cannot be defined in XAML (#1122).
- Fixed Unity Editor crashing on TextBox Focus() (#1447).
- Fixed C# DataBinding to Uri properties not working (#1449).
- Fixed C# BitmapImage support for spaces in path broken in 2.2.1 (#1455).
- Fixed C# BitmapImage strips leading "/" in paths on Linux (#1456).
- Fixed LoadXAML crashing with DataTemplate as root element (#1439).
- Fixed ContextMenu and ToolTip stays unclosed when window deactivated (#1438).
- Fixed ToolTip InitialShowDelay incorrectly reset when mouse moved over element.
- Fixed Several bugs related to opacity and projection (#1120, #1321, #1373, #1374).
- Fixed ListView without ListView.View section not displaying items (#493).
- Fixed Changes to GridViewColumnHeader header not updated (#1420).
- Fixed GridView header properties ignored (#1420).
- Fixed PasswordBox not showing caret when placed inside a ScrollViewer.
Version 2.2.1
- Feature Unity Implemented support for Scriptable Render Pipeline (#1372 #1386).
- Enhancement Unity Package installing Blend solution for included samples.
- Enhancement Unity 'Enable Gamepad' property added to View component. Disabled by default.
- Enhancement Unity Added support for gamepad Scroll and HScroll input events.
- Enhancement Unity Samples configured to support Xbox controller.
- Enhancement C# Added support for pack uris in code-behind. Required for viewing images at edit-time in Blend.
- Enhancement Scroll and HScroll View functions are now frame-rate independent.
- Enhancement App Implemented auto repeat for gamepad buttons.
- Enhancement App Right stick mapped to View scroll functions.
- Fixed C# UICollection enumerator incorrectly throwing on Dispose.
- Fixed C# Incorrect MouseButtonState enum values (#1434).
- Fixed Unity Editor freezing in rare cases when entering play mode (#1442).
- Fixed Crash closing scene with popups opened (#1428, #1429).
- Fixed [Preview]MouseDoubleClick event not notifying registered handlers.
- Fixed Incorrect collapsed state in Expander template for NocturnalStyle theme (#1432).
- Fixed TextBox and PasswordBox not showing caret after Deactivate (#1431).
- Fixed Visual descendant bounds not correctly calculated.
- Fixed ImageBrush displaced when using geometry bounds with offset.
- Fixed Better performance in tiled architectures when using multicamera layered rendering (#1427).
- Fixed Input events consumed by camera depth order (#1433).
Version 2.2.0
- Enhancement New document: NoesisGUI in comparison with WPF/UWP.
- Enhancement Fixed imprecisions in KeyboardNavigation.
- Enhancement Support for system fonts inside '/Library/Fonts' for macOS.
- Fixed Crash destroying KeyTrigger.
- Fixed AlternationIndex not correctly updated when items added or removed.
Version 2.2.0rc1
- Enhancement Support for connecting XInput controllers in any port.
- Enhancement ScrollViewer inside TextBox, PasswordBox and ComboBox no longer Focusable in our default theme.
- Fixed Key modifiers not accurate when clicking on inactivate window (#1418).
- Fixed ScrollViewer not overriding IsTabStop to false as in WPF.
- Fixed C# EmbeddedFontProvider failing in Android for fonts placed inside folders.
- Fixed Clicking on TextBox not opening virtual keyboard when received focus from gamepad.
- Fixed Weird focusing on TabControl (#1121).
- Fixed Improved TabControl gamepad navigation.
- Fixed ScrollViewer not getting focus when clicked.
Version 2.2.0b10
- Enhancement C++ GetName and GetOwnerType removed from ICommand.
- Enhancement C# Improvements to Drag and Drop API.
- Enhancement Improvements to DataBinding, CustomControl and Commands tutorials.
Version 2.2.0b9
- Enhancement C++ SDK Blend projects are now included in samples solution.
- Enhancement Added new Noesis.GUI.Extensions NuGet package to use in WPF/Blend projects.
Version 2.2.0b8
- Enhancement Improved implementation of dynamic buffers in Metal renderer.
- Enhancement Metal.framework is now loaded dynamically (#1083).
- Enhancement Glyph cache no longer regenerated when changing PPAA settings.
- Enhancement Improvements to First contact with Blend Unity tutorial.
- Fixed Win7 incompatibility in Win32Display when using XInput (#1414).
- Fixed Unity Compatibility with Unity LTS (2017.4)
Version 2.2.0b7
- Nintendo Switch C++ New platform supported.
- Enhancement App C# Application and Window moved inside NoesisApp namespace (#1326).
- Enhancement C# ContentPropertyAttribute moved inside Noesis namespace (#1327).
- Enhancement Incorrect assert when returning Size.Empty from C# in Measure/Arrange (#1413).
- Enhancement Order of DoubleClick events matching WPF.
- Fixed Crash with empty run at the end of normal runs (#1407).
- Fixed VirtualizingStackPanel crash when using Style to set scroll properties.
Version 2.2.0b6
- WebGL Unity New platform supported.
- Enhancement Unity New XAML importer, faster and more robust (#1369 #1366 #1394 #1393).
- Enhancement Unity XAML and Fonts assets stored as text.
- Enhancement Unity Added Interactivity package. PlaySoundAction using Unity clips.
- Enhancement Unity Dependencies to UserControls automatically generated.
- Enhancement Unity Implemented previews and thumbnails for fonts.
- Enhancement Unity IME implemented in Unity (#1243 #1264 #1213).
- Enhancement Unity Textures marked with label 'Noesis' converted to premultiplied-alpha.
- Enhancement Unity Added a panel for realtime stats in play mode.
- Enhancement Unity Support for system fonts. Improved memory usage of fonts.
- Enhancement Unity Cursors added to settings panel.
- Enhancement Unity Support for rendering UI only when changed (#589 #740).
- Enhancement Unity New property to select RenderTexture target.
- Enhancement Correctly implemented HitTest with filter and result callbacks matching WPF.
- Enhancement Improvements to GetXamlDependencies supporting more scenarios and UserControls.
- Enhancement Xbox One renderer improved using Fast Semantics.
- Enhancement New Font matching algorithm same as WPF.
- Enhancement C# Changes to error management:
- No C# exceptions thrown for errors generated in C++. Errors are sent to the log.
- New Noesis.Error.SetUnhandledCallback() to handle exceptions occurring in C# callbacks.
- Enhancement C# Added support for PropertyMetadata coerce callbacks.
- Enhancement PropertyMetadata constructors and derived classes like WPF (#1355).
- Enhancement Implemented AlternationConverter.
- Enhancement MarkupExtension ProvideValue argument is now ValueTargetProvider*.
- Fixed Windows 7 incompatibility introduced in previous beta.
- Fixed Error parsing FillRule="EvenOdd (#1384).
- Fixed ContentPresenter placed as root of template can't resolve bindings (#1335).
- Fixed Setting fixed scrollbar thumb size doesn't work (#1375).
- Fixed StringFormat working with NaN and Infinity.
- Fixed Mouse right click on empty screen crashing.
- Fixed Incorrect font rendering for faces with USE_TYPO_METRICS os2 flag (#1370)
- Fixed TextBox caret and selection not updated when changing Text property.
- Fixed BindingExpression UpdateTarget() not working when used inside PropertyChangedCallback.
- Fixed Chained removed elements in Panel crashing (#1391).
- Fixed Incorrect Border geometry for stroke thickness greater than available size.
- Fixed TabControl changing ViewModel selected tab when ItemsSource reset.
- Fixed MenuItem crashing when template not including items host.
- Fixed Crash arranging TabControl with collapsed tabs.
- Fixed Default style triggers registered twice when using BasedOn.
- Fixed Rare crash destroying faces in render thread.
- Fixed Bug in StreamGeometry parser (#1359).
- Fixed Incorrect number of MouseButtonDown events generated on double clicks (#1310).
- Fixed Rare crash destroying bindings of template elements.
Version 2.2.0b5
- Feature Implemented Binding Delay property (#1367).
- Feature Implemented AlternationCount property for ItemsControl.
- Enhancement Support for custom numeric formats in StringFormat (#877 #996 #1368).
- Enhancement Identifiers for float and double changed to "Single" and "Double" to match WPF.
- Enhancement Storyboard playing API behaving like WPF (#1182).
- Enhancement TextBox events TextChanged and SelectionChanged behaving like WPF.
- Enhancement Reflection metadata optimized for size in MSVC (binaries decreased by 10%).
- Enhancement App Android apps were not resuming. Improvements to Activity Lifecycle handling.
- Enhancement App Implemented support for multisampling in Android.
- Enhancement App Improved uploading geometry performance in GLRenderDevice.
- Enhancement App GL_EXT_disjoint_timer_query implemented in GLRenderContext.
- Enhancement App Color buffer clearing avoided whenever possible.
- Enhancement App Support for GL core profile implemented in Linux.
- Enhancement C# Geometry Parse function exposed (#1356).
- Enhancement C# Point, Size and Rect exposed with same interface as WPF (#1052).
- Enhancement C# Added WPF Vector and Matrix types.
- Enhancement C# Exposed XamlReader class to parse XAMLs from text (#1039).
- Enhancement C# Crashes during reloading of managed assemblies.
- Enhancement C# Grid and UniformGrid properties exposed as int matching WPF.
- Enhancement C# StreamGeometryContext API matching WPF (#833).
- Fixed Grid layout not always correct when using Min/Max limits in columns or rows.
- Fixed StreamGeometryContext requires Close or Dispose to flush commands matching WPF (#1148).
- Fixed ContextMenuOpening event not sent for disabled Buttons (#1382).
- Fixed TextBlock TextTrimming="CharacterEllipsis very often is faulty (#1275).
- Fixed TextBlock measure failing in rare cases (#1249).
- Fixed Wrong binding values when ItemsControl container disconnected (#1317).
- Fixed Focus lost when focused element collapsed or disabled.
- Fixed Cycle directional keyboard navigation not working correctly.
- Fixed Mouse over element not updated when collapsed or disabled.
- Fixed MouseWheel incorrectly handled with nested ScrollViewer.
- Fixed StyleInteraction triggers not working in ItemTemplates.
- Fixed Focus shouldn't change while View is deactivated.
- Fixed App TargetedTriggerAction incorrectly using Target when TargetName not found.
- Fixed C# VisualTreeHelper methods should receive a DependencyObject (#1043).
- Fixed C# GridLength struct not exposed (#739).
- Fixed C# Strange values calling SetCurrentValue with floats on double properties (#1163).
- Fixed C# Exceptions in converters thrown at confusing times (#1329).
- Fixed C# Binding context unavailable inside nested scopes (#1323).
- Fixed C# ItemCollection should implement IEnumerable (#1044).
- Fixed C# Exception "Native type is not registered" getting ToolTip's Parent (#1143).
- Fixed C# Crash removing SelectedItem from string collection bound to ListBox (#1371).
Version 2.2.0b4
- Android arm64 New platform supported.
- Enhancement System fonts implemented for iOS and Android.
- Enhancement Exposed CanHorizontallyScroll and similar ScrollContentPresenter properties to XAML (#1281).
- Enhancement PPAAMode property added to selectively disable PPAA.
- Enhancement Improved error message when animating non defined properties.
- Enhancement C# IsDisposed added to BaseComponent.
- Fixed C# Crash destroying UIElement with event handlers.
- Fixed C# Wrong event handler type registered for SizeChanged event.
- Fixed C# Missing InvokeHandler method in ManipulationCompletedEventArgs.
- Fixed C# MeasureOverride and ArrangeOverride not invoking base class.
- Fixed C# Custom INotifyCollectionChanged not working as ItemsSource.
- Fixed OpenGL black screen workaround for macOS 10.14 and Xcode 10.
- Fixed Mouse [Left|Right] button event dispatching non WPF compliant.
- Fixed TabPanel invoking Arrange on collapsed children tabs.
- Fixed Elements left in layout queues after being destroyed.
- Fixed Crash accessing Target of TargetedTriggerAction after destroyed.
- Fixed Routed event class handlers for base classes not invoked.
- Fixed ComboBox selecting wrong item when drop down needs scroll.
- Fixed StaysOpen set to False not keeping popup opened when interacting.
- Fixed Controls in Expander Header not responding (#1165).
- Fixed Incorrect layout of Grid (#1350).
- Fixed ContentPresenter failing to show data bound Content (#1344).
- Fixed Window resize not working for Metal in macOS.
- Fixed Rare crash releasing fonts during shutdown.
Version 2.2.0b3
- Enhancement Improved glyph cache usage for text under zoom animation.
- Enhancement App Improved detection of XInput controllers to avoid wasting CPU time.
- Enhancement App Audio and IME working in macOS.
- Enhancement App Implemented Metal renderer in macOS.
- Enhancement Added support for system fonts in macOS.
- Enhancement C++ documentation commenting about the option of using BaseRefCounted objects in the stack.
- Enhancement RoutingStrategy enumeration matching WPF: Tunnel(0), Bubble(1), Direct(2).
- Enhancement CheckBox and RadioButton default templates now use a Grid to layout like in WPF.
- Enhancement GPU vertex streaming functions using SIMD.
- Fixed Inherited properties not propagating to children not connected to View.
- Fixed Attached properties not reporting XAML dependencies correctly.
- Fixed Incorrect color channel order in CachedBitmap.
- Fixed TrueType Collections (.ttc) not working.
- Fixed Wrong BulletDecorator layout compared to WPF.
- Fixed Multi-line text resetting scroll offset when typing text.
- Fixed ChangePropertyAction not working when defined inside a Style.
- Fixed Rare crash in Event handler.
- Fixed Clipping paths no longer generating PPAA borders.
- Fixed Old view model setters being called setting DataContext to null.
- Fixed Bindings inside template definitions incorrectly registering against changed events.
- Fixed Reduced binding logging verbosity.
- Fixed DataTemplate lookup not working for boxed items.
- Fixed TimerTrigger crash trying to access already destroyed View.
Version 2.2.0b2
- Enhancement App Buffer management improved in GL renderer. Performance is much better now in WebGL.
- Enhancement App Added mouse wheel support to XDisplay.
- Enhancement App Added IME support to XDisplay.
- Enhancement New tutorial about Drag-and-Drop.
- Enhancement GetXamlDependencies() was not reporting fallback fonts. Dependencies are now given using a callback.
- Enhancement Added compatibility to GCC 7.
- Enhancement System fonts implemented in Linux.
- Enhancement Minor tweaks to scrollbar and progressbar in default theme.
- Enhancement Support for null items in ItemsControl.
- Enhancement Batching improvements when using masks.
- Fixed Crash in reflection when setting string properties to null.
- Fixed FindFirst/FindNext not working correctly in Linux (and potentially in Windows 32 bits).
- Fixed ScrollContentPresenter MakeVisible changing scroll even if element was visible.
- Fixed StackPanel MakeVisible failing when having different item sizes.
- Fixed GetHashCode() for pointers not compiling in Emscripten.
- Fixed ItemsControl comparing items using pointers instead of Equals.
- Fixed App Fixed buffer overflow crash in audio.
Version 2.2.0b1
WebGL C++ New platform supported.
Feature Interactivity (Behaviors, Triggers and Actions) architecture implemented. More details in the new tutorial.
Feature Implemented Drag & Drop architecture. Added Inventory sample.
Feature Implemented support for FontFamily fallbacks.
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" FontFamily="Fonts/#LCDMono2, #Roboto, #Segoe UI Emoji" Foreground="Black" FontSize="30"> </TextBlock>
Feature Support for Microsoft Color Fonts (CPAL/COLR). Emojis! 😊
<TextBlock Foreground="Black" FontFamily="Fonts/#Segoe UI Emoji"> <Run FontSize="10">😃🐻🍔⚽💡🤷😍🔥👀</Run> </TextBlock>
Feature Implemented InlineUIContainer.
<TextBlock > <Run> A UIElement element may be embedded directly in flow content by enclosing it in an InlineUIContainer element </Run> <InlineUIContainer> <Image Source="Images/item.png" Stretch="None"/> </InlineUIContainer> </TextBlock>
Enhancement New font metrics matching WPF. Text rendering may look different after this change.
Enhancement View input methods returning true to indicate if event was handled.
Enhancement NoesisGUI SDK Browser, a new welcome application for newcomers.
Enhancement Implemented Binding TargetNullValue property.
Enhancement BaseValueConverter derived classes can use StaticResources in XAML to set own properties.
Enhancement Warning messages in VirtualizingPanel when virtualization cannot be activated.
Enhancement RenderDevice: BGRA format deprecated in favor of RGBA to avoid using GL extension.
Enhancement Improved GCC make flags to reduce binary sizes. LTO enabled in release configuration.
Enhancement C++ NsDynamicCast renamed to DynamicCast. NsStaticCast removed.
Enhancement ItemsControl BringIntoView renamed to OnBringItemIntoView.
Enhancement PS4 Improvements to RenderDevice implementation. IME implemented in App framework.
Enhancement Improved view stats. New counters added for flushes and uploaded geometry.
Enhancement FrameworkOptions renamed to FrameworkPropertyMetadata. Added setters to all properties to match WPF.
Enhancement Exposed scroll functions in BaseTextBox.
Enhancement Implemented TextBox functions: Select, Clear, GetCharacterIndexFromPoint, GetCharacterIndexFromLineIndex, GetLineIndexFromCharacterIndex, GetLineLength, GetFirstVisibleLineIndex, GetLastVisibleLineIndex and ScrollToLine.
Enhancement Implemented all tab placements for TabControl.
Enhancement Mouse capture related properties and events updated according to WPF order.
Enhancement Callbacks for opening URLs and for playing audio added to IntegrationAPI header.
Enhancement Support for injecting custom profiler defining NS_PROFILE_CPU macro.
Enhancement Exposed FrameworkElement InputScope to specify the kind of input from On-Screen Keyboards.
Enhancement Added HideCaret to TextBox and PasswordBox to disable caret when required.
Enhancement Open and Hide Software Keyboard callbacks unified.
Enhancement Improvements (around 15%) in render performance by optimizing internal tree.
Enhancement Cursor callback now receives the source view.
Enhancement New view functions to handle timers.
Enhancement IList and IDictionary interfaces simplified.
Enhancement Collection<T> and ObservableCollection<T> are now clean implementations that match WPF.
Enhancement Added Uri type, used to scan XAML dependencies.
Enhancement Implemented GUI::GetXamlDependencies() to find all dependent resources.
Enhancement Improvements to memory allocations when updating text controls.
Enhancement TessellationQuality enumeration deprecated. View accepts now a float indicating the maximum pixel error.
Enhancement Glyphs rendered with triangles use PPAA if enabled.
Enhancement Support for TextBlock LineHeight and LineStackingStrategy.
Enhancement Improvements to ResourceDictionary when changing Source.
Enhancement App Support for audio implemented.
Enhancement App Support for gamepad implemented in Win32Display (using XInput).
Enhancement App --runInBackground command line to disable pausing the application when in background.
Fixed Rare crash when animating opacity groups.
Fixed Ghost lines when rendering VisualBrush.
Fixed TextBox scroll bars incorrectly showing beam cursor.
Fixed Changes to ScrollViewer HorizontalScrollBarVisibility and VerticalScrollBarVisibility not affecting measure.
Fixed TextBox not updating HorizontalScrollBarVisibility when TextWrapping changed.
Fixed TextTrimming ellipses not stroked.
Fixed '\r' counted as a letter during text formatting.
Fixed DataTrigger failing when trigger and binding value were the same.
Fixed Memory corruption in DataTrigger with self binding.
Fixed Trigger animations using frozen resources not properly removed.
Fixed UIElement IsKeyboardFocused and IsKeyboardFocusWithin returning incorrect values on uninitialized objects.
Fixed Memory leak in delegate implementation.
Fixed Glyph rendering could show glitches sometimes.
Fixed ContextMenu not closing properly when using complex templates.
Fixed Cannot show ContextMenu programmatically defined in Resources.
Fixed Added copy-paste context menu for TextBox.
Fixed ListView layout problems when showing horizontal scrollbar.
Fixed TextBox ignoring alignment with empty text.
Fixed Inherited properties not updated when control removed from tree.
Fixed Selector not destroying items when using ObservableCollection.Clear.
Fixed ScrollViewer ScrollChanged arguments not calculated correctly with Infinite viewport.
Fixed ResourceDictionary not searching merged dictionaries in the correct order.
Fixed C# ResourceDictionary not exposing IDictionary.
Fixed Focus engagement affecting controls that don't need it.
Fixed TwoWay bindings not updating converter when changing target value.
Fixed Width and Height constraints incorrectly clipping panels.
Fixed Incorrect line scroll in VirtualizingStackPanel when virtualization disabled.
Fixed Nullable properties incorrectly binding TwoWay bindings.
Fixed ToolTip not hidden after focusing new element.
Fixed Infinite loop in view Layout algorithm.
Fixed PasswordBox PasswordChar not allowing Unicode chars.
Fixed PasswordBox GotFocus not respecting SelectAll.
Fixed Nested OpacityMask incorrectly displayed.
Fixed Self binding not using converter with null DataContext.
Fixed DataContext in ContentPresenter ignoring null Content.
Fixed PropertyPath not supporting '/' (and many other characters) as part of the indexer key.
Fixed Binding FallbackValue can't be set using StaticResource in XAML.
Fixed Binding FallbackValue can't be set to {x:Null} in XAML.
Fixed TargetType and DataType using prefixes failing without x:Type extension.
Fixed DataTrigger not working when condition value is null.
Fixed Dropdown Popup remains visible while scrolling parent.
Fixed ToolTip incorrectly added as logical or visual child.
Fixed Sometimes MenuItem IsPressed was not updated.
Fixed MenuItem without Header not closed when clicked.
Fixed Keyboard keeps referencing focused element when removed from tree.
Fixed TreeViewItem BringIntoView not behaving as in WPF.
Previous Versions
Version 1.1
Table of Contents