Skip to content

Commit 65b2ff8

Browse files
Adding release notes for 1.4-preview2 (#3726)
* Updating release notes and downloads for 1.4 experimental * Minor wording revisions * Release notes for 1.3.2 * Adding first release notes for 1.4-preview1 * Release notes for 1.3.3 * Fixing broken bookmark links * Updating 1.4-preview1 rel notes * Removing en-us from link * Adding release notes and downloads for 1.4-preview2 * Fixing bookmark * Tweaking wording for XAML Islands section * Minor wording tweaks * Clarifying wording for custom titlebar scenarios * Update preview-channel.md (#3728) minor revs --------- Co-authored-by: KB <[email protected]>
1 parent d8f946e commit 65b2ff8

File tree

3 files changed

+275
-5
lines changed

3 files changed

+275
-5
lines changed

hub/apps/windows-app-sdk/downloads.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,12 @@ For all the latest Windows App SDK downloads, refer to the tables and links belo
2727
| [1.3.0 (1.3.230331000)](stable-channel.md#version-13) <br> 04/12/2023 <br> [Release notes](stable-channel.md#version-13) | [Installer (x64)](https://aka.ms/windowsappsdk/1.3/1.3.230331000/windowsappruntimeinstall-x64.exe) <br/> [Installer (x86)](https://aka.ms/windowsappsdk/1.3/1.3.230331000/windowsappruntimeinstall-x86.exe) <br/> [Installer (arm64)](https://aka.ms/windowsappsdk/1.3/1.3.230331000/windowsappruntimeinstall-arm64.exe) <br/> [Redistributable](https://aka.ms/windowsappsdk/1.3/1.3.230331000/Microsoft.WindowsAppRuntime.Redist.1.3.zip) |
2828

2929
## Preview release
30-
### Windows App SDK 1.4 Preview1
30+
### Windows App SDK 1.4 Preview2
3131

3232
| Version | Runtime downloads |
3333
|---|---|
34-
| [1.4 Preview1 (1.4.230628000-preview1) ](/windows/apps/windows-app-sdk/preview-channel#version-14-preview-1-140-preview1) <br> 07/06/2023 <br> [Release notes](/windows/apps/windows-app-sdk/preview-channel#version-14-preview-140-preview1) | [Installer (x64)](https://aka.ms/windowsappsdk/1.4/1.4.230628000-preview1/windowsappruntimeinstall-x64.exe) <br/> [Installer (x86)](https://aka.ms/windowsappsdk/1.4/1.4.230628000-preview1/windowsappruntimeinstall-x86.exe) <br/> [Installer (arm64)](https://aka.ms/windowsappsdk/1.4/1.4.230628000-preview1/windowsappruntimeinstall-arm64.exe) <br/> [Redistributable](https://aka.ms/windowsappsdk/1.4/1.4.230628000-preview1/Microsoft.WindowsAppRuntime.Redist.1.4.zip) |
34+
| [1.4 Preview2 (1.4.230811000-preview2) ](/windows/apps/windows-app-sdk/preview-channel#version-14-preview-2-140-preview2) <br> 08/15/2023 <br> [Release notes](/windows/apps/windows-app-sdk/preview-channel#version-14-preview-2-140-preview2) | [Installer (x64)](https://aka.ms/windowsappsdk/1.4/1.4.230811000-preview2/windowsappruntimeinstall-x64.exe) <br/> [Installer (x86)](https://aka.ms/windowsappsdk/1.4/1.4.230811000-preview2/windowsappruntimeinstall-x86.exe) <br/> [Installer (arm64)](https://aka.ms/windowsappsdk/1.4/1.4.230811000-preview2/windowsappruntimeinstall-arm64.exe) <br/> [Redistributable](https://aka.ms/windowsappsdk/1.4/1.4.230811000-preview2/Microsoft.WindowsAppRuntime.Redist.1.4.zip) |
35+
| [1.4 Preview1 (1.4.230628000-preview1) ](/windows/apps/windows-app-sdk/preview-channel#version-14-preview-1-140-preview1) <br> 07/06/2023 <br> [Release notes](/windows/apps/windows-app-sdk/preview-channel#version-14-preview-1-140-preview1) | [Installer (x64)](https://aka.ms/windowsappsdk/1.4/1.4.230628000-preview1/windowsappruntimeinstall-x64.exe) <br/> [Installer (x86)](https://aka.ms/windowsappsdk/1.4/1.4.230628000-preview1/windowsappruntimeinstall-x86.exe) <br/> [Installer (arm64)](https://aka.ms/windowsappsdk/1.4/1.4.230628000-preview1/windowsappruntimeinstall-arm64.exe) <br/> [Redistributable](https://aka.ms/windowsappsdk/1.4/1.4.230628000-preview1/Microsoft.WindowsAppRuntime.Redist.1.4.zip) |
3536

3637
## Experimental release
3738
### Windows App SDK 1.4 Experimental1

hub/apps/windows-app-sdk/preview-channel.md

Lines changed: 271 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,275 @@ The preview channel provides a preview of the next upcoming stable release. Ther
1919
- If you'd like to upgrade an existing app from an older version of the Windows App SDK to a newer version, see [Update existing projects to the latest release of the Windows App SDK](update-existing-projects-to-the-latest-release.md).
2020
- For documentation on preview releases, see [Install tools for preview and experimental channels of the Windows App SDK](preview-experimental-install.md).
2121

22+
## Version 1.4 Preview 2 (1.4.0-preview2)
23+
24+
This is the latest release of the preview channel for version 1.4.
25+
26+
In an existing Windows App SDK 1.3 (from the stable channel) app, you can update your Nuget package to 1.4.0-preview2 (see the **Update a package** section in [Install and manage packages in Visual Studio using the NuGet Package Manager](/nuget/consume-packages/install-use-packages-visual-studio#update-a-package)).
27+
28+
For the updated runtime and MSIX, see [Downloads for the Windows App SDK](./downloads.md).
29+
30+
### XAML Islands no longer experimental
31+
32+
XAML Islands and the underlying ContentIslands platform are no longer experimental.
33+
34+
- Currently XAML Islands are only tested for use in C++ apps. This release does not include any convenient wrapper elements for use in WPF or WinForms.
35+
- `DesktopWindowXamlSource` and related types have been added in the Microsoft.UI.Xaml.Hosting namespace for XAML Islands. `XamlRoot.ContentIslandEnvironment` was added to help access the underlying Island information for an element.
36+
- Many new types have been introduced in the Microsoft.UI.Content namespace and the Microsoft.UI.Input namespace as the underlying support for XAML Islands or for using this ContentIslands functionality without XAML.
37+
- A new `DragDropManager` (plus related types) has been added in the Microsoft.UI.Input.DragDrop namespace for Island scenarios.
38+
39+
### ItemsView updates
40+
41+
The new `ItemsView` class that was introduced in version 1.4-preview1 has been substantially updated with new properties and a new supporting class.
42+
43+
- The new `ItemsView` control displays a data collection. `ItemsView` is similar to the `ListView` and `GridView` controls, but is built using the `ItemsRepeater`, `ScrollView`, `ItemContainer` and `ItemCollectionTransitionProvider` components. It offers the unique ability to plug in custom `Layout` or `ItemCollectionTransitionProvider` implementations. Another key advantage is the ability to switch the layout on the fly while preserving items selection. The inner `ScrollView` control also offers features unavailable in `ListView`/`GridView`'s `ScrollViewer` control such as the ability to control the animation during programmatic scrolls.
44+
- A new `ItemTransitionProvider` property on `ItemsRepeater` (and the new `ItemsView` control) lets you specify an `ItemCollectionTransitionProvider` object to control transition animations on that control. A `CreateDefaultItemTransitionProvider` method has also been added to `Layout`, which enables a layout object to provide a fallback transition to accompany it if you do not provide one explicitly on the `ItemsView` control.
45+
- A new `IndexBasedLayoutOrientation` property on `Layout` where the layout orientation, if any, of items is based on their index in the source collection. The default value is `IndexBasedLayoutOrientation.None`. Custom layouts set this property by calling the new (protected) `SetIndexBasedLayoutOrientation` method.
46+
- A new `VisibleRect` property on `VirtualizingLayoutContext` gets the visible viewport rectangle within the `FrameworkElement` associated with the `Layout`. The protected virtual `VirtualizingLayoutContext.VisibleRectCore` method can be overridden to provide the value that will be returned from the `VisibleRect` property.
47+
- The new `LinedFlowLayout` class is typically used to lay out the items of the `ItemsView` collection control. It is particularly useful for displaying collection of pictures. It does so by laying them out from left to right, and top to bottom, in lines of equal height. The pictures fill a horizontal line and then wrap to a next line. Pictures may be cropped at the left and right edges to fit into a line. They may also be expanded horizontally and cropped at the top and bottom edges to fill a line when the stretching mode is employed.
48+
49+
### New features and updates from across the WinAppSDK
50+
51+
- `Popup/FlyoutBase.IsConstrainedToRootBounds = false` is now supported, allowing a popup/flyout to extend outside the bounds of the parent window. A `SystemBackdrop` property has been added to these types to support having acrylic in these unconstrained popups. Menus by default use this to have acrylic.
52+
- `Closed`, `FrameworkClosed`, and `IsClosed` have been added to `DesktopAcrylicController` and `MicaController` to improve handling during object/thread shutdown.
53+
- `DesktopAcrylicController.Kind` can now be set to choose between some standard acrylic appearances.
54+
- `DispatcherQueue` has some new events and helpers to facilitate better organized shutdown and for apps using Islands to easily run a standard supported event loop.
55+
- `InputNonClientPointerSource` in the Microsoft.UI.Input namespace can be used for custom titlebar scenarios to define non-client area regions. Code can register for corresponding events like hover and click events on these regions.
56+
- `AppWindow` has some new helpers to get and associate with a `DispatcherQueue`.
57+
- The new `TreeView.SelectionChanged` event allows developers to respond when the user or code-behind changes the set of selected nodes in the `TreeView` control.
58+
- The new `ScrollView` control provides a new alternative to `ScrollViewer`. This new control is highly aligned in behavior and API with the existing `ScrollViewer` control, but is based on `InteractionTracker`, has new features such as animation-driven view changes, and is also designed to ensure full functionality of `ItemsRepeater`. See [A more flexible ScrollViewer · Issue #108 · microsoft/microsoft-ui-xaml (github.com)](https://github.com/Microsoft/microsoft-ui-xaml/issues/108) for more details. Various new types, including `ScrollPresenter`, are part of the overall `ScrollView` model.
59+
- The new `AnnotatedScrollBar` control extends a regular scrollbar's functionality by providing an easy way to navigate through a large collection of items. This is achieved through a clickable rail with labels that act as markers. It also allows for a more granular understanding of the scrollable content by displaying a tooltip when hovering over the clickable rail.
60+
61+
### New APIs in 1.4.0-preview2
62+
63+
Version 1.4-preview2 includes the following new APIs compared to the previous 1.4-preview1 release:
64+
65+
```C#
66+
Microsoft.UI
67+
68+
ClosableNotifierHandler
69+
IClosableNotifier
70+
```
71+
```C#
72+
Microsoft.UI.Composition.SystemBackdrops
73+
74+
DesktopAcrylicController
75+
Closed
76+
FrameworkClosed
77+
IsClosed
78+
Kind
79+
80+
DesktopAcrylicKind
81+
MicaController
82+
Closed
83+
FrameworkClosed
84+
IsClosed
85+
```
86+
```C#
87+
Microsoft.UI.Content
88+
89+
ContentCoordinateConverter
90+
ContentCoordinateRoundingMode
91+
ContentDeferral
92+
ContentEnvironmentSettingChangedEventArgs
93+
ContentEnvironmentStateChangedEventArgs
94+
ContentIsland
95+
ContentIslandAutomationProviderRequestedEventArgs
96+
ContentIslandEnvironment
97+
ContentIslandStateChangedEventArgs
98+
ContentLayoutDirection
99+
ContentSite
100+
ContentSiteEnvironment
101+
ContentSiteEnvironmentView
102+
ContentSiteRequestedStateChangedEventArgs
103+
ContentSiteView
104+
ContentSizePolicy
105+
DesktopChildSiteBridge
106+
DesktopSiteBridge
107+
IContentSiteBridge
108+
```
109+
```C#
110+
Microsoft.UI.Dispatching
111+
112+
DispatcherExitDeferral
113+
DispatcherQueue
114+
EnqueueEventLoopExit
115+
EnsureSystemDispatcherQueue
116+
FrameworkShutdownCompleted
117+
FrameworkShutdownStarting
118+
RunEventLoop
119+
RunEventLoop
120+
121+
DispatcherQueueController
122+
ShutdownQueue
123+
124+
DispatcherRunOptions
125+
```
126+
```C#
127+
Microsoft.UI.Input
128+
129+
CharacterReceivedEventArgs
130+
ContextMenuKeyEventArgs
131+
FocusChangedEventArgs
132+
InputActivationListener
133+
GetForIsland
134+
135+
InputFocusChangedEventArgs
136+
InputFocusController
137+
InputKeyboardSource
138+
CharacterReceived
139+
ContextMenuKey
140+
GetCurrentKeyState
141+
GetForIsland
142+
GetKeyState
143+
KeyDown
144+
KeyUp
145+
SystemKeyDown
146+
SystemKeyUp
147+
148+
InputNonClientPointerSource
149+
InputPointerSource
150+
GetForIsland
151+
152+
InputPreTranslateKeyboardSource
153+
KeyEventArgs
154+
NonClientCaptionTappedEventArgs
155+
NonClientPointerEventArgs
156+
NonClientRegionKind
157+
NonClientRegionsChangedEventArgs
158+
PhysicalKeyStatus
159+
VirtualKeyStates
160+
```
161+
```C#
162+
Microsoft.UI.Input.DragDrop
163+
164+
DragDropManager
165+
DragDropModifiers
166+
DragInfo
167+
DragOperation
168+
DragUIContentMode
169+
DragUIOverride
170+
DropOperationTargetRequestedEventArgs
171+
IDropOperationTarget
172+
```
173+
```C#
174+
Microsoft.UI.Windowing
175+
176+
AppWindow
177+
AssociateWithDispatcherQueue
178+
Create
179+
DispatcherQueue
180+
```
181+
```C#
182+
Microsoft.UI.Xaml
183+
184+
XamlRoot
185+
ContentIslandEnvironment
186+
```
187+
```C#
188+
Microsoft.UI.Xaml.Automation.Peers
189+
190+
ItemsViewAutomationPeer
191+
```
192+
```C#
193+
Microsoft.UI.Xaml.Controls
194+
195+
AnnotatedScrollBar
196+
AnnotatedScrollBarDetailLabelRequestedEventArgs
197+
AnnotatedScrollBarLabel
198+
AnnotatedScrollBarScrollingEventArgs
199+
AnnotatedScrollBarScrollingEventKind
200+
IndexBasedLayoutOrientation
201+
ItemCollectionTransition
202+
ItemCollectionTransitionCompletedEventArgs
203+
ItemCollectionTransitionOperation
204+
ItemCollectionTransitionProgress
205+
ItemCollectionTransitionProvider
206+
ItemCollectionTransitionTriggers
207+
ItemsRepeater
208+
ItemTransitionProvider
209+
ItemTransitionProviderProperty
210+
211+
ItemsView
212+
ItemsViewItemInvokedEventArgs
213+
ItemsViewSelectionChangedEventArgs
214+
ItemsViewSelectionMode
215+
Layout
216+
CreateDefaultItemTransitionProvider
217+
IndexBasedLayoutOrientation
218+
SetIndexBasedLayoutOrientation
219+
220+
LinedFlowLayout
221+
LinedFlowLayoutItemCollectionTransitionProvider
222+
LinedFlowLayoutItemsInfoRequestedEventArgs
223+
LinedFlowLayoutItemsJustification
224+
LinedFlowLayoutItemsStretch
225+
ScrollingAnchorRequestedEventArgs
226+
ScrollingAnimationMode
227+
ScrollingBringingIntoViewEventArgs
228+
ScrollingChainMode
229+
ScrollingContentOrientation
230+
ScrollingInputKinds
231+
ScrollingInteractionState
232+
ScrollingRailMode
233+
ScrollingScrollAnimationStartingEventArgs
234+
ScrollingScrollBarVisibility
235+
ScrollingScrollCompletedEventArgs
236+
ScrollingScrollMode
237+
ScrollingScrollOptions
238+
ScrollingSnapPointsMode
239+
ScrollingZoomAnimationStartingEventArgs
240+
ScrollingZoomCompletedEventArgs
241+
ScrollingZoomMode
242+
ScrollingZoomOptions
243+
ScrollView
244+
TreeView
245+
SelectionChanged
246+
247+
TreeViewSelectionChangedEventArgs
248+
VirtualizingLayoutContext
249+
VisibleRect
250+
VisibleRectCore
251+
```
252+
```C#
253+
Microsoft.UI.Xaml.Controls.Primitives
254+
255+
FlyoutBase
256+
SystemBackdrop
257+
SystemBackdropProperty
258+
259+
IScrollController
260+
IScrollControllerPanningInfo
261+
Popup
262+
SystemBackdrop
263+
SystemBackdropProperty
264+
265+
RepeatedScrollSnapPoint
266+
RepeatedZoomSnapPoint
267+
ScrollControllerAddScrollVelocityRequestedEventArgs
268+
ScrollControllerPanRequestedEventArgs
269+
ScrollControllerScrollByRequestedEventArgs
270+
ScrollControllerScrollToRequestedEventArgs
271+
ScrollPresenter
272+
ScrollSnapPoint
273+
ScrollSnapPointBase
274+
ScrollSnapPointsAlignment
275+
SnapPointBase
276+
ZoomSnapPoint
277+
ZoomSnapPointBase
278+
```
279+
```C#
280+
Microsoft.UI.Xaml.Hosting
281+
282+
DesktopWindowXamlSource
283+
DesktopWindowXamlSourceGotFocusEventArgs
284+
DesktopWindowXamlSourceTakeFocusRequestedEventArgs
285+
WindowsXamlManager
286+
XamlSourceFocusNavigationReason
287+
XamlSourceFocusNavigationRequest
288+
XamlSourceFocusNavigationResult
289+
```
290+
22291
## Version 1.4 Preview 1 (1.4.0-preview1)
23292

24293
This is the latest release of the preview channel for version 1.4.
@@ -27,14 +296,14 @@ In an existing Windows App SDK 1.3 (from the stable channel) app, you can update
27296

28297
For the updated runtime and MSIX, see [Downloads for the Windows App SDK](./downloads.md).
29298

30-
### Widgets Updates
299+
### Widgets updates
31300

32301
Three new interfaces have been added for Widget Providers to implement: `IWidgetProvider2`, `IWidgetProviderAnalytics`, and `IWidgetProviderErrors`. `IWidgetProvider2` allows providers to respond to the *Customize* action invoked by the user, which is identical to what is available for 1st party Widgets. The `IWidgetProviderAnalytics` and `IWidgetProviderErrors` interfaces are used by providers to gather telemetry for their widgets; analytics and failure events about widgets are communicated to the respective widget providers. The `WidgetCustomizationRequestedArgs`, `WidgetAnalyticsInfoReportedArgs`, and `WidgetErrorInfoReportedArgs` classes are used to communicate relevant information to support new functionalities.
33302

34303
### New features from across the WinAppSDK
35304

36305
- A new `ThemeSettings` class that allows Win32 WinRT apps to detect when the system's High Contrast setting has changed, similar to UWP's [AccessibilitySettings](/uwp/api/windows.ui.viewmanagement.accessibilitysettings) class. See the [ThemeSettings API spec](https://github.com/microsoft/WindowsAppSDK/blob/main/specs/themes/ThemeSettings.md) on GitHub for more information.
37-
- - `Popup/FlyoutBase.ShouldConstrainToRootBounds` is now supported to allow tooltips, menus, and other popups to extend outside the bounds of the main window. Preview 1 does not yet fully support having Acrylic or other SystemBackdrops on a popup/flyout; additional APIs and implementation for this will be included in the next 1.4 release.
306+
- `Popup/FlyoutBase.ShouldConstrainToRootBounds` is now supported to allow tooltips, menus, and other popups to extend outside the bounds of the main window. Preview 1 does not yet fully support having Acrylic or other SystemBackdrops on a popup/flyout; additional APIs and implementation for this will be included in the next 1.4 release.
38307
- `AccessKeyManager.EnterDisplayMode` is a new method to display access keys for the current focused element of a provided root. Access keys are in "display mode" when showing a key tip to invoke a command, such as pressing the Alt key in Paint to show what keys correspond to what controls. This method allows for programmatically entering display mode.
39308
- `Application.ResourceManagerRequested` provides a mechanism to provide a different `IResourceManager` to resolve resource URIs for scenarios when the default `ResourceManager` won't work. For more information, see the [Application.ResourceManagerRequested API spec](https://github.com/microsoft/microsoft-ui-xaml/blob/main/specs/custom-iresourcemanager-spec.md) on GitHub.
40309
- We're introducing a new list control called the `ItemsView` and a corresponding concrete `ItemContainer` class. `ItemContainer` is a lightweight container with built-in selection states and visuals, which can easily wrap desired content and be used with `ItemsView` for a collection control scenario. `ItemsView` is still marked experimental in Preview 1 but will be included in the next 1.4 release.

0 commit comments

Comments
 (0)