Mercurial > dwindows
diff mac/dw.m @ 1943:469711814566
Mac: Fix NSStatusItem deprecation warnings by using the embedded NSStatusBarButton instead.
Also moved code into YOSEMITE #ifdef since it is only supported on 10.10 and later.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Sat, 22 Jun 2019 20:11:52 +0000 |
parents | 5658f703a22e |
children | d37f30a7c233 |
line wrap: on
line diff
--- a/mac/dw.m Sat Jun 22 20:01:05 2019 +0000 +++ b/mac/dw.m Sat Jun 22 20:11:52 2019 +0000 @@ -7417,17 +7417,20 @@ */ void API dw_taskbar_insert(HWND handle, HICN icon, char *bubbletext) { +#ifdef BUILDING_FOR_YOSEMITE NSStatusItem *item = [[[NSStatusBar systemStatusBar] statusItemWithLength:NSSquareStatusItemLength] retain]; + NSStatusBarButton *button = [item button]; NSImage *image = icon; - [item setImage:image]; + [button setImage:image]; if(bubbletext) - [item setToolTip:[NSString stringWithUTF8String:bubbletext]]; - [item setTarget:handle]; - [item setEnabled:YES]; - [item setHighlightMode:YES]; - [item sendActionOn:(DWEventMaskLeftMouseUp|DWEventMaskLeftMouseDown|DWEventMaskRightMouseUp|DWEventMaskRightMouseDown)]; - [item setAction:@selector(mouseDown:)]; + [button setToolTip:[NSString stringWithUTF8String:bubbletext]]; + [button setTarget:handle]; + [button setEnabled:YES]; + [[button cell] setHighlighted:YES]; + [button sendActionOn:(DWEventMaskLeftMouseUp|DWEventMaskLeftMouseDown|DWEventMaskRightMouseUp|DWEventMaskRightMouseDown)]; + [button setAction:@selector(mouseDown:)]; dw_window_set_data(handle, "_dw_taskbar", item); +#endif } /* @@ -7438,10 +7441,12 @@ */ void API dw_taskbar_delete(HWND handle, HICN icon) { +#ifdef BUILDING_FOR_YOSEMITE NSStatusItem *item = dw_window_get_data(handle, "_dw_taskbar"); DW_LOCAL_POOL_IN; [item release]; DW_LOCAL_POOL_OUT; +#endif } /* Internal function to keep HICNs from getting too big */