Friday, 28 June 2013

Windows 8.1: What’s in it for Desktop applications and developers?

Windows 8.1: What’s in it for Desktop applications and developers?

Windows 8.1 Office Touch (Metro) preview

Share This Article

After two hours of non-stop demos of Modern/Metro UI applications at Microsoft’s Build keynote, it was almost possible to forget that most of us still spend much of our day in good “old-fashioned” Desktop applications. In my case, even where there is a Metro equivalent — like with Internet Explorer — I prefer the more full-featured “classic” version. So once the echoes of the keynote faded, I headed off to a breakout session titled “Power-up your Desktop application with Windows 8.1″ to see what was on offer for those of us still in the land of overlapping windows and mice with three buttons.
Microsoft’s James Clarke provided a whirlwind overview of “what’s in it for me” for Windows Desktop developers and users of their applications. He started by pointing out that, like it or not, PCs are undergoing a radical transformation in capabilities and form factors. With the advent of convertible units, touchscreens, and an array of new gesture-based input devices, Desktop applications need to evolve as well. Fortunately, Microsoft has been busy adding fairly extensive support in Windows 8.1 for Desktop applications to take advantage of the new capabilities.
Clarke covered handling high-DPI displays, the need for smooth and sophisticated multimedia on a variety of devices, and handling some of the new input devices. For high-DPI displays, Microsoft is providing improved scaling in Windows 8.1 — starting by adding a 200% scaling option. Users will also no longer need to reboot when they change scaling or DPI on a display. Most important for developers, 8.1 will support having different DPI settings on each display in multi-monitor configurations. While this feature will work by default based on the user’s settings, applications can register to receive callbacks when either the monitor DPI is changed or when a window moves to a monitor with a different DPI.
Windows 8.1 DPI changing between different-sized displays
When it comes to input, mouse, touch, and pen devices have all been unified into a common input model. Developers can work with the raw data from each, at a higher level where they receive gestures like pan and zoom, or at the highest level where Windows provides an ink API and will actually perform interface operations like pan and zoom for them.
For output, the new rendering, animation, and compositing capabilities in Windows 8.1 nicely echo some of the latest techniques proposed for the Canvas tag in HTML5. Applications build a rendering tree of bitmaps, video and other media objects that is then sent with a transaction-based Commit command to Windows. Once the objects and rendering instructions have been sent, the display can be updated independently from the application code. This helps provide smooth multimedia experiences even if the application is busy with other tasks.
As a testimonial to the new features, Adobe’s Jerry Harris — Photoshop Principal Scientist — came out and showed proposed versions of both the Photoshop UI and the Lightroom UI optimized for high-DPI touch displays. Menu items and objects were rendered in a larger scale, so they could be more easily selected with touch, and their fonts are made larger for easier reading on dense screens. Unfortunately, Harris’s slide detailing Adobe’s commitment to support all the new technologies in Windows 8.1 was labeled “Aspirational,” so it isn’t clear exactly when these new interfaces will be available.
The proposed Photoshop UI for high-DPI devices uses larger icons and fonts to make interaction easier.
The bottom line is that Windows 8.1 will provide some very useful capabilities for desktop applications that are willing to do some work to take advantage of them. Support for higher-density displays, touch including gestures and ink, and the kind of immersive multimedia experiences users are coming to expect are all going to be available, but each will take some work from the application developers.

No comments:

Post a Comment