Proper scaling support in Windows

I know that scaling for high resolution screens is a hot mess in Windows but high resolution displays are becoming increasingly common, especially in laptops, and Scrivener quite simply doesn’t obey the DPI settings in Windows.

When using Scrivener on my 1920x1080 displays on my desktop the text is large enough to be readable and spaced well on the screen. When I open the same document on my Surface Pro 3 which is 2160x1440 most of the text becomes almost too small to read and Scrivener’s UI (specifically the Inspector panel) is thrown out of a usable proportion. The note cards become too small on the cork board, but the text remains roughly the same, but the Synopsis text in the Inspector is tiny even compared to the fact the Inspector is too narrow.

Increasing the scale inside of Scrivener isn’t an option because the setting is tied to the document, not the computer, so if I increase the scale by, say, 150% on the laptop then its increased by 150% on the desktop as well. I would say to save the scaling info in AppData, but frankly the right way to fix this is to make Scrivener obey Windows scaling rules. There is a SetProcessDpiAwareness API in Visual Studio that is used to fix this exact problem.

I can’t claim to understand the technical issues, but I’m having the same problem running Scrivener for Windows 10 on my Surface Pro 3.

The problem is that the version of the QT framework the Windows port of Scrivener is written in does not support scaling. We’ve been told that with the as-yet-no-ETA upcoming major update of Windows Scriv, the underlying QT framework will be upgraded as well and that will help solve the problem.

In the meantime, would it be too much to ask that the Windows Scrivener team include the XML manifest file that has been linked about the Windows forums, so that if a user enables the registry key on their own Scrivener will immediately begin honoring it?

Oh, and for the original poster:

See this thread for a workaround. I’ve been using it on Windows 10 for a while.

+1 for this feature being urgent. The .manifest trick makes Scrivener theoretically usable but a pain to look at directly. I might end up returning my nice new laptop on account of Scrivener not running well on it, but I’m not sure if any new laptops these days would be much better.