diff -r 73ca07cfcf98 glass/glass-mat-lib-macosx/src/com/sun/mat/ui/GlassWindow.m --- a/glass/glass-mat-lib-macosx/src/com/sun/mat/ui/GlassWindow.m Tue Feb 14 10:06:29 2012 -0800 +++ b/glass/glass-mat-lib-macosx/src/com/sun/mat/ui/GlassWindow.m Tue Feb 14 17:22:24 2012 -0500 @@ -16,7 +16,7 @@ #import "GlassView.h" #import "GlassScreen.h" -//#define VERBOSE +#define VERBOSE #ifndef VERBOSE #define LOG(MSG, ...) #else @@ -1701,17 +1701,25 @@ if (image != nil) { GlassWindow *window = getGlassWindow(env, jPtr); + NSImageView *view = [[NSImageView alloc] initWithFrame: NSMakeRect (0, 0, 128, 128)]; + NSDockTile *tile = [NSApp dockTile]; + + [view setImageFrameStyle:NSImageFrameNone]; + [view setImageScaling:NSScaleToFit]; + [view setImage: image]; + [view setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable]; + [view setAutoresizesSubviews:YES]; // http://www.cocoabuilder.com/archive/cocoa/199554-nswindow-title-bar-icon-without-representedurl.html if ([NSThread isMainThread] == YES) { - [window setRepresentedURL:[NSURL fileURLWithPath:[window title]]]; - [[window standardWindowButton:NSWindowDocumentIconButton] setImage:image]; + [tile setContentView: view]; + [tile display]; } else { - [window performSelectorOnMainThread:@selector(setRepresentedURL:) withObject:[NSURL fileURLWithPath:[window title]] waitUntilDone:YES]; - [[window standardWindowButton:NSWindowDocumentIconButton] performSelectorOnMainThread:@selector(setImage:) withObject:image waitUntilDone:YES]; + [tile performSelectorOnMainThread:@selector(setContentView:) withObject:view waitUntilDone:YES]; + [tile performSelectorOnMainThread:@selector(display) withObject:nil waitUntilDone:YES]; } [image release]; diff -r 73ca07cfcf98 toys/HelloWorld/src/helloworld/HelloImage.java --- a/toys/HelloWorld/src/helloworld/HelloImage.java Tue Feb 14 10:06:29 2012 -0800 +++ b/toys/HelloWorld/src/helloworld/HelloImage.java Tue Feb 14 17:22:24 2012 -0500 @@ -41,8 +41,9 @@ System.err.println("BestCursor Size ="+d); Image animImage = new Image(animImageURL); + Image fxImage = new Image(imageURL); - addImageToObservableList(seq, 160, 20, 420, 120, new Image(imageURL), + addImageToObservableList(seq, 160, 20, 420, 120, fxImage, createImageCursor(animImageURL, 16, 16)); // addImageToObservableList(seq, 20, 20, 120, 120, animImage, // createImageCursor(animCursorURL, 0, 0)); @@ -54,7 +55,7 @@ addImageToObservableList(seq, 20, 20, 120, 120, animImage, createImageCursor(slowImageURL, 1862*0.4f, 0)); - stage.getIcons().add(slowImage); + stage.getIcons().add(fxImage); stage.setScene(scene); stage.show(); }