Category Archives: Tablet

Auto Added by WPeMatico

Introducing the Storage Access API – Microsoft Edge Blog

Today, we’re excited to announce the “first-look” rollout of the Storage Access API in our Canary and Dev channels. For developers, this API allows them to determine whether their access to browser-based storage is restricted by a user’s privacy settings and to request storage access from users if so. This capability can be used to create graceful fallback experiences in cases when storage access may be restricted by features such as tracking prevention in Microsoft Edge. For users, this API provides greater transparency into and control over the sites that are requesting access to browser-based storage that could be used to track their behaviors across the web. This post outlines what the addition of the Storage Access API means for both developers and users.

Using the Storage Access API is as easy as updating your code to leverage the following new functions:
hasStorageAccess()
Useful to check if access to cookies and other storage exists in the current context.
Returns a promise with a boolean result indicating if storage access exists or not.

requestStorageAccess()
Requires a user gesture to invoke.
Useful to request access to storage for a single third-party context.
Returns a promise that will resolve if access is either available or granted and reject if unsuccessful.

Note: Since we are still gradually rolling out the Storage Access API, it’s possible that you may not have it enabled by default on your device. If you want to test it early, please enable the “Storage Access API” flag in edge://flags.
The usage of these new functions is best demonstrated with an example.
Example:
A social media site, contoso.social, offers sites the ability for developers to embed social media widgets as third-party content on their sites. One site where these widgets appear is www.contoso.example. To offer the ability for contoso.social users to comment on, save, or share contoso.example content with friends, contoso.social’s embedded content needs access to its own storage such as cookies or localStorage in the context of contoso.example in order to associate these actions with a visitor’s account.
Checking for Access:
contoso.social can use document.hasStorageAccess() to see if access to storage already exists and to provide an alternative user experience such as displaying a request to login or request access if not:

Requesting Access:
If no storage access is currently present, contoso.social can request access during a user gesture. As an example, the onclick handler of a login button could be tied to a request for storage access (see the “User Experience” section below) using the document.requestStorageAccess() method.

Sandboxing
The allow-storage-access-by-user-activation token can be used to enable the usage of the API when embedded content is loaded in a sandboxed iframe. In practice, both the allow-scripts and allow-same-origin tokens will also be required as well to ensure the API can be effectively used.

As a developer, we hope you will leverage the Storage Access API to create web-based experiences that will continue to be compatible even as browsers place more restrictions on third-party storage.

With the introduction of the Storage Access API, you may notice an “Allow cookies and site data?” prompt like the one below when you interact with third-party content such as social media widgets or embedded videos while browsing:

This indicates that the site whose embedded content you’re interacting with (contoso.social in the example above) currently has its storage restricted by Microsoft Edge’s privacy settings and is requesting your permission to access its storage within the context of the site you’re visiting (https://www.contoso.example in the example above). While several types of sites require storage access for legitimate scenarios such as making sure you’re signed in when you expect to be, allowing this access can allow the site requesting it track your activity on the site you’re currently visiting.
Clicking “Allow” will temporarily allow the requesting site access to its storage on the site you were visiting when the prompt appeared. This allowance will last for a 30-day period after which it will automatically expire. Clicking “Block” will prevent the requesting site from accessing its storage on the site you were visiting when the prompt appeared. If you change your mind, interacting with the third-party content a second time will cause the prompt to be displayed again, giving you the option to revisit your choice.
To give you control over any storage access requests you’ve allowed before they automatically expire, you’ll notice a new “Cookies and site data you’ve temporarily allowed” section at the bottom of the edge://settings/content/cookies page. Here, you can review and revoke the storage access requests you’ve granted in a single list:

We implemented the Storage Access API upstream so that all Chromium-based browsers could benefit from it. We are also actively participating in standardization discussions that are ongoing in the W3C Privacy Community Group to ensure that the API works uniformly across browsers. If you have any feedback on the functionality or capabilities of the API itself, please feel free to join the standardization discussions by filing an issue on GitHub. If you have any feedback on the Storage Access API as it exists in Microsoft Edge, please send us feedback using in-app feedback tool (Alt + Shift + I).
To close, we’d like to thank our friends at Apple and Mozilla for their early work on the Storage Access API and our friends at Google for helping pave the way for getting the API implemented in Chromium. We’re excited for you to try it out and to hear what you think!
–  Brandon Maslen, Senior Software Engineer–  Scott Low, Senior Program Manager

A deep-dive into WinUI 3 in desktop apps – Windows Developer Blog

XAML Islands was our first solution to enable developers to use UWP XAML inside their desktop (Win32) apps. Within a couple of months after the release of XAML Islands, behavioral insights and customer interviews raised some signals about how developers were using it. We discovered that a significant number of apps were using XAML for the entire UI; in fact, many apps were using WPF’s Window and Windows Forms’s Form classes for the sole purpose of hosting XAML. Additionally, interviews revealed that C++ Windows developers were interested in XAML as a replacement for MFC.
This made us think about whether we can help customers further. We listed a set of hypotheses about what Windows developers were expecting and created a prototype to validate/invalidate these hypotheses. The outcome of this validation process was very enlightening. Windows developers were hungry for creating beautiful, modern, and refreshing apps reusing the desktop code (in the form of .NET or C++ Win32) that they had already been using. In most cases, this code needed to run outside of the security sandbox (AppContainer) and work in all versions of Windows 10 in the market. So we extended WinUI 3 to support desktop apps in addition to UWP apps. WinUI 3.0 Preview 1 introduced project templates to create desktop C# .NET 5 apps and C++ 17 desktop apps where the entire user interface is implemented using windows, controls, and other UI elements provided by the WinUI framework.
But enough of so much chatter and let’s get to work! In this blog post I’m going to focus on building a desktop app with WinUI 3 Preview 1 and .NET, leaving C++ for future posts.
The first step is to install WinUI3 Preview 1 (or Preview 2 when available) in your development machine. I recommend visiting this link and following the Prerequisites instructions to download and install the VSIX that contains the project templates. After that, follow the instructions to create a WinUI 3 desktop app for C# and .NET 5. Press F5 and you will see something like this:

There are a lot of things that you can learn from this project without writing a line of code. The first noticeable thing is that there are two projects in the solution. One is for the Desktop WinUI 3 app itself, and the other is for packaging the app into a MSIX. In Preview 1 it’s required to package your project to run your app. Although MSIX is our recommended packaging technology, we’re aiming to make a UI Framework that’s independent of the deployment mechanism. This is a temporary limitation that we will address in subsequent previews , as you can see in the Preview 1 known issues documentation.

Embracing .NET 5
If you double click on the WinUI 3 app project, Visual Studio opens the project file with the XML text editor, and you can observe several things. First, C# Desktop WinUI 3 projects embrace the SDK-style project so it’s human readable/understandable. Second, the Target Framework is .NET 5. Desktop WinUI 3 can be used with the next big release in the .NET family. Third, you can see that this project has a reference to the Microsoft.WinUI NuGet package, which pulls in the WinUI 3 tools and runtime.

<Project Sdk=”Microsoft.NET.Sdk”>
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp5.0</TargetFramework>
<TargetPlatformVersion>10.0.18362.0</TargetPlatformVersion>
<TargetPlatformMinVersion>10.0.17134.0</TargetPlatformMinVersion>

<Platforms>x86;x64</Platforms>
<SelfContained>true</SelfContained>
<RuntimeIdentifiers>win-x86;win-x64</RuntimeIdentifiers>
<RuntimeIdentifier>win-$(Platform)</RuntimeIdentifier>
</PropertyGroup>

<ItemGroup>
<PackageReference Include=”Microsoft.VCRTForwarders.140″ Version=”1.0.6″ />
<PackageReference Include=”Microsoft.WinUI” Version=”3.0.0-preview1.200515.3″ />
</ItemGroup>

</Project>

Speaking of tools, WinUI 3 uses the new C#/WinRT projections. The WinUI 3 framework is a set of WinRT components, and while WinRT has similar types and objects as those found in .NET, they are not inherently compatible. The C#/WinRT projections handle the interop between .NET and WinRT, allowing you to freely create and use WinUI objects in your .NET app today.
The WinUI 3 NuGet package has a dependency on the C#/WinRT NuGet package which brings the winrt.runtime.dll library and the cswinrt.exe tool. The cswinrt.exe tool consumes WinMD metadata files that define the WinRT libraries and generates interop .NET 5 and .NET Standard 2.0 C# code. This interop code uses the winrt.runtime.dll library. As you can guess, the cswinrt.exe gets all the WinUI WinMD files and generates C# interop code .NET 5 code for the WinUI library. Then you can compile these files into a .NET library (e.g. using the csc.exe compiler) and use it in every .NET 5 Desktop WinUI application. Fortunately, we already have created this library for you. It’s the Microsoft.WinUI.dll library. This library is included in the WinUI 3 NuGet Package.

The WinUI NuGet package also has a dependency on the Microsoft.Windows.SDK.NET NuGet package. This package includes the Microsoft.Windows.SDK.NET.dll  .NET 5 (and .NET Standard 2.0) interop  library  that allows use of the other non-WinUI WinRT APIs that are available as part of the Windows 10 OS. Like Microsoft.WinUI.dll, this DLL is generated by C#/WinRT.
Window class and Win32 APIs
With WinUI 3 Preview 1, you can create instances of the Window class in XAML markup. Double click on the MainWindow.xaml file and you will see an example of this:

<Window
x:Class=”HelloWorldDesktopWinUI3CS.MainWindow”
xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation”
xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml”
xmlns:local=”using:HelloWorldDesktopWinUI3CS”
xmlns:d=”http://schemas.microsoft.com/expression/blend/2008″
xmlns:mc=”http://schemas.openxmlformats.org/markup-compatibility/2006″
mc:Ignorable=”d”>

<StackPanel Orientation=”Horizontal” HorizontalAlignment=”Center” VerticalAlignment=”Center”>
<Button x:Name=”myButton” Click=”myButton_Click”>Click Me</Button>
</StackPanel>
</Window>

The XAML Window class was extended to support desktop windows, turning it into an abstraction of the low-level window implementation used by each app model. For instance, the UWP app model uses CoreWindow, while the Win32 app model uses Win32 window handles (HWND). So if you’re building a Desktop WinUI app, you can get the window handle and use Win32 APIs with it.
For example, let’s maximize the Window programmatically using the classic User32 ShowWindow API. To call Win32 APIs from User32.dll you can use the NuGet package PInvoke.User32. Once you have added it, open the code-behind of MainWindow.xaml.cs and add these lines to the button event handler:

private void myButton_Click(object sender, RoutedEventArgs e)
{
myButton.Content = “Clicked”;

IntPtr hwnd = (App.Current as App).MainWindowWindowHandle;
PInvoke.User32.ShowWindow(hwnd, PInvoke.User32.WindowShowStyle.SW_MAXIMIZE);

}

The ShowWindow method uses the window handle and maximizes it using the second parameter. To get the window handle you can use the GetActiveWindow method that returns the window handle of the current active Window. For example, you can call this method after activating the Window.
The MainWindow object is created, instantiated, and activated in the OnLaunched event that you can find in the App.xaml.cs.

IntPtr m_windowhandle;
public IntPtr MainWindowWindowHandle { get { return m_windowhandle; } }
protected override void OnLaunched(Microsoft.UI.Xaml.LaunchActivatedEventArgs args)
{
m_window = new MainWindow();
m_window.Activate();
m_windowhandle = PInvoke.User32.GetActiveWindow();
}

To show the window and the focus you need to call Activate. Easy, right?
Like we did within the Window class, we also extended the Application class to support both UWP and Win32 app models. The Application object is aware of whether the runtime environment is Win32 or UWP, and fires the appropriate application life cycle events. For example, the Resuming event is never fired in Win32 but is in UWP.
Full trust desktop apps
I mentioned earlier that developers want their code to be able to run outside of the security sandbox without any AppContainer – this is called “full trust permission” in the WinRT jargon – and Desktop WinUI 3 allows them to do so. You can call all the .NET 5 APIs without restrictions. For instance, you can query the current process and get a list of its loaded modules; this is something you can’t do in the UWP app model. Let’s see how easy it is:
In the MainWindow.xaml create a ContentDialog:

<StackPanel Orientation=”Horizontal” HorizontalAlignment=”Center”
VerticalAlignment=”Center”>
<Button x:Name=”myButton” Click=”myButton_Click”>Click Me</Button>
<ContentDialog x:Name=”contentDialog”
Title=”Loaded modules”
CloseButtonText=”OK”>
<ScrollViewer MaxHeight=”800″>
<TextBlock x:Name=”cdTextBlock” TextWrapping=”Wrap” />
</ScrollViewer>
</ContentDialog>
</StackPanel>

And in the code-behind of MainWindow.xaml.cs call the .NET APIs from System.Diagnostics to get the modules loaded in a process:

private async void myButton_Click(object sender, RoutedEventArgs e)
{
myButton.Content = “Clicked”;

var description = new System.Text.StringBuilder();
var process = System.Diagnostics.Process.GetCurrentProcess();
foreach (System.Diagnostics.ProcessModule module in process.Modules)
{
description.AppendLine(module.FileName);
}

cdTextBlock.Text = description.ToString();
contentDialog.XamlRoot = myButton.XamlRoot;
await contentDialog.ShowAsync();

}

Press F5 to Run and you will get something like this picture when clicking the button:

I have shown you a lot of things with just a few lines of code. .NET with WinUI 3 in Desktop apps allows you to use the .NET APIs as you expect (no limitations) while using WinUI 3 as your UI Framework. Getting access to the underlying window implementation, in this case Win32 and HWNDs, enables you to use the vast set of Win32 APIs in your app in addition to the WinRT APIs of Windows 10. This will allow you to create new Desktop WinUI 3 apps reusing the majority of your current code.
You can get more samples of WinUI 3 in desktop here, and you leave feedback on our Github repo.
Happy WinUI coding devs! 
Miguel Ramos – WinUI/XAML PM
Twitter: @marbtweeting
GitHub: @marb2000

3 Ways to Customize Your Windows Terminal – Windows Developer Blog

Windows Terminal is here! From the buzz of the announcement at Microsoft Build 2019 to the release of 1.0 at Build 2020, it’s generated excitement and interest from the dev community. Get started by downloading the Preview here.
As a refresher, Windows Terminal is a new, modern, fast, efficient, powerful, and productive terminal application for users of command-line tools and shells like Command Prompt, PowerShell, and WSL.
Its main features include multiple tabs, panes, Unicode and UTF-8 character support, a GPU accelerated text rendering engine, and the ability to create your own themes and customize text, colors, backgrounds, and shortcut key bindings.
Today, we’re digging into three ways to tailor the Terminal to your preference: colors, cursor, and tabs.

Windows Terminal includes the following named color schemes inside the defaults.json file, which can be accessed by holding alt and selecting the settings button.
Campbell
Campbell Powershell
Vintage
One Half Dark
One Half Light
Solarized Dark
Solarized Light
Tango Dark
Tango Light
This is what Vintage looks like:
To set up your scheme inside one of your command-line profiles, add the colorScheme property with the color scheme’s name as the value.
“colorScheme”: “COLOR SCHEME NAME”
Every setting, aside from name, accepts a color as a string in hex format: “#rgb” or “#rrggbb”. The cursorColor and selectionBackground settings are optional.
Dark and light theme are also available in the Terminal’s chrome.
Property name: theme
Necessity: Optional
Accepts: “system”, “dark”, “light”
Default value: “system”

Old school or modern, there’s a full set of cursor options for shape, color, and height.
Do you prefer horizontal or vertical? A line or a box? Just tell the Terminal.
This sets the cursor shape for the profile. The possible cursors are as follows: “bar” ( ┃ ), “vintage” ( ▃ ), “underscore” ( ▁ ), “filledBox” ( █ ), “emptyBox” ( ▯ )
Property name: cursorShape
Necessity: Optional
Accepts: “bar”, “vintage”, “underscore”, “filledBox”, “emptyBox”
Default value: “bar”
You can override cursorColor set in the color scheme if colorScheme is set. Color as a string in hex format: “#rgb” or “#rrggbb” are accepted.
cursorHeight sets the percentage height of the cursor starting from the bottom. This will only work when cursorShape is set to “vintage.” Integers from 25-100 are accepted.

You can easily rename and recolor tabs in Windows Terminal Preview. Just right click on a tab and select Rename Tab to rename a tab for that session. This option will change your tab title into a text field, where you can then edit the title.
Do the same to recolor your tab. Select from a predefined list of colors or click Custom to use the color picker or the RGB/HSV or hex fields. One cool tip is to use the hex field to set your tab to the same color as your background color for a seamless look.

To set the tab title for a profile for every terminal instance, check out the Tab title tutorial.
Monthly updates for Windows Terminal begin in July 2020. Don’t forget to download Windows Terminal Preview from the Microsoft Store or from the GitHub releases page. This is the channel where you can be involved with the development of Windows Terminal and use the latest features as soon as they are developed.

Introducing an improved spellcheck experience in Microsoft Edge – Microsoft Edge Blog

Beginning with Microsoft Edge 83, we’ve introduced a new spellcheck experience for Windows users, powered by Windows Spellcheck. The feature is supported on Windows 8.1 and above.
Previously, on Windows, Microsoft Edge and other Chromium browsers used open-source proofing tools for spell checking. Moving to Windows Spellcheck has a number of benefits, including support for additional languages and dialects, a shared custom dictionary, and better support for URLs, acronyms, and email addresses.
Based on early feedback from preview users, this represents an overall improvement in the quality of spell checking in Microsoft Edge, as illustrated in the examples below.

Hunspell Spellcheck

Windows Spellcheck

Generic Patterns:

Generic Patterns:

Markdown editor:

Markdown editor:

How to use spellcheck in Microsoft Edge
For most users, no action is required to set up spell checking – it will automatically inherit your preferred language settings from Windows. To configure the languages that will be spellchecked, navigate to the edge://settings/languages page.

Users can install additional languages to spellcheck in Windows Settings by navigating to Time & Language -> Language and selecting Add a preferred language.

If the user has not installed the necessary language pack (or if one is not available), Microsoft Edge will fall back to the prior experience powered by Hunspell.
This feature was developed as a collaboration between Google and Microsoft engineers in the Chromium project, enabling all Chromium-based browsers to benefit from Windows Spellcheck integration. Our thanks go out to Guillaume Jenkins and Rouslan Solomakhin (Google), and Bruce Long, Luis Sanchez Padilla, and Siye Liu (Microsoft) for their collaboration on this feature.
The new spellcheck experience is now available in Microsoft Edge starting with version 83, recently released to the Stable channel. Try it out and let us know what you think!
– Bo Cupp, Principal Software Engineer, Microsoft Edge– Grisha Lyukshin, Program Manager, Microsoft Edge

Introducing the new surf game in Microsoft Edge – Microsoft Edge Blog

Starting with build 83.0.478.37, users can now play a surfing-themed game in the new Microsoft Edge when they’re offline or by navigating to edge://surf. The game, which has been available for Insiders since late February, is now available for everyone to play in the latest Stable channel release. Download the new Microsoft Edge here to get started surfing today!

Inspired by the classic Windows game SkiFree, the surf game challenges players to ride through the water while avoiding islands, fellow surfers, and other obstacles. Watch out for the kraken! Players can also collect hearts to extend their lives and boosts for a burst of speed. Surf as far as possible in an endless ocean, compete for the shortest time, or zig zag through as many gates as you can in a row. With three distinct game modes, players have a variety of ways to pass the time.
To catch the wave, simply navigate to edge://surf in the address bar. If you are not connected to the internet, Microsoft Edge will also provide a handy link to the game to help you pass the time.

An early version of the surf game originally debuted in November as part of a special Easter Egg. Insiders followed a series of cryptic hints and puzzles in the run-up to Microsoft Ignite 2019 which eventually led them to unlock the hidden surf game using Collections. Upon reaching the end of the game, Insiders were treated to the world’s first look at the new icon for Microsoft Edge—two days before the official reveal.
Upon the conclusion of the Easter Egg, the number one request from Insiders was to turn the surfing game into an endless runner as the permanent “offline game” for Microsoft Edge. The team took this feedback to heart and has spent the last few months polishing edge://surf and adding new gameplay features and improvements, including support for accessibility features like high contrast, screen readers, and even the Xbox Adaptive Controller. Here’s a look at what’s included:
Let’s surf: Endless mode
Surf as far as you can while avoiding obstacles and the kraken. You can switch modes via the game settings menu.
Time trial mode
Reach the end of the course as fast as you can! Collect coins to help you achieve an even shorter time. The course is always the same—can you find the shortest possible route? You can switch modes via the game settings menu.
Zig zag mode
Surf through as many gates as you can in a row! Your streak will reset if you miss a gate, but you can keep playing until your lives run out. You can switch modes via the game settings menu.
Play with keyboard, mouse, touch, or gamepad
Play your way with support for keyboard, mouse, touch, and gamepads, including Xbox, PlayStation, Switch Pro, and the Xbox Adaptive Controller. The game also supports gamepad haptic feedback (rumble) for a more immersive experience. Instructions for how to play, including the controls for each input method, can be found in the game’s settings menu.
Personal high scores
Each game mode keeps a record of your high score, and you’ll see a notification every time you set a new record. You can also reset your stats from the game settings menu.

High visibility mode
High visibility mode (accessible via the game settings menu) highlights the hit boxes around objects, making it easier to identify and avoid obstacles in the water.
Reduced speed mode
For users who prefer a more relaxed pace or need extra time to pull off those surfing moves, they can enable the new reduced speed mode (accessible via the game settings menu) to slow down the speed of the game.
And much more!
The final release of edge://surf has many changes based directly on user feedback from the Easter Egg version, including an enhanced user experience, numerous gameplay improvements (such as smarter enemy logic) and bug fixes, and much more. Who knows? There might even be a few secrets just waiting to be found.
Thanks again to our incredible community that made this possible. Happy surfing!
– William Devereux, Senior Program Manager, Microsoft Edge

Developing for all 1 billion Windows 10 devices and beyond – Windows Developer Blog

This year, Microsoft Build 2020 is a digital-only event that we all get to experience from the comfort of our homes. We hope you enjoy learning about the new features and technologies that matter most to you. Today, I will have the privilege of sharing how developers can build apps for modern work using Microsoft 365 and Windows platforms. I will focus on 4 key areas of improvements to the Windows platform:
Unifying app development across the billion Windows 10 devices for all your current and future apps;
Leaning into the cloud and enabling new scenarios for your Windows apps;
Creating new opportunities for you to build connected apps using Microsoft 365 integration in the Windows experience; and
Making Windows great for developer productivity.

Today we will unveil Project Reunion: our vision for unifying and evolving the Windows developer platform to make it easier to build great apps that work across all the Windows 10 versions and devices people use.
For the past couple of years, we have been breaking down the barrier between Win32 (also called the Windows API) and Universal Windows Platform (UWP) APIs. Project Reunion expands this effort to make it easier to build a great Windows app. It will unify access to existing Win32 and UWP APIs and make them available decoupled from the OS, via tools like NuGet. This will provide a common platform for new apps. Plus, it will help you update and modernize your existing apps with the latest functionality, whether they’re C++, .NET (including WPF, Windows Forms, and UWP) or React Native. As we decouple existing APIs and add new APIs, we are also doing the work to polyfill, as needed, so the APIs work down-level across supported versions of Windows.

One of the first components in the Project Reunion journey is WinUI 3 Preview 1, the high performant, Fluent-optimized native UI framework for Windows. With WinUI developers can build great user experiences that adapt and scale across devices, whether they are starting a new project, or modernizing an existing app.

Image 1: Engaging UI powered by WinUI in Alarms & Clock app
We also know there are times when you want to integrate web content in your native app so you can share code across platforms and with the browser. Today, we are expanding WebView2 (another component in the Project Reunion journey) with a new .NET Preview. Now, any Windows app can embed web content with the power of Microsoft Edge and Chromium. WebView2 provides full web functionality across the spectrum of Windows apps, and it’s decoupled from the OS, so you are no longer locked to a particular version of Windows.

Image 2: Showing an example of a PDF inline using WebView2
We invite you to learn and engage with us at this early stage in the Project Reunion GitHub repo, where we’ll be sharing our progress and listening to your feedback as we implement this vision. You can also learn more about WinUI and WebView2 today.

As organizations shift to enable remote work, Windows Virtual Desktop, built on Azure, has provided the ability to provision and scale virtual desktops and apps faster than was previously possible. It enables organizations to serve your existing app to a growing set of devices that users can access with the Windows Virtual Desktop clients for Windows, MacOS/iOS, and Android.
Because scalability is so important, we introduced a feature called MSIX App Attach. The MSIX App Attach Preview will optimize people’s experiences by untangling the OS image that organizations deploy in the cloud from the apps that people need to access. This means that once you adopt MSIX for Windows desktop, the same investment will soon bring even more benefits when running your app in Windows Virtual Desktop on Azure.

We also know you are looking for more ways to build connect apps, and with Microsoft 365 integrations like Microsoft Search and the Microsoft Graph you have even more opportunities. We all use so many tools and apps and it can be cumbersome to find what we need. But Microsoft Search and the Microsoft Graph can draw unique connections between your people, files, and tools so that you can find what you are looking for. These are just two integrations that allow you and your users to be more efficient, but you can do so much more with the Microsoft 365 platform. Additionally, developers can start using our Graph Connectors that are in preview now, and Microsoft Search will be coming to Windows later this year.

Image 3: Look for a coworker and see pertinent information and shared files and apps

We know it is important for you to stay productive and we appreciate your feedback on how we can make that happen. With advancements to Windows Terminal and Windows Subsystem for Linux you have modern, fast, and powerful tools.
Now available for enterprise use, Windows Terminal 1.0 provides you with the ability to run any command line executable, including WSL distros and Azure Cloud Shell, inside multiple tabs, and panes. You can also use Unicode and UTF-8 characters, have a GPU accelerated text rendering engine, and custom themes, styles, and configurations. The Windows Terminal is available on the Microsoft Store or manually from the Terminal GitHub repo.
Improvements to Windows Subsystem for Linux (WSL) have centered around enabling hardware acceleration, running a Linux GUI app directly, and making it easier to start using Linux apps on Windows. Here are a few details:
Added support for graphics processing unit (GPU) compute workflows allows Linux tools to leverage GPUs to enable hardware acceleration for many development scenarios, such as parallel computation and training machine learning (ML) and artificial intelligence (AI) models.
Support for Linux graphical user interface (GUI) apps will enable you to open a WSL instance and run a Linux GUI app directly without the need for a third-party X server. This will help you to run your favorite apps in a Linux environment such as an integrated development environment (IDE).
WSL will soon support a simplified install experience by running the command ‘wsl.exe – install,’ which will make it easier than ever to start using Linux apps on Windows.
Additionally, preview tools and utilities, like the Windows Package Manager and Microsoft PowerToys, provide you with paths to streamline your Windows experience for even greater development productivity.
You asked for an easier way to setup your development environment and now with the Windows Package Manager Preview you have a command line interface enabling you to install your favorite tools quickly and easily. The repository of packages is open source, and we can’t wait for you to contribute and help us with the next level of improvements.
With Microsoft PowerToys (0.18) you can customize the Windows 10 shell for your personal workflows. Today’s updates add two new utilities: Keyboard Remapper and PowerToys Run. You can remap key to key and shortcut to shortcut using Keyboard Remapper. And, PowerToys Run, an app launcher utility gets you to your programs faster than before – hit alt-space and just start typing.
We look forward to working with you in the open to make progress on each of these efforts, so we can help you build productive and delightful experiences. I can’t wait to see what we can build together with WinUI, WebView2, Terminal, Windows Package Manager Preview, Project Reunion and more. If you didn’t get enough at Build, you can find additional deep-dive content on topics like WSL, Terminal, React Native for Windows, WebView2, Windows AI, and much more at Microsoft365.

Everything new from Microsoft Edge at Build 2020 – Microsoft Edge Blog

Microsoft Build 2020 can be defined by a set of ‘firsts’—it’s the first Build of the new decade, the first Build that’s all-digital for 24 hours a day, and the first Build since the new Microsoft Edge launched! We’re learning a lot as we deliver Build and Microsoft Edge in new ways.
Last year at Build, we unveiled what was coming with the new Microsoft Edge. Since then we haven’t stopped innovating to build a browser that’s right for you, with world-class performance and more security, more productivity, and more value as you browse.
We’ve introduced tools to give you more control over your privacy with Tracking prevention. We’ve added new ways to be more productive with Collections. And with Give Mode, we’ve turned searching with Bing into an easy way to do something good.
As mentioned in January, we plan to upgrade all Windows 10 devices (excluding enterprise and education) to the new Microsoft Edge. Users will be able to experience all the features above when it’s delivered via a measured roll-out that you’ll see ramping up over the course of the next few weeks. If you can’t wait and want to try it now, you can download the new Microsoft Edge here.
We believe in a web that just works for everyone. As we work to deliver a great browsing experience, we remain committed to listening to developers and sharing improvements back to the open source community that makes Microsoft Edge possible. To date, we’ve made over 3,000 commits back to the Chromium open source project that make the web more enjoyable, capable, and accessible for everyone.
This year at Build, we’re sharing ongoing innovation with improved tooling and reach for web developers, new consumer integrations, and new customization options for businesses.

What’s new for web developers
A healthy web community is made possible by a vibrant developer community. Over the last few months, we’ve worked to support that community with improvements like DevTools localization in 10 new languages, which has been adopted by many of you as you develop for Microsoft Edge. Now, we’re excited to highlight new tools that empower you, the developers who make the web possible, while expanding your canvas so you can reach your customers in more ways than ever before.
WebView2 preview expands to include .NET and UWP (WinUI) development

Last year, we pushed WebView2 forward with a preview for Win32 development. WebView2 lowers the barrier for developers to maximize code reuse across platforms with a consistent web platform to host web content in their apps. We’d like to thank everyone that has engaged with us so far throughout the preview—the contributions and feedback we’ve received drive our feature roadmap and quality.
Today, we’re expanding the preview with new options for .NET and UWP (WinUI 3.0) development, enabling you to embed a Chromium-based Edge WebView in WinForms, WPF, and UWP (WinUI 3.0) applications. Check out our documentation and Getting Started guide, or simply open Visual Studio and download the WebView2 package to get started.
Improvements to the Microsoft Edge Add-ons site make searching and finding extensions easier
For many users, extensions are a key component to the web experience. We’re committed to not only making it easy for developers to bring their Chromium-based extensions into our store, but also to make it simple for users to find them. We will be making a significant update to the Microsoft Edge Add-ons site to make it more visually appealing—new categories, new search capabilities, and a new layout will get those extensions in front of customers. Expect to see this roll out starting this month!
Making PWAs feel more at home on Windows 10
Progressive Web Apps (PWAs) continue to gain momentum as a great way to deliver content in an app-like experience across platforms, powered by web standards. With the most recent versions of Microsoft Edge and Windows 10, we’re making PWAs feel even more natural and familiar alongside other Windows apps.
Today, when you install PWAs on Windows 10, they look and feel more at home on your desktop OS in important ways, launching in a standalone window and appearing in places like Start and the Taskbar for easier access. We’re working on updates to make this integration even smoother—you’ll be able to manage them from settings, use them to share (and receive shared content), and more. Check out an early preview of this Windows integration by using Windows Insider preview builds and enabling the Web Apps Identity Proxy flag in the Microsoft Edge Canary preview build.
Try out experimental web platform features with Origin Trials
We always aim to move the web forward to meet the needs of web developers. Our Origin Trials program enables developers to test drive experimental features on their websites for a set length of time. Prototypes that we haven’t enabled for the general web yet will work on your site for a selection of your visitors in Microsoft Edge, enabling you to gather and provide early feedback which can influence the final API.
Learn more and register for an Origin Trial at the new Origin Trial Developer Console today!
New features for every user
This week, we’re also introducing a few exciting new features to help you be more productive, and a new integration to help find and organize the content you want.
Collections in Microsoft Edge is getting smarter with a new Pinterest integration
Collections helps you organize, save, and share your online life by allowing you to create groups of content from around the web. Links, images, text, and notes can be saved together across multiple sites, pages, and browser sessions to help you stay organized and inspired.
Now, Collections in Microsoft Edge is collaborating with Pinterest to help you discover relevant content for your research or project. People use Collections to capture their favorite design ideas, recipes, home improvement links, and even to research their next big purchase across multiple sites. This new integration with Pinterest will help you find ideas to spark inspiration, save time, and be more productive by suggesting content related to what you have already collected. When you enable the feature, you will see Pinterest suggestions at the bottom of your collection. Clicking on a suggestion will open a board of similar, trending Pins so you can quickly find and add ideas relevant to you.
This collaboration also allows you to export your collection to Pinterest. Any saved webpages or images will then show up in a new board in your Pinterest account.

Collections will also be rolling out the ability to send to OneNote, in addition to the options to send to Excel and Word which are available today. Collections integration with Pinterest, and Send to OneNote, will appear in Insider channels within the next month. Join our Edge insider program to be one of the first people to try it.
Sidebar search provides a faster, more contextual way to look things up

Today you have the option to look up words or phrases by searching in a new tab. This can make you lose your train of thought instead of helping you get more out of what you’re reading. Sidebar search aims to improve this experience by giving you the option to see results in a pane on the side of the page. Simply highlight a word or phrase, right click, and select “search in sidebar” from the context menu. And if you’re at work and signed in with your Azure Active Directory account, you’ll even see company results! Reading a corporate strategy paper with unlinked references? Use sidebar search to help find the answer. When you’re done, you can close out of the pane or keep searching in it to look up additional information.
Expect to see this show up in Insider preview channels in the coming weeks. Become an Edge Insider to be one of the first to try it.
New features for information workers and IT Pros
Microsoft Edge is the browser for business, and today we’re announcing new features and updates to make the lives of IT managers and information workers a little bit easier. Want to try these out in your organization? Download offline installers here.
New syncing and customization options for IT professionals

If you use multiple devices while working from home, you know how important sync is. Installed extensions now sync in Microsoft Edge and a new policy even allows IT professionals to precisely manage which types of data sync for their users. The flexibility to sync individual data types means IT professionals can fit syncing to their workplace needs. For some workplaces, syncing passwords might not be allowed—now IT can manage this.
Coming soon, sync will also extend to customers whose environments are still on-premises. The transition to the cloud takes time, and your company should be able to get the most out of Microsoft Edge during that transition.
Data security gets a boost with Windows Information Protection
As many people work from home, data protection is top of mind, especially for IT professionals. Microsoft Edge now supports Windows Information Protection for Windows 10 customers which clearly separates personal and corporate data, adds extra protection for line-of-business apps, and provides audit reporting for compliance. This has been a top ask by many customers, and we’re excited to bring it to the new Microsoft Edge.
Easily move between work and personal profiles

For information workers, we’ve made improvements to help keep them in their flow throughout the workday—this is especially true for those working at home, where work and personal boundaries can easily blend. Microsoft Edge now allows users to set a default profile for any link they open, creating a consistent experience even if they’re switching between profiles throughout the day.
Microsoft Edge helps you manage your profiles even more with a feature called Automatic Profile Switching. Previously, if you’ve been using your personal account and then try to access a work link, you’d be forced to sign-in again because your personal account doesn’t have your work credentials. With the new Automatic Profile Switching feature, Microsoft Edge will detect that the link you’re trying to open needs work credentials, and then switch you to your work profile to open it. Profile switching has never been smoother.
Microsoft Search in Bing puts your work results all in one place
Bing is bringing the life-changing capability of search to the workplace, and we have an exciting update as part of this year’s Build. A comprehensive Work page will now be part of Bing’s search results pages for all Microsoft 365 customers. When signed-in to Bing with your work credentials, this page will appear right next to other familiar pages such as Images, Shopping, and News. This new results page gives you the option to view work-specific results such as files, people, internal websites, and more. If your organization uses Microsoft 365 Apps for enterprise, just sign into Bing with your work credentials and try it today. Learn more on our new website!
We hope you enjoy this new 48-hour, all-digital format as we meet you where you are around the world—we truly can’t thank you enough for joining us online for Microsoft Build 2020.
Keep innovating, keep building, and keep expecting more from the web.

Using multiple profiles at work and at home is now easier with Microsoft Edge – Microsoft Edge Blog

Our customers tell us that they like to keep their browsing data separate as they take on various roles in their lives. For people at home working from their own devices, this is particularly important.
Microsoft Edge’s “Profiles” feature is a great way to do this, whether you’re switching between work and personal browsing, juggling your job and freelancing business, or managing your tasks as an admin alongside other responsibilities.
In this post, we’ll share some improvements coming to browsing with multiple profiles in Microsoft Edge, and walk you through how to get started with this feature.
Setting up multiple profiles
To get started with multiple profiles, click the profile icon to the right of your address bar and click “Add a profile”. Then, on the consent screen that comes next, just click “Add”. Your profile is now added.
Each profile opens in a new window and gets its own desktop icon. You can pin each desktop icon independently to your Windows taskbar by right clicking on the Microsoft Edge icon.
If you’d like to roam your data across devices, you can sign into each profile with a Microsoft Account or a Work or School Account and choose to sync your data. Since browsing data is separated between profiles, each profile will sync independent of the other.

Switching between profiles
You can switch between profiles any time by clicking on the desktop icon or window associated with a profile. You can also switch using the profile flyout by clicking the profile icon or you can switch from the edge://settings/profiles page.

Getting to the right profile
We’ve heard that two things that users find challenging is getting links to open in the right profile and making sure that you don’t mistakenly open work content in your personal profile. Today, we’re excited to announce two features that we hope will make this easier:
Selecting a default profile (available in Microsoft Edge 81 and higher)
To ensure that links you open from another app open in the profile of your choice, you can now select a default profile in Microsoft Edge. To select a default profile to open external links, do the following:
Navigate to edge://settings
Select the “Multiple profile preferences” option (Note: This will only show if you have multiple profiles.)
Use the drop down menu to select which profile you’d like external links to open with.

Automatic profile switching (available in Microsoft Edge 83 and higher)
We’re also excited to announce a new feature to help you get to your work content more easily while using multiple profiles. We call it Automatic Profile Switching. If you’re a multiple profiles user, you can check it out by trying to navigate to a work site (a site authenticated with your work or school account) while in your personal profile.
When we detect this, we will prompt you to switch to your work profile to access that site without having to authenticate to it. When you choose the work profile you want to switch to, the website will simply open in your work profile.
We hope that this will help you keep your work and personal data separate and help you get to your work content more seamlessly. In case this doesn’t work for your flows, you can choose “Don’t ask me again,” and it will get out of your way.

We are excited to release this improvement for your multiple profile scenarios—give it a try and let us know how you like it! If you run into any issues or have any feedback on using multiple profiles, use the in-app feedback button (or Alt-Shift-I) and we’ll use it to make the experience better for you.
Thank you for helping us build Microsoft Edge be the best browser for you.
– Avi Vaid, Program Manager, Microsoft Edge

Update on Stable channel releases for Microsoft Edge – Microsoft Edge Blog

In light of current global circumstances, the Microsoft Edge team is pausing updates to the Stable channel for Microsoft Edge. This means that Microsoft Edge 81 will not be promoted to Stable until we resume these updates.
We are making this change to be consistent with the Chromium project, which recently announced a similar pause due to adjusted schedules, and out of a desire to minimize additional impact to web developers and organizations that are similarly impacted.
We will continue to deliver security and stability updates to Microsoft Edge 80. Preview channels (Canary, Dev, and Beta) will continue to update on their usual schedule.
As the situation evolves, we will post updates here and on our Twitter channel.

Protecting users from potentially unwanted applications in Microsoft Edge – Microsoft Edge Blog

Our customer feedback tells us that when users search for free versions of software, they often find applications with a poor reputation being installed on the machine at the same time. This pattern indicates that the user has downloaded an application which shows offers (or bundles) for potentially unwanted applications (PUA).
Potentially unwanted applications can make the user less productive, make the user’s machine less performant, and lead to a degraded Windows experience. Examples of PUA include software that creates extra advertisements, applications that mine cryptocurrency, applications that show offers for other software and applications that the AV industry considers having a poor reputation.
In the new Microsoft Edge (beginning with 80.0.338.0), we’ve introduced a new feature to prevent downloads that may contain potentially unwanted apps (PUA), by blocking those apps from downloading. This feature is off by default, but can be turned on in three easy steps:
Tap … (Settings and more) > Settings.
Choose Privacy and services.
Scroll down to Services, and then turn on Block potentially unwanted apps.

Here is what users will see when a download is blocked by the feature (Note: PUA blocking requires Microsoft Defender SmartScreen to be enabled):

To learn more about what Microsoft defines as PUA, see the criteria in our documentation.
If an app has been mislabeled as PUA, users can choose to keep it by tapping … in the bottom bar, choosing Keep, and then choosing Keep anyway in the dialog that appears.

From edge://downloads/, users can also choose Report this app as reputable, which will direct them to our feedback site. There, users can let us know that they think the app is mistakenly marked as PUA.
If you own the site or app in question, you can let us know here. Your feedback will be reviewed by our team to determine an appropriate follow up action.

Our goal is to assist users in getting the apps they want, while empowering them to maintain control over their devices and experiences.
You can learn more about how Microsoft identifies malware, unwanted software, and PUA in our security documentation.
We encourage users to always try to download software from a trusted location, such as the publisher’s website or a reputable app store, and to check reviews of the app and the reputation of the publisher before downloading.
If you are an admin or IT professional and are interested in enabling this feature on for your users, see our enterprise documentation here.
We hope you’ll try out this new feature in the new Microsoft Edge and let us know what you think! Give us your feedback by clicking the feedback link in the upper right corner of your browser or pressing Alt-Shift-I to send feedback.
– Juli Hooper and Michael Johnson, Microsoft Defender ATP