Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

make windows visible above full-screen apps #1138

Merged
merged 2 commits into from

3 participants

@skurfer
Owner

fixes #740

A little more DRY than the previous attempt.

@pjrobertson
Owner

Works as advertised on 10.7

I see the prefs window pops up in full screen apps :)

Is it worth us checking this on 10.6? (ping @HenningJ )

@skurfer
Owner

Is it worth us checking this on 10.6?

I think so, just to make sure the | 256 doesn't have any side-effects.

@HenningJ
Owner

How do I check that? I don't really have full screen apps on 10.6 ;)

@skurfer
Owner

I think mainly just check that the interface still appears on all spaces (and not just on the space where it was launched).

@pjrobertson
Owner
@HenningJ
Owner

ok...I check this. Apart from what we discussed on IRC (about MAC_OS_X_VERSION_10_7) it works as before: works fine on all space. But not in iTunes full screen visualizer. But I checked: that didn't work in previous versions either.

@skurfer
Owner

OK, this should build on 10.6 now.

@HenningJ
Owner

Didn't we decide to redefine MAC_OS_X_VERSION_10_7 and friends?

@skurfer
Owner

I saw that there was precedent for using literals like 1060 elsewhere and I didn't really like the idea of redefining things from AvailabilityMacros.h locally. But if we're going to do it, why not go all the way and just include the 10.8 version of that file in the project? :-) Less room for mistakes and omissions.

@pjrobertson pjrobertson merged commit d41c81e into from
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Sep 24, 2012
  1. @skurfer
Commits on Oct 2, 2012
  1. @skurfer
This page is out of date. Refresh to see the latest.
View
3  Quicksilver/Code-App/QSPreferencesController.m
@@ -233,9 +233,6 @@ - (void)windowDidLoad {
frame = constrainRectToRect(frame, [[win screen] visibleFrame]);
[win setFrame:frame display:YES];
- // Set the window to be visible on all spaces
- [win setCollectionBehavior:NSWindowCollectionBehaviorCanJoinAllSpaces];
-
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(reloadPlugInInfo:) name:QSPlugInLoadedNotification object:nil];
[moduleController addObserver:self forKeyPath:@"selectedObjects" options:0 context:nil];
View
1  Quicksilver/Code-QuickStepEffects/QSWindow.m
@@ -131,6 +131,7 @@ - (id)initWithContentRect:(NSRect)contentRect styleMask:(NSUInteger)aStyle backi
[self setMovableByWindowBackground:YES];
[self setHasShadow:YES];
[self setLevel:NSNormalWindowLevel];
+ [self useQuicksilverCollectionBehavior];
[self setShowOffset:NSMakePoint(0, 50)];
[self setHideOffset:NSMakePoint(0, -50)];
trueRect = contentRect;
View
3  Quicksilver/Code-QuickStepFoundation/NSWindow_BLTRExtensions.h
@@ -19,3 +19,6 @@
- (void)addInternalWidgetsForStyleMask:(NSInteger) styleMask closeOnly:(BOOL)closeOnly;
@end
+@interface NSWindow (Visibility)
+- (void)useQuicksilverCollectionBehavior;
+@end
View
15 Quicksilver/Code-QuickStepFoundation/NSWindow_BLTRExtensions.m
@@ -179,3 +179,18 @@ - (void)addInternalWidgetsForStyleMask:(NSInteger) styleMask {
[self addInternalWidgetsForStyleMask:(NSInteger) styleMask closeOnly:NO];
}
@end
+
+@implementation NSWindow (Visibility)
+
+- (void)useQuicksilverCollectionBehavior
+{
+ // make windows visible in all spaces
+#if (MAC_OS_X_VERSION_MIN_REQUIRED < 1070)
+ [self setCollectionBehavior:NSWindowCollectionBehaviorCanJoinAllSpaces | 256];
+#else
+#warning remove the 10.6 code above
+ [self setCollectionBehavior:NSWindowCollectionBehaviorCanJoinAllSpaces | NSWindowCollectionBehaviorFullScreenAuxiliary];
+#endif
+}
+
+@end
View
1  Quicksilver/Code-QuickStepInterface/QSDockingWindow.m
@@ -16,7 +16,6 @@ - (id)initWithContentRect:(NSRect)contentRect styleMask:(NSUInteger)aStyle backi
[self setCanHide:NO];
[self setLevel:NSFloatingWindowLevel];
[self setSticky:YES];
- [self setCollectionBehavior:NSWindowCollectionBehaviorCanJoinAllSpaces];
hidden = YES;
NSMutableArray *types = [standardPasteboardTypes mutableCopy];
View
1  Quicksilver/Code-QuickStepInterface/QSInterfaceController.m
@@ -113,6 +113,7 @@ - (void)windowDidLoad {
[self hideIndirectSelector:nil];
[[self window] setHidesOnDeactivate:NO];
+ [[self window] useQuicksilverCollectionBehavior];
[[self menuButton] setMenu:[(QSController *)[NSApp delegate] statusMenuWithQuit]];
#if 0
View
4 Quicksilver/PlugIns-Main/Bezel/Info.plist
@@ -15,9 +15,9 @@
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleVersion</key>
- <string>186B</string>
+ <string>186C</string>
<key>CFBundleShortVersionString</key>
- <string>1.0.0</string>
+ <string>1.0.1</string>
<key>CFBundleDisplayName</key>
<string>Bezel Interface</string>
<key>NSHumanReadableCopyright</key>
View
3  Quicksilver/PlugIns-Main/Bezel/QSBezelInterfaceController.m
@@ -19,9 +19,6 @@ - (void)windowDidLoad {
[window setLevel:NSPopUpMenuWindowLevel];
[window setBackgroundColor:[NSColor clearColor]];
- // Set the window to be visible on all spaces
- [[self window] setCollectionBehavior:NSWindowCollectionBehaviorTransient];
-
[window setHideOffset:NSMakePoint(0, 0)];
[window setShowOffset:NSMakePoint(0, 0)];
View
4 Quicksilver/PlugIns-Main/PrimerInterface/Info.plist
@@ -17,9 +17,9 @@
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleVersion</key>
- <string>1918</string>
+ <string>1919</string>
<key>CFBundleShortVersionString</key>
- <string>1.0.0</string>
+ <string>1.0.1</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2004, Blacktree, Inc.</string>
<key>QSPlugIn</key>
View
3  Quicksilver/PlugIns-Main/PrimerInterface/QSPrimerInterfaceController.m
@@ -31,9 +31,6 @@ - (void)windowDidLoad {
[[self window] setLevel:NSPopUpMenuWindowLevel];
[[self window] setFrameAutosaveName:@"PrimerInterfaceWindow"];
- // Set the window to be visible on all spaces
- [[self window] setCollectionBehavior:NSWindowCollectionBehaviorTransient];
-
// [[self window] setFrame:constrainRectToRect([[self window] frame] , [[[self window] screen] visibleFrame]) display:NO];
// [(QSWindow *)[self window] setHideOffset:NSMakePoint(0, -99)];
// [(QSWindow *)[self window] setShowOffset:NSMakePoint(0, 99)];
Something went wrong with that request. Please try again.