The monitor handle could have become invalid just before the call to
GetDpiForMonitor. It was possible for both window and monitor content
scale queries.
This ensures both that an appropriate error is emitted and that the
retrieved values are zero on error.
Fixes#1615
(cherry picked from commit fbfd7e65c8)
Files built for Win32 must use C89 style declarations for compatibility
with VS 2010 and 2012, which are still supported by GLFW.
(cherry picked from commit 56aad76b16)
This adds basic support for the Per-Monitor V2 level of DPI awareness
in Windows 10, which allows for automatic DPI scaling of window
decorations.
This commit does not include resizing the window content area to match
the new window content scale.
Related to #1115.
Fixes#1294.
Allow window creation despite video mode setting failure.
Video mode setting failure is ignored the rest of the time and the
desired video mode has never been a hard constraint anyway.
This adds glfwGetWindowContentScale and glfwGetMonitorContentScale for
querying the recommended drawing scale factor for DPI-aware rendering.
Parts of this patch are based on code by @ferreiradaselva.
Fixes#235.
Fixes#439.
Fixes#677.
Fixes#845.
Fixes#898.
This changes enumeration to add as a GLFW monitor any active adapter
without displays, even if other active adapters do have displays.
Related to #441.
Fixes#960.
Monitor enumeration now switches to adapters if no displays are
connected to active adapters. This should provide usable monitor
objects on headless and VMware guest systems.
Fixes#441.
Fixes#556.
Fixes#594.
Fixed incorrect error types. Added missing error string prefixes.
Removed some invalid or superfluous error emissions. Clarified some
error strings. Joined error string lines to aid grep. Replaced some
generic error strings with specific ones. Documentation work.
Fixes#450.
The display device string was used, instead of the adapter device name,
leading to the wrong incorrect physical size being returned for
non-primary monitors. The right incorrect physical size is now returned
for all monitors.