With my wife struggling to use a modern Windows 10 laptop with an external display, I’m reminded of how Microsoft has never fixed the issues with high DPI displays.
And in one of life’s many small coincidences, Microsoft may have literally just explained why it will likely never do so.
The issue is simple enough for the majority of us who use Windows 10 with a single display. (Portable or desktop, it doesn’t matter.) If the resolution of the display on that PC is high enough, and the physical size of that display is small enough, then you’ve got what’s called a high DPI display. And you will need to scale the UI in order to make commonly-used interfaces—icons, buttons, text, whatever—readable and usable.
Windows 10 of course handles this in a fairly elegant way, assuming you’re only talking about the OS itself and modern Windows Store apps: Using Display settings (Settings, System, Display), you can scale the UI from 100 percent—the default on “normal” (non-high-DPI) displays—to 125 percent to 250 percent, or even more, depending on the display. Surface Book and other PCs with high-DPI displays will ship with this setting enabled somewhere in that range. Otherwise, the icons and other onscreen items would be too small to see or use.
Where this functionality falls apart is legacy apps, especially older desktop applications that have never been updated for these modern display types. For example, my well-worn copy of Adobe Photoshop Elements 11 still works just fine on my desktop PC, where the display scaling on the 27-inch 1080p display is set to 100 percent. But on modern portable computers, like Surface Book, the menus and other onscreen interfaces are too tiny to read or accurately select because this app doesn’t scale. I had to buy a more modern version, Photoshop Elements 14, to use on these devices. That version does scale.
In my own usage, I still run into desktop applications that work poorly on high DPI displays. Android Studio is a great example: It’s poorly made and designed, and aside from the rampant performance and reliability problems, its inability to handle high DPI displays remains my major stumbling block. Learning Java and Android software development has been an easier task than just getting the development environment to look and work correctly on my portable PCs. (That is almost not an exaggeration.)
But back to my wife, who I often offer up as a so-called normal user. She doesn’t care about anything I just described, and she just wants to get work done. I recently switched her from a 2015-era HP Spectre x360 to the 2016-era HP Spectre laptop that I reviewed back in July. (It’s a little more complicated than that; she was also using an HP Stream 11 at a standing desk and was hoping to find one thin and light machine she could use both at her normal desk and the standing desktop. But I digress.)
For the past several years, my wife’s “desktop” PC setup has included a portable PC of some kind (a 13-inch Samsung Series-9 Ultrabook for a while, then that HP Spectre x360) connected to a 27-inch display, keyboard, and mouse using a USB-based hub and a tangle of wires. With the new HP Spectre, I wanted to get her going with a more elegant solution, perhaps involving a single cable. (This would make it easier to move between the “docked” desktop setup and the portable mode at the standing desk.) So I grabbed a Plugable USB-C Docking Station from Amazon, and the results have been pretty great: She actually uses two USB-C cables (one for power, one for the dock), but it’s a much less tangly experience than before. That one cable drives the display, the mouse, the keyboard, whatever USB storage she needs, and her Ethernet connection.
Less elegant, however, is the experience of moving between docked and non-docked usage. And anyone using Windows 10 who has done such a thing can see where this is going: Because she mirrors the display between the laptop and the desktop display, it’s never right. At the desk, she needs the display configured for 100 percent scaling. But using just the laptop, she needs it set to 125 or 150 percent (I can’t recall) so she can actually see and use the on-screen items. Windows won’t elegantly move between the two, in fact won’t do so at all. And so she is stuck. She can either learn to span the displays while docked. Or deal with manually changing the scaling every single time she docks/undocks the PC.
In other words, this is broken. Has been for years. Still is.
I mention a coincidence. Just yesterday, Microsoft published yet another lengthy blog post describing the challenges of high DPI displays and how it is continually improving the OS to make it better. Speaking of challenges, I challenge you to actually read it. It’s dense, and tough-going. But if you slog through all of it, the conclusion is obvious enough: Microsoft will never really fix this problem. Not really.
And you can see why in this post’s lengthy explanation about how Microsoft, over multiple releases of Windows 10, attempted to fix just one legacy desktop application that’s built into Windows, Notepad, to work correctly on high-DPI displays in a very specific scenario: You have two displays, each with its own display scaling setting. You couldn’t pick a simpler application. And yet, this was a huge challenge to fix.
“During the first Windows 10 release we developed functionality that would enable non-client area to scale dynamically, but it wasn’t ready for prime-time and wasn’t released publicly until we released the Anniversary Update,” the post explains. That’s right. It took Microsoft three releases of Windows 10 to get one app—one very simple app—to work properly with high DPI. In one scenario.
Seriously. Read that post, just the part about Notepad. And then wonder to yourself: How on earth will this ever just work? For me. For my wife. For you. For anyone. And the conclusion is clear: It won’t, not really.
“We recognize that there are still gaps in the DPI-scaling functionality that Windows offers desktop application developers and the importance of fully unblocking developers in this space,” the post concludes. “Stay tuned for more goodness to come.”
I could use some goodness right now, to be frank. So could a lot of other people.