>X
Released
>X
1.0b1
*X
Hot key to place behind frontmost app (or window)
*X
Better default location for prefs dialog (Pester?)
*X
Change the dock icon to match
*X
Items in dock menu
*X
Background color—just copy what I do in AntiRSI
*X
Menu bar
*X
Reset option
*X
Investigate ShortcutRecorder state of the art
*X
Don't allow 2 shortcuts to be the same
>X
1.0b2
*X
Option-clicking doesn't work at startup.
*X
Mailto script isn't working (targeting broke things, oddly)
*X
Open Focus Help to introduction page on first startup.
>X
1.0 final
>X
Sparkle may have some activation issues.
*X
Yup, same as SFBCrashReporter - easy to fix by activating the frontmost window.
>X
Updater window uses the wrong sized Shroud icon; fix
*X
Just need to change the image well scaling to up/down
*X
What about localizations? Removed them.
>X
SFBCrashReporter.
*X
Pop up window on top of everything else
*X
(Shift-)Tab in text view should tab to next field (see what I did with GitX)
*X
Text view switches to Helvetica when all text is deleted
*X
Default button doesn't make any sense in text view
*X
Check in changes
*X
Attribution
*X
After dismissing dialog, Shroud activation breaks
*X
Migrate prefs from Focus to Shroud
*X
Fix checking for updates automatically.
>X
1.0.1
>X
Help is missing
>X
Places to put it...
*X
INSTALL_DIR - no, it's /Users/nicholas/Applications
*X
DSTROOT - no, it's /tmp/Shroud.dst in build
*X
INSTALL_PATH, INSTALL_ROOT - no, same as above
*X
TARGET_BUILD_DIR - looks good, but don't we use this already?
>X
1.1
*X
“Peek at menu bar” modifier keys
>X
1.1.1
>X
Menu bar flashes when I show/hide the Dock.
*X
This appears to be triggering a windowserver bug; it's moving our window.
V
2010-03-05 22:27:09.852 Focus[64687:a0b] {{0, 878}, {1440, 22}} {{0, 46}, {1440, 22}}
*X
File a bug about this. (Happens on 10.5 too.)
*X
Can we subclass NSWindow and prevent the move?
>X
1.1.2
>X
Sometimes the menu bar ends up on a different Space from the backdrop. Possible to fix this?
>X
We don't do setCollectionBehavior for the menu bar panel; this might be it. (No.)
*X
I've now done this (5/13/11). If it doesn't happen for a month, consider it fixed.
*X
6/10/11: Not fixed. The windows are clearly on different workspaces (menu bar on workspace 2, desktop covering on workspace 1, where Shroud is pinned).
>X
Wonder how to reproduce this.
*X
Perhaps going into fullscreen mode in Chrome triggers it? Fullscreen could break the workspace model.
*X
Yup! Going into and out of fullscreen mode in Chrome triggers the problem.
*X
Still need to fix it for the case when we cmd-Tab of fullscreen mode. Hrm, maybe not?
>X
It should never be possible to send the preferences/about panels behind the backdrop.
*X
Badness when grabbing the preferences window and trying to move it between Spaces.
*X
Also: choosing About Shroud from another space.
*X
Finally: the crash panel popping up on startup!
>X
1.2
*X
“Hide Shroud” keyboard shortcut
*X
10.6+, build with Xcode 4, etc.
>X
Fix the race.
*X
The crash reports don't suggest it is a race.
*X
Attempting to work around the actual problem, though it may just mean we crash a bit later.
*X
Figure out what's going on with 10.8 window focus.
>X
We can use NSWindow orderWindow:relativeTo: to eliminate the flash when focusing on the frontmost window.
*X
Also, we can avoid reacting if the frontmost window isn't on the same screen.
*X
Update Sparkle if necessary.
>X
Update SFBCrashReporter?
*X
If not, at least commit our changes
*X
We've got some stuff to fix the build architectures
*X
Current upstream doesn't support 10.6
>X
crashpool.com is dead, sadly; switch to something else
*X
Address book privacy stuff.
*X
Focusing after hidden causes problems.
*X
Hide should actually be hide/show toggle which saves the relative position (window in front / back). This is the same as will be needed for multiple displays, anyway.
>X
Focus on app is not working if you've used Mission Control, or just a click, to bring forward a window.
*X
Duh, you need to make the app frontmost first.
*X
This seems like it's not working on 10.6?
*X
Respond to github.com—2
*X
Make sure framework headers don't get packaged.
*X
ShortcutRecorder: 2013-07-04 16:15:18.406 Shroud[54886:303] *** WARNING: -[NSImage dissolveToPoint:fromRect:fraction:] is deprecated in MacOSX 10.8 and later. Please use -[NSImage drawAtPoint:fromRect:operation:fraction:] instead.
>X
Test on 10.6
*X
Hide then preferences is still broken.
*X
…and now it's fixed on 10.6, *not* on 10.8!? Yup.
>X
First launch problems
V
appswitch -qa Shroud; killall helpd; rm -rf ~/Library/Preferences/com.apple.help.plist ~/Library/Preferences/com.apple.helpviewer.plist ~/Library/Caches/com.apple.help*; defaults delete net.sabi.Shroud
*X
Help anchor isn't
>X
The menubar starts out obscured, and I have no idea why.
*X
The checkbox is correct on 10.8, wrong on 10.6.
*X
This is all because of Focus vs. Shroud preferences. Either way of setting the default menubar visibility seems to be just fine.
*X
Get rid of the dock tile plugin.
>X
Having some visibility issues with the menubar covering window now — it's hiding and failing to show in some cases, but of course this is hard to identify
*X
Able to reproduce with the *old* 10.6-style fullscreen, in Emacs hide then C-x 5 9 then C-x 5 9 then show — menu bar would stay gone.
*X
Got rid of the delays.
*X
Now all fixed except for menubar being covered after exiting *new* fullscreen mode — this waits for the mouseenter event to be delivered, which is the only choice because it's actually a Space, so the window isn't even onscreen. We can probably ignore this as it's a very small cosmetic issue which doesn't look bad and probably only I notice.
V
NSLog(@"window %@ global %@ local %@ in %@?",
NSStringFromRect([[self window] frame]),
NSStringFromPoint([[self window] mouseLocationOutsideOfEventStream]),
NSStringFromPoint([self convertPoint:[[self window] mouseLocationOutsideOfEventStream] fromView:nil]),
NSStringFromRect([self bounds]));
if ([self mouse:[self convertPoint:[[self window] mouseLocationOutsideOfEventStream] fromView:nil]
inRect:[self bounds]]) {
NSLog(@"inside, skipping");
return;
}
*X
Remove debugging
*X
Sign (thanks, Apple!)
*X
Test on 10.7 (have it on the SR SD card)
>X
Save the .dSYM when building this time so we can actually decode the crash reports.
*X
It ends up in the build/Release/ directory.
*X
Release
>X
1.2.1
*X
Fix help book
*X
At least on 10.10, toggling Shroud no longer works properly
*X
Fix failure to set dock icon color on startup
*X
Update to actually-current Sparkle (yes, including ARC)
*X
Update .gitignore to match Pester
*X
Make sure code signing works
*X
Fix xcodebuild failure
*X
Fix localizations failing to strip on install
>X
Update SFBCrashReporter (figure out what changes I made in it first)
*X
Need to put the UI back the way I had it.
*X
Skip Install so it builds in the right place.
*X
Update the acknowledgments
*X
Code signing works, but Gatekeeper verification is still failing (spctl vs codesign)
*X
Check that I'm using the correct binding for Sparkle, like in Pester
V
>X
Can I use NSKeyValueObservingOptionInitial? See ddeville.me—key-value-observing-for-the-mainstream
*X
Huh, I already do it in ShroudMenuBarVisibilityController. Go fig.
>X
Reassigning to the prior keyboard shortcut is broken — looks like Shroud never actually *removes* the keyboard shortcut so you can't re-type it.
*X
Nope — it's fine. The methods get triggered several times, but they do *work*.
*X
SFBCrashReporter hangs when you decline a crash report
>X
Check that Sparkle works
*X
Update from 1.2.1b1 beta to 1.2.1
*X
Update from 1.2 to 1.2.1
>X
1.2.2 (got partially released in 2016)
>X
Sparkle updates
*X
Sparkle vulnerabilty
*X
Sparkle still doesn't scale the Shroud icon in the Software Update window (submit an update upstream)
*X
Sparkle spurious authentication requests: github.com—752
*X
Port About font changing code from Pester
*X
Remove workaround for http://www.openradar.me/22064080 — fixed in 10.11.3
*X
Re-merge SFBCrashReporter
*X
Fix nib compatibility issue with SFBCrashReporter
*X
Test SFBCrashReporter with SSL too
V-
1.2.3
*X
More Sparkle updates
*X
Drop 10.8–10.11 support
*X
Dark Mode and accent color support for 10.14
*X
Warn about accessibility access
*X
Build for notarization
*
Update packaging script to support notarization — build with Xcode 10.1
V
*
Toggling broke — a race. Need to verify somehow and adjust?
V
Recheck with 10.14.3 to see if it’s better.
>
Test
*
10.9
*
10.10
*
10.11
*
10.12
*
10.13
*
10.14
>
Retest Sparkle updating with Sparkle HEAD
*
10.9
*
10.10
*
10.11
*
10.12
*
10.13
*
10.14
V
1.3
*
Multiple displays from Wolf (all or none)
*
Multiple menu bars on Mavericks, too, and perhaps limit focus to one space at a time (perhaps automatically, if Mavericks behavior is enabled?)
*
Consider replacing ShortcutRecorder with MASShortcut (github.com—MASShortcut) or ShortcutRecorder 2 (https://github.com/Kentzo/ShortcutRecorder)
*
Drawing in the dock *does* generate a different color from drawing on the background in 10.8; only noticeable with different-from-default color. But dragging from the dock appears fine, so probably not anything we can fix.
*
File a bug: position window, hide app, click on window, app comes to the front. (Can't reproduce any more?)
V
// XXX If we don't explicitly reorder the panel like this, clicking where the panel *used* to be causes Shroud to unhide.
// XXX I was able to reproduce this problem for a while on 10.8.4, but it went away. Leaving this code in place in case it needs to be implemented.
/* NSArray *windowsInfo = (NSArray *)CGWindowListCopyWindowInfo(kCGWindowListOptionOnScreenOnly | kCGWindowListOptionOnScreenOnly, kCGNullWindowID);
[screenPanel orderWindow:NSWindowBelow relativeTo:[[[windowsInfo lastObject] objectForKey:(NSString *)kCGWindowNumber] longValue]]; */
>-
Later
>
The menubar covering window can sometimes be lost entirely.
*
Maybe happens when moving the menubar from one display to another?
*
Memory usage doesn't shrink when window does? Check Quartz Debug on shirley.
*
Preferences window doesn't get removed when we close it; should dealloc the controller?
*
Select displays?
>X
Maybe don't hide on startup? That'll at least cause the Dock icon to be correct.
*X
Think this is fixed in 10.7+
>
Spaces interaction is really crappy if you want Focus on more than one Space.
*
Can we get this info with public CG functions in 10.5? Or just Cocoa in 10.6? Or only SPI?
*
Switch to current workspace if we're displaying on it - maybe earlier, so we can get the front process on *that* workspace?
*
Warn if Focus launches on another space (put this in our icon?)—10.6 only?
V
NSWindow (Revised since February 2009 seed)
You can now ask if a window is on the active space. If the window is offscreen, due to being minimized or hidden for example, -isOnActiveSpace will return YES if ordering the window onscreen will order it on to the active space. - (BOOL)isOnActiveSpace;
There is an NSWindow class method, +windowNumbersWithOptions:, to retrieve window numbers for all onscreen windows. By default, +windowNumbersWithOptions: returns the window numbers for the visible windows belonging to the calling process on the active space. You can also request the window numbers for all visible windows, regardless of owner, and for windows on all spaces.
enum {
    NSWindowNumberListAllApplications = 1 << 0,
    NSWindowNumberListAllSpaces = 1 << 4
};
+ (NSArray *)windowNumbersWithOptions:(NSWindowNumberListOptions)options;
>
Should be able to drag to menu bar.
*
More importantly, should be able to Command-drag to rearrange SystemUIServer bits.
*
Menu bar toggle keyboard shortcut? We’ve got Shroud toggle, probably enough.
>
Switching from one menu extra to another: we lose the menubar. Figure out why.
*
This doesn't happen with menus on in the main part of the menu bar.
*
Only seems to happen with mouse-held menu activation, too.
>
Accessibility/Shortcut menu activation—is this a lost cause or can we distinguish between menubar accesses and popup menus?
*
Not via the notification we can't; all it tells you is the PID of the process.