The Light Before We Land
Readying Swing for a high DPI future
Kirill Grouchnikov has an interesting blog today that calls on desktop developers to get ready for a looming change that most aren't really prepared for: the high-DPI future.
The problem is that if our GUI toolkits measure everything in terms of pixels -- especially if those pixels are counted in integers -- and every year there are more pixels in the same amount of screen space, then the GUI's will continue to get smaller and smaller as users buy increasingly higher-resolution monitors.
In Kirill's blog, Java on the desktop - trail behind or lead forward?, he notes Chet Haase's mini-survey, during a presentation at the Desktop Matters conference, of possible new Swing features. Chet got few takers for a feature request to better handle higher resolution (or ideally, to just be resolution-independent).
Even more interesting was Chet's phrasing of the question - it went something like "In a hundred years, when everybody has 9000 DPI monitors, how important is it for Java to support this?" Well, it won't be in a hundred years, it's already here and will only get bigger, and without immediate action Java once again will be left behind (providing it in another eight years circa Java SE 10).
Chris Campbell's comment to Kirill's blog nails the non-discussion of this issue perfectly:
I too was surprised at the small show of hands at Desktop Matters. I suspect that this is one of those areas that most developers don't realize will have a big impact on their user interfaces in the near future (kind of like software developers in 1987 couldn't care less about Y2K).
Kirill announces that the next version of his Substance look-and-feel will address this issue head-on, with some help from the JGoodies Looks project, and his blog offers a preview of scaled widgets under a resolution-aware Substance. Niiiiiice.
Also in a desktop vein, today's Weblogs features John