# HG changeset patch # User bsmith@81767d24-ef19-dc11-ae90-00e081727c95 # Date 1561234312 0 # Node ID 469711814566cac497cd567d94cb614321325e61 # Parent 5658f703a22ec51c09c1934d8870fd73ebcc52fd 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. diff -r 5658f703a22e -r 469711814566 mac/dw.m --- 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 */