- fprintf(f,
- "%d \"%s\"\n",
- (int) [dict objectForKey:kCGWindowNumber],
- [(NSString *) [dict objectForKey:kCGWindowOwnerName]
- cStringUsingEncoding:[NSString defaultCStringEncoding]]);
+
+ // loginwindow creates multiple toplevel windows. Grab the lowest one.
+ if(![([dict objectForKey:(NSString *)kCGWindowOwnerName])
+ compare:@"loginwindow"]) {
+ windowNumber = ((NSNumber *)[dict objectForKey:
+ (NSString *)kCGWindowNumber]).intValue;
+ }