X-Git-Url: http://git.ithinksw.org/ITKit.git/blobdiff_plain/1de0d30d4a40f983a45b41ce98f297bbe435ef24..d89a0ca515b4db2cb0f4bbe6b7e4d709c5296eba:/ITTransientStatusWindow.m diff --git a/ITTransientStatusWindow.m b/ITTransientStatusWindow.m old mode 100755 new mode 100644 index c47f9af..029aa79 --- a/ITTransientStatusWindow.m +++ b/ITTransientStatusWindow.m @@ -86,6 +86,7 @@ static ITTransientStatusWindow *staticWindow = nil; _exitEffect = nil; _reallyIgnoresEvents = YES; _exitTimer = nil; + [self setScreen:[NSScreen mainScreen]]; // if ( _backgroundType == ITTransientStatusWindowRounded ) { // _contentSubView = contentView; @@ -101,6 +102,11 @@ static ITTransientStatusWindow *staticWindow = nil; return self; } +- (void)dealloc +{ + [_screen release]; + [super dealloc]; +} /*************************************************************************/ #pragma mark - @@ -114,19 +120,29 @@ static ITTransientStatusWindow *staticWindow = nil; - (void)setIgnoresMouseEvents:(BOOL)flag { - CGSValueObj key; - CGSValueObj ignore; + //CGSValueObj key; + //CGSValueObj ignore; + CGSWindowTag tags; - key = CGSCreateCString("IgnoreForEvents"); + /*key = CGSCreateCString("IgnoreForEvents"); ignore = CGSCreateBoolean( (flag ? kCGSTrue : kCGSFalse) ); CGSSetWindowProperty([NSApp contextID], (CGSWindowID)[self windowNumber], key, ignore); CGSReleaseObj(key); - CGSReleaseObj(ignore); + CGSReleaseObj(ignore);*/ + + CGSGetWindowTags([NSApp contextID], (CGSWindowID)[self windowNumber], &tags, 32); + + if (flag) { + tags = tags | CGSTagTransparent; + } else { + tags = tags & CGSTagTransparent; + } + + CGSSetWindowTags([NSApp contextID], (CGSWindowID)[self windowNumber], &tags, 32); _reallyIgnoresEvents = flag; } - /* - (id)contentView @@ -184,6 +200,27 @@ static ITTransientStatusWindow *staticWindow = nil; } } +- (void)setScreen:(NSScreen *)newScreen +{ + [_screen release]; + _screen = [newScreen retain]; +} + +- (NSScreen *)screen +{ + return _screen; +} + +- (void)setSizing:(ITTransientStatusWindowSizing)newSizing +{ + _sizing = newSizing; +} + +- (ITTransientStatusWindowSizing)sizing +{ + return _sizing; +} + - (ITWindowVisibilityState)visibilityState { return _visibilityState;