Changes:
- It should always remember window sizes now. Specifically, coming out of full-screen mode no longer leaves the window in a huge size if the title bar had been turned off.
- Full screen mode hides the mouse pointer.
- ESC exits full screen mode.
- It's a universal binary now (PPC and Intel). If you actually run it on Intel, let me know if it looks right: I fear there might be an endianness check needed.
- Added "Pin to desktop" preference. (Is this common terminology?)
- Minimize (Cmd-M) and Close (Cmd-W) work when the window is titlebar-less or full screen.
Still busted:
- "Zoom" doesn't work if the titlebar is turned off.
- "Close" (Cmd-W) always closes the clock window even if the Preferences window was selected. Both of these are because MacOS seems to really, really not want you to use titlebar-less windows for "real" application windows. Patches welcome.
- The layout of the Preferences dialog is pretty ugly. Make it nice, if you are so moved.
Are there other keybindings that Mac users would normally expect to work that don't? Are there any packaging-and-distribution niceties that I should know about that I haven't already done?
Where do the cool kids announce their Mac software (besides Freshmeat)?
Just for my sake of understanding:
It's a universal binary now (PPC and Intel). If you actually run it on Intel, let me know if it looks right: I fear there might be an endianness check needed.
How exactly did you accomplish this? I mean the opcodes for the platforms are totally different, so I am curious.
Mac OS X supports fat binaries, meaning that the same binary contains a different loader for different platforms. It's not actually one polyglot binary, but one binary with the PPC version, the Intel version and their respective loaders in it.
neat, learn something new every day. Now I assume the actual loader isn't included in the binary, but rather apropriate references on how to relocate/setup the various sections/resolve symbols/etc, or is there actually some loader code embedded into each binary?
I have no idea, but the fact that it'd be very repetitive and a dog to 'upgrade' if it were in the binaries tells me that it's probably somewhere in the kernel.
Agreed, its probably split between the os x equiv of ld and the kernel, I will have to look it up some as the idea is interesting to me, and having a powerbook from work means I can play with it some. Thanks for the insight/information.
% file DaliClock.app/Contents/MacOS/DaliClock
DaliClock.app/Contents/MacOS/DaliClock: Mach-O fat file with 2 architectures
DaliClock.app/Contents/MacOS/DaliClock (for architecture ppc):
Mach-O executable ppc
DaliClock.app/Contents/MacOS/DaliClock (for architecture i386):
Mach-O executable i386
You could always try putting it on MacUpdate and VersionTracker. I'm not sure of the routine for doing so, though.
Apple also has a way to submit files to their download site. Try here. It will take a day or two to show up, because apparently their downloads section is maintained by hand. This one's fairly widely seen.
Lastly, since Dali Clock is freeware, you might see if there's any submission form on FreeMacWare.com. They're still sort of new but fairly popular...ish?
I've been putting stuff (stand-alone "native" xscreensaver ports, actually) on VersionTracker; is there any reason for me to take on the additional annoyance of updating MacUpdate or FreeMacWare.com? 'cause I'm lazy, and busy.
Probably not. One's as likely to be found as any of the others, I'd imagine.
I just tested it on my Developer Transition Kit Intel box, and it looks pretty good to me.
YOU BROKE THE NDA! WE ALL GONNA DIE!!!
Here's a screen shot of me running it. :)
How about an option to hide the Dock icon?
Thanks for pin to desktop mode. I'm not sure if thats the standard term, but you can see that is what some people call it on google.
Does this mean "keep to back"? "Keep to front" is a fairly common option.
VersionTracker
So now that you've spent some time with it, what do you think about
the mac development environment?
wait, you're programming? and your girl *just* got back to town? what's wrong with you?
Which file is your Xcode project, and what version of Xcode were you using?
jwz.pbxuser and project.pbproject don't want to open.
I'm using Xcode 2.0 (but it looks like you may have been using project builder?)
XCode 2.2, different file format -- 2.0 doesn't let you make universal binaries.
Thanks for the escape and mouse pointer things. One last one would be to have an option of it doing something when the timer runs out, rather than just counting in the other direction. Sysbeep, or just invert the colors being displayed.
I recommend the Apple software link someone posted. I had software on it in the pre OS-X days, and it was one of the better referrers.
Hi JWZ
The way I figured out how to close NSBorderlessWindowMask windows is to override validateMenuItem and performClose in the window class. This way you don't have to change the FirstResponder.
Pin to desktop was a BeoS idiom at least, and I seem to recall it from various Linux WMs.
Oh, it goes back at least as far as OpenLook.
The layout of the Preferences dialog is pretty ugly. Make it nice, if you are so moved.
done. sent in email. tell me if you like it or hate it.