Commit Graph

84 Commits

Author SHA1 Message Date
Camilla Löwy
52c7a4fc7f Fix glfwGetGammaRamp error handling
This makes glfwGetGammaRamp return NULL on platform error as specified.

Related to #1387.
2018-12-26 15:00:39 +01:00
Emmanuel Gil Peyrot
8d98a6e37d Add a FreeMonitor platform API
This fixes the leak of a wl_output object everytime a monitor is freed.
2018-03-01 08:31:54 +01:00
Camilla Löwy
1d75b205cb Cleanup
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.
2018-02-07 16:46:58 +01:00
Camilla Löwy
973bf29622 Remove use of non-standard function strdup
Related to #873.
2018-01-17 11:56:35 +01:00
Camilla Löwy
16bf872117 Add content scale queries
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.
2017-10-26 17:26:36 +02:00
Camilla Löwy
e3be6b8ae0 Cleanup
Break up some overly long lines.
2017-09-17 15:14:22 +02:00
Camilla Löwy
6a8ade99c7 Cocoa: Remove errors emitted on headless systems
Related to #958.
2017-03-10 14:44:55 +01:00
Camilla Löwy
980f955f6c Fix undefined behavior
Fixes #950.
2017-02-16 05:23:10 +01:00
Camilla Löwy
51e415a026 Cocoa: Fix CGDisplayModeCopyPixelEncoding cutoff 2017-01-02 06:06:01 +01:00
Camilla Löwy
04f559e28d Restructure monitor enumeration
This way is both kinder on event-based enumeration and less work to
unwind allocations for when properly implementing GLFW_OUT_OF_MEMORY.
2017-01-02 06:03:02 +01:00
Camilla Löwy
f4d0c83181 Paperwork done 2016-11-30 14:00:41 +01:00
Camilla Berglund
9190cf8796 Cocoa: Disable deprecated function on macOS 10.12+
CGDisplayModeCopyPixelEncoding is deprecated starting with macOS 10.12.
2016-11-16 15:10:29 +01:00
Camilla Berglund
d19a21bd01 Cocoa: Monitor name cleanup
Only retrieve the display info dictionary once.  Remove non-standard
function name.
2016-11-16 15:09:07 +01:00
Matthew Henry
94b8486d4b Cocoa: Replace deprecated CGDisplayIOServicePort
This replaces CGDisplayIOServicePort with manually finding a service
port with matching vendor and product IDs.  This may technically not be
the one corresponding to the display ID, but it is only used to retrieve
the human-readable make/model string.

This could be cleaned up and refined a bit by comparing more display
attributes when available, but it gets the job done.

Fixes #165.
Closes #192.
Closes #508.
Closes #511.
2016-11-16 15:06:37 +01:00
Camilla Berglund
8d6f265441 Update default name from OS X to macOS
Note that earlier releases are still referred to by their proper names;
OS X <version> or Mac OS X <version>.
2016-10-20 00:53:37 +02:00
Camilla Berglund
f0a55df963 Cleanup 2016-09-26 13:26:36 +02:00
Camilla Berglund
53fafad915 Start 3.3 2016-08-18 23:55:49 +02:00
Camilla Berglund
c18d3aecbc Cocoa: Remove duplicate includes
Fixes #838.
2016-08-17 01:39:47 +02:00
Camilla Berglund
e77a76a284 Cleanup 2016-08-04 13:19:22 +02:00
Camilla Berglund
757eea2779 Update email address 2016-06-01 21:25:20 +02:00
Camilla Berglund
6a8e169001 Update copyright notice year 2016-06-01 21:25:19 +02:00
Camilla Berglund
12b6c56903 Add suffixes to platform specific helper functions
Also merge win32_tls.h into win32_platform.h.
2015-12-13 14:50:59 +01:00
Camilla Berglund
0eccf75f65 Replace GL booleans with public macros 2015-10-13 00:46:02 +02:00
Camilla Berglund
95a07f3340 Start 3.2 2015-10-12 21:59:49 +02:00
Camilla Berglund
e0084617d5 Fix monitor disappearing on OS X with AGS
When automatic graphics switching is activated, the CGDirectDisplayID
for the display changes, casuing the primary GLFWmonitor to disappear.
2015-10-12 18:42:18 +02:00
Camilla Berglund
f6f0771770 Replace NSScreen with platform functions 2015-09-07 16:32:10 +02:00
Chi-kwan Chan
4277e9f5d6 Removed NSScreen member of OS X monitor.
Apple's documentation of [NSScreen screens] mentions that, "The
(screens) array should not be cached.  Screens can be added, removed,
or dynamically reconfigured at any time."  Because of this, we simply
obtain the screen from a displayID whenever we need it.

Fixes #492.
Closes #493.
2015-04-09 17:59:37 +02:00
Camilla Berglund
49cf82a0ac Cleaned up monitor and video mode enumeration. 2015-04-09 17:40:27 +02:00
Camilla Berglund
29b40112c2 Fixed sleeping monitors being excluded from list.
Closes #430.
2015-03-19 16:21:52 +01:00
Camilla Berglund
d493a82f9e Various error fixes.
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.
2015-03-15 15:52:27 +01:00
Camilla Berglund
e64699bd54 Updated no-replacement-for-function date. 2015-01-05 01:43:02 +01:00
Camilla Berglund
e1ae9af5a0 Removed OS X display capturing (for now).
Fixes #378 (poorly).
2014-12-02 23:25:07 +01:00
Camilla Berglund
468714cab9 Unified video mode enumeration. 2014-09-22 19:25:05 +02:00
Camilla Berglund
a0742e99e3 Fixed error return value of glfwGetCocoaMonitor. 2014-09-17 12:28:26 +02:00
Camilla Berglund
1b6d8a6ed6 Enabled enumeration of mirroring displays.
This exposes all monitors in every mirroring group, which is needed for
robust detection of an Oculus Rift.
2014-09-16 18:27:33 +02:00
Camilla Berglund
3fcc2a6cb2 Documented use of deprecated OS X function. 2014-09-03 00:31:39 +02:00
Camilla Berglund
59d1aa52f2 Merged gamma files into monitor files. 2014-08-18 12:31:48 +02:00
Camilla Berglund
215924f797 Removed harmless CGDisplay to NSScreen error.
This used to be a failure state, but has since been fixed.

Closes #221.
2014-06-19 13:50:29 +02:00
Camilla Berglund
bf0adc2c70 Fixed crash on monitor disconnection. 2014-03-25 19:37:25 +01:00
Camilla Berglund
aaac715060 Reverted 43095307da.
The proposed fix broke for multiple displays of the same model.
2014-03-19 23:25:03 +01:00
Camilla Berglund
5c23071a81 Fixed leak of display name. 2014-03-10 18:56:33 +01:00
Camilla Berglund
43095307da Cleanup of CGDisplayIOServicePort replacement. 2014-03-10 18:56:33 +01:00
Matthew Henry
bebae14223 Replace CGDisplayIOServicePort with a workaround
This could be cleaned up and refined a bit by comparing more display
attributes when available, but it gets the job done.

Closes #192.
2014-03-10 18:56:33 +01:00
Camilla Berglund
78f1b8bd15 Fixed invalid video mode being restored. 2014-03-10 12:44:27 +01:00
Camilla Berglund
87dd7b89f5 Video mode detection cleanup. 2014-03-10 12:36:23 +01:00
Camilla Berglund
611006af18 Updated API version in comment headers. 2014-01-22 01:32:00 +01:00
Camilla Berglund
0548c713e8 Renamed monitor helper functions for clarity. 2014-01-21 15:23:11 +01:00
Camilla Berglund
beb7e5909f Added comment on headless Macs. 2014-01-21 15:17:28 +01:00
Camilla Berglund
6eec7970c1 Made NSScreen to CGDisplay matching fail softly. 2014-01-21 15:14:14 +01:00
Camilla Berglund
7bbd3943c9 Removed superfluous display sorting. 2014-01-21 15:07:26 +01:00