- (void)awakeFromNib
{
[self setAutoresizesSubviews: YES];
- [self setImagesLeft:[NSImage imageNamed:@"topbar-dark-left"] middle: [NSImage imageNamed:@"topbar-dark-center-fill"] right:[NSImage imageNamed:@"topbar-dark-right"]];
+ [self setImagesLeft:imageFromRes(@"topbar-dark-left") middle: imageFromRes(@"topbar-dark-center-fill") right:imageFromRes(@"topbar-dark-right")];
[self loadButtonIcons];
[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(controlTintChanged:) name: NSControlTintDidChangeNotification object: nil];
-
- [o_red_btn setImage: o_red_img];
- [o_red_btn setAlternateImage: o_red_on_img];
- [[o_red_btn cell] setShowsBorderOnlyWhileMouseInside: YES];
- [[o_red_btn cell] setTag: 0];
- [o_yellow_btn setImage: o_yellow_img];
- [o_yellow_btn setAlternateImage: o_yellow_on_img];
- [[o_yellow_btn cell] setShowsBorderOnlyWhileMouseInside: YES];
- [[o_yellow_btn cell] setTag: 1];
- [o_green_btn setImage: o_green_img];
- [o_green_btn setAlternateImage: o_green_on_img];
- [[o_green_btn cell] setShowsBorderOnlyWhileMouseInside: YES];
- [[o_green_btn cell] setTag: 2];
- [o_fullscreen_btn setImage: [NSImage imageNamed:@"window-fullscreen"]];
- [o_fullscreen_btn setAlternateImage: [NSImage imageNamed:@"window-fullscreen-on"]];
- [[o_fullscreen_btn cell] setShowsBorderOnlyWhileMouseInside: YES];
- [[o_fullscreen_btn cell] setTag: 3];
}
- (void)controlTintChanged:(NSNotification *)notification
o_green_on_img = [[NSImage imageNamed:@"snowleo-window-zoom-on-graphite"] retain];
}
}
+
+ [o_red_btn setImage: o_red_img];
+ [o_red_btn setAlternateImage: o_red_on_img];
+ [[o_red_btn cell] setShowsBorderOnlyWhileMouseInside: YES];
+ [[o_red_btn cell] setTag: 0];
+ [o_yellow_btn setImage: o_yellow_img];
+ [o_yellow_btn setAlternateImage: o_yellow_on_img];
+ [[o_yellow_btn cell] setShowsBorderOnlyWhileMouseInside: YES];
+ [[o_yellow_btn cell] setTag: 1];
+ [o_green_btn setImage: o_green_img];
+ [o_green_btn setAlternateImage: o_green_on_img];
+ [[o_green_btn cell] setShowsBorderOnlyWhileMouseInside: YES];
+ [[o_green_btn cell] setTag: 2];
+ [o_fullscreen_btn setImage: [NSImage imageNamed:@"window-fullscreen"]];
+ [o_fullscreen_btn setAlternateImage: [NSImage imageNamed:@"window-fullscreen-on"]];
+ [[o_fullscreen_btn cell] setShowsBorderOnlyWhileMouseInside: YES];
+ [[o_fullscreen_btn cell] setTag: 3];
}
- (BOOL)mouseDownCanMoveWindow
}
- (NSNumber*)extendedAccessibilityIsAttributeSettable: (NSString*)theAttributeName {
- return ([theAttributeName isEqualToString: NSAccessibilitySubroleAttribute] ? @NO : nil); // make the Subrole attribute we added non-settable
+ return ([theAttributeName isEqualToString: NSAccessibilitySubroleAttribute] ? [NSNumber numberWithBool:NO] : nil); // make the Subrole attribute we added non-settable
}
- (void)accessibilityPerformAction: (NSString*)theActionName {
[contextMenu release];
NSURL * representedURL = [[self window] representedURL];
- if (! representedURL)
+ if (!representedURL)
return;
NSArray * pathComponents;
for (NSUInteger i = count - 1; i > 0; i--) {
currentPath = [NSMutableString stringWithCapacity:1024];
for (NSUInteger y = 0; y < i; y++)
- [currentPath appendFormat: @"/%@", pathComponents[y + 1]];
+ [currentPath appendFormat: @"/%@", [pathComponents objectAtIndex:y + 1]];
[contextMenu addItemWithTitle: [[NSFileManager defaultManager] displayNameAtPath: currentPath] action:@selector(revealInFinder:) keyEquivalent:@""];
currentItem = [contextMenu itemAtIndex:[contextMenu numberOfItems] - 1];
[currentItem setImage: icon];
}
- if ([pathComponents[1] isEqualToString:@"Volumes"]) {
+ if ([[pathComponents objectAtIndex:1] isEqualToString:@"Volumes"]) {
/* we don't want to show the Volumes item, since the Cocoa does it neither */
currentItem = [contextMenu itemWithTitle:[[NSFileManager defaultManager] displayNameAtPath: @"/Volumes"]];
if (currentItem)
[currentItem setImage: icon];
[currentItem setTarget: self];
- [NSMenu popUpContextMenu: contextMenu withEvent: o_event forView: [self superview]];
+ // center the context menu similar to the white interface
+ CGFloat menuWidth = [contextMenu size].width;
+ NSRect windowFrame = [[self window] frame];
+ NSPoint point;
+
+ CGFloat fullButtonWidth = 0.;
+ if([[VLCMain sharedInstance] nativeFullscreenMode])
+ fullButtonWidth = 20.;
+
+ // assumes 60 px for the window buttons
+ point.x = (windowFrame.size.width - 60. - fullButtonWidth) / 2. - menuWidth / 2. + 60. - 20.;
+ point.y = windowFrame.size.height + 1.;
+ if (point.x < 0)
+ point.x = 10;
+
+ NSEvent *fakeMouseEvent = [NSEvent mouseEventWithType:NSRightMouseDown
+ location:point
+ modifierFlags:0
+ timestamp:0
+ windowNumber:[[self window] windowNumber]
+ context:nil
+ eventNumber:0
+ clickCount:0
+ pressure:0];
+ [NSMenu popUpContextMenu: contextMenu withEvent: fakeMouseEvent forView: [self superview]];
}
- (IBAction)revealInFinder:(id)sender
selectedItem = count - selectedItem;
/* fix for non-startup volumes */
- if ([pathComponents[1] isEqualToString:@"Volumes"])
+ if ([[pathComponents objectAtIndex:1] isEqualToString:@"Volumes"])
selectedItem += 1;
for (NSUInteger y = 1; y < selectedItem; y++)
- [currentPath appendFormat: @"/%@", pathComponents[y]];
+ [currentPath appendFormat: @"/%@", [pathComponents objectAtIndex:y]];
[[NSWorkspace sharedWorkspace] selectFile: currentPath inFileViewerRootedAtPath: currentPath];
}