Page 1 of 1

Hardware Growler Airport icon missing?

Posted: Thu Apr 26, 2007 8:36 am
by nsap
I'm not sure when this started happening, but I've tried clearing caches, repairing permissions... basically everything I could think of doing. Is anyone else having this problem? Does anybody know where Growl/Hardware Growler pulls the Airport icon from?

This issue occurs on both connected and disconnected Airport messages.

Thanks

http://x013.uploaderx.net/x/224_Picture%201.png

Posted: Fri Apr 27, 2007 11:25 pm
by nsap
bump for wtf did i do :(

Posted: Wed May 02, 2007 10:55 am
by nsap
One last bump. Anybody?

Posted: Wed May 02, 2007 4:19 pm
by The_Tick
I've got a feeling that launch services icon cache is messed up somehow on your machine. I don't remember how to fix it.

Posted: Thu May 03, 2007 10:49 am
by nsap
The_Tick wrote:I've got a feeling that launch services icon cache is messed up somehow on your machine. I don't remember how to fix it.
I'll check it out, thanks.

Posted: Thu May 03, 2007 3:37 pm
by Diggory
Looking back at the code it gets the icon for Airport Admin App:

Code: Select all

NSString *path = [ws fullPathForApplication:@"Airport Admin Utility.app"];

Posted: Fri May 04, 2007 8:35 pm
by tiredraven
I have the same problem as well, and I think I know why now. With the new Airport software that was released for the 802.11n base station, the name of the AirtPort Admin Utility changed to AirPort Utility. So the path to the icon has changed, which would account for the problem.

I hope this helps resolve the issue.

Posted: Fri May 04, 2007 9:02 pm
by nsap
tiredraven wrote:I have the same problem as well, and I think I know why now. With the new Airport software that was released for the 802.11n base station, the name of the AirtPort Admin Utility changed to AirPort Utility. So the path to the icon has changed, which would account for the problem.

I hope this helps resolve the issue.
Good catch. So if I rename the new Airport Utility to Airport Admin Utility, will that resolve the problem?

Posted: Fri May 04, 2007 9:55 pm
by Diggory
Someone should probably change line 141 of AppController.m of HardwareGrowler:

http://trac.growl.info/browser/trunk/Ex ... ntroller.m

Specifically to use NSWorkspace's method:

Code: Select all

- (NSString *)absolutePathForAppBundleWithIdentifier:(NSString *)bundleIdentifier
Which identifes the app by bundle identifier instead of name.

Or whatever the CoreFoundation version of this method is.

Posted: Sat May 05, 2007 9:33 pm
by The_Tick
Diggory wrote:Someone should probably change line 141 of AppController.m of HardwareGrowler:

http://trac.growl.info/browser/trunk/Ex ... ntroller.m

Specifically to use NSWorkspace's method:

Code: Select all

- (NSString *)absolutePathForAppBundleWithIdentifier:(NSString *)bundleIdentifier
Which identifes the app by bundle identifier instead of name.

Or whatever the CoreFoundation version of this method is.
hwgrowler is cf? Bah.

Posted: Wed May 09, 2007 11:14 pm
by Diggory
It wasn't originally, but seems to have been CF'ed

Posted: Thu May 10, 2007 5:49 am
by bgannin
I don't know all of CF offhand, but given that CoreFoundation is a low-level API it's not likely that it contains high-level functionality related to applications (as NSWorkspace does.)

Posted: Thu May 10, 2007 5:57 am
by The_Tick
We could mix and match, but should we even keep it cf?

Posted: Sat Jun 02, 2007 11:02 pm
by evands
evands wrote: Yet another example of why I would rename that file to VolumeNotifier.m and use Cocoa throughout.

Code: Select all

const char *bsdPath = [[NSString stringWithFormat:@"/dev/%@", bsdName] fileSystemRepresentation];
if (bsdPath) {
	//Blah
}
reads so much better than

Code: Select all

CFStringRef bsdPath = CFStringCreateWithFormat(kCFAllocatorDefault, NULL, CFSTR("/dev/%@"), bsdName);
CFIndex cBSDPathMax = CFStringGetMaximumSizeOfFileSystemRepresentation(bsdPath);
char *cBSDPath = NULL;

cBSDPath = (char *)calloc(cBSDPathMax, sizeof(char));
if (cBSDPath && CFStringGetFileSystemRepresentation(bsdPath, cBSDPath, cBSDPathMax) {
	//Blah
}
free(cBSDPath);
CFRelease(bsdPath);
(Technically, in the Cocoa version, I'd construct the path using stringByAppendingPathComponent:, but the current code uses /dev/%@ so I kept that for the example).

Re: Hardware Growler Airport icon missing?

Posted: Wed Sep 02, 2009 12:28 am
by amancalledsun
Has anyone fixed this yet? It's been 2 years, and here I am looking at Snow Leopard, and the airport and ethernet icons STILL do not show up in Hardware Growler. I'd love to fix this myself if I could :sad:

Re: Hardware Growler Airport icon missing?

Posted: Wed Sep 02, 2009 1:39 am
by rudy
your url doesn't seem to load here, but i have looked at both 1.1.6 and current source for HardwareGrowler and both behave the same. That is to say they both display icons for Airport and Ethernet. Did you remove or otherwise rename Airport Utility.app?