Cleanup of #493.

This commit is contained in:
Camilla Berglund 2015-04-09 16:09:39 +02:00
parent 4277e9f5d6
commit c5099ff407
2 changed files with 9 additions and 11 deletions

View File

@ -64,6 +64,7 @@ GLFW bundles a number of dependencies in the `deps/` directory.
- Bugfix: Initialization failed on headless systems
- Bugfix: The cached current context could get out of sync
- [Cocoa] Bugfix: The cached `NSScreen` for a monitor could get out of sync
## Contact
@ -102,6 +103,7 @@ skills.
- Doug Binks
- blanco
- Martin Capitanio
- Chi-kwan Chan
- Lambert Clara
- Andrew Corrigan
- Noel Cower

View File

@ -32,20 +32,16 @@
#include <crt_externs.h>
// Returns the screen that is specified by a displayID
// Returns the NSScreen corresponding to the specified CGDirectDisplayID
//
static NSScreen *getScreen(CGDirectDisplayID displayID)
static NSScreen* getScreen(CGDirectDisplayID displayID)
{
// NOTE: 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.
NSArray *screens = [NSScreen screens];
NSArray* screens = [NSScreen screens];
for(NSScreen *screen in screens) {
NSDictionary *dictionary = [screen deviceDescription];
NSNumber *number = [dictionary objectForKey:@"NSScreenNumber"];
for (NSScreen* screen in screens)
{
NSDictionary* dictionary = [screen deviceDescription];
NSNumber* number = [dictionary objectForKey:@"NSScreenNumber"];
if ([number unsignedIntegerValue] == displayID)
return screen;
}