From 7c1d707f45263b519a07108f73afcf23a358cc3e Mon Sep 17 00:00:00 2001 From: Stefano Pigozzi Date: Sun, 21 Jul 2013 20:44:35 +0200 Subject: cocoa_common: move tracking area setup to updateTrackingAreas This makes the tracking area work when going in and out of fullscreen. --- video/out/cocoa_common.m | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) (limited to 'video') diff --git a/video/out/cocoa_common.m b/video/out/cocoa_common.m index 9eab694d0d..7ec17420fc 100644 --- a/video/out/cocoa_common.m +++ b/video/out/cocoa_common.m @@ -819,23 +819,22 @@ int vo_cocoa_cgl_color_size(struct vo *vo) // as well without having to do any coordinate conversion of mouse positions. - (BOOL) isFlipped { return YES; } -- (id)initWithFrame:(NSRect)frame { - if (self = [super initWithFrame:frame]) { - NSTrackingAreaOptions trackingOptions = - NSTrackingEnabledDuringMouseDrag | - NSTrackingMouseEnteredAndExited | NSTrackingMouseMoved | - NSTrackingActiveInActiveApp; +- (void)updateTrackingAreas +{ + if (self.tracker) [self removeTrackingArea:self.tracker]; - self.tracker = - [[[NSTrackingArea alloc] initWithRect:[self bounds] - options:trackingOptions - owner:self - userInfo:nil] autorelease]; + NSTrackingAreaOptions trackingOptions = + NSTrackingEnabledDuringMouseDrag | + NSTrackingMouseEnteredAndExited | NSTrackingMouseMoved | + NSTrackingActiveInActiveApp; - [self addTrackingArea:self.tracker]; - } + self.tracker = + [[[NSTrackingArea alloc] initWithRect:[self bounds] + options:trackingOptions + owner:self + userInfo:nil] autorelease]; - return self; + [self addTrackingArea:self.tracker]; } - (NSPoint)mouseLocation -- cgit v1.2.3