diff --git a/Info.plist b/Info.plist index d49c08b..0d7a394 100644 --- a/Info.plist +++ b/Info.plist @@ -9,7 +9,7 @@ CFBundleIconFile mouse.icns CFBundleIdentifier - com.rouge41.middleClick + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName @@ -22,5 +22,7 @@ 1.0 LSBackgroundOnly + NSHighResolutionCapable + diff --git a/MiddleClick.xcodeproj/project.pbxproj b/MiddleClick.xcodeproj/project.pbxproj index 97b4bc0..136e4b6 100644 --- a/MiddleClick.xcodeproj/project.pbxproj +++ b/MiddleClick.xcodeproj/project.pbxproj @@ -3,10 +3,11 @@ archiveVersion = 1; classes = { }; - objectVersion = 45; + objectVersion = 46; objects = { /* Begin PBXBuildFile section */ + 434F19DD1C6BCAB10009D8F7 /* mouse@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 434F19DC1C6BCAB10009D8F7 /* mouse@2x.png */; }; 75032EF60FF697A4004CECD2 /* mouse.icns in Resources */ = {isa = PBXBuildFile; fileRef = 75032EF50FF697A4004CECD2 /* mouse.icns */; }; 7519A949108A763300466740 /* WakeObserver.m in Sources */ = {isa = PBXBuildFile; fileRef = 7519A948108A763300466740 /* WakeObserver.m */; }; 7569F71E1007F64500D9CE54 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7569F71D1007F64500D9CE54 /* IOKit.framework */; }; @@ -27,6 +28,7 @@ 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; 32CA4F630368D1EE00C91783 /* MiddleClick_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MiddleClick_Prefix.pch; sourceTree = ""; }; + 434F19DC1C6BCAB10009D8F7 /* mouse@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "mouse@2x.png"; sourceTree = ""; }; 75032EF50FF697A4004CECD2 /* mouse.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = mouse.icns; sourceTree = ""; }; 7519A947108A763300466740 /* WakeObserver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WakeObserver.h; sourceTree = ""; }; 7519A948108A763300466740 /* WakeObserver.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WakeObserver.m; sourceTree = ""; }; @@ -124,6 +126,7 @@ 758786B9103357F6004E024C /* relaunch */, 75032EF50FF697A4004CECD2 /* mouse.icns */, 75A6B6AA0FEE96540071FAC0 /* mouse.png */, + 434F19DC1C6BCAB10009D8F7 /* mouse@2x.png */, 8D1107310486CEB800E47090 /* Info.plist */, ); name = Resources; @@ -167,8 +170,11 @@ /* Begin PBXProject section */ 29B97313FDCFA39411CA2CEA /* Project object */ = { isa = PBXProject; + attributes = { + LastUpgradeCheck = 0720; + }; buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "MiddleClick" */; - compatibilityVersion = "Xcode 3.1"; + compatibilityVersion = "Xcode 3.2"; developmentRegion = English; hasScannedForEncodings = 1; knownRegions = ( @@ -193,6 +199,7 @@ files = ( 75A6B6AB0FEE96540071FAC0 /* mouse.png in Resources */, 75032EF60FF697A4004CECD2 /* mouse.icns in Resources */, + 434F19DD1C6BCAB10009D8F7 /* mouse@2x.png in Resources */, 758786BA103357F6004E024C /* relaunch in Resources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -218,7 +225,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -232,6 +239,7 @@ GCC_PREFIX_HEADER = MiddleClick_Prefix.pch; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_BUNDLE_IDENTIFIER = com.rouge41.middleClick; PRODUCT_NAME = MiddleClick; SDKROOT = macosx; }; @@ -241,7 +249,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + COMBINE_HIDPI_IMAGES = YES; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -252,6 +260,7 @@ GCC_PREFIX_HEADER = MiddleClick_Prefix.pch; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_BUNDLE_IDENTIFIER = com.rouge41.middleClick; PRODUCT_NAME = MiddleClick; SDKROOT = macosx; }; @@ -260,7 +269,7 @@ C01FCF4F08A954540054247B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = c99; GCC_OPTIMIZATION_LEVEL = 0; GCC_WARN_ABOUT_RETURN_TYPE = YES; @@ -273,7 +282,6 @@ C01FCF5008A954540054247B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_32_BIT)"; GCC_C_LANGUAGE_STANDARD = c99; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; diff --git a/MiddleClick.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/MiddleClick.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/MiddleClick.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/MiddleClick.xcodeproj/project.xcworkspace/xcuserdata/ihunter.xcuserdatad/UserInterfaceState.xcuserstate b/MiddleClick.xcodeproj/project.xcworkspace/xcuserdata/ihunter.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000..2002370 Binary files /dev/null and b/MiddleClick.xcodeproj/project.xcworkspace/xcuserdata/ihunter.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/MiddleClick.xcodeproj/xcuserdata/ihunter.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/MiddleClick.xcodeproj/xcuserdata/ihunter.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist new file mode 100644 index 0000000..fe2b454 --- /dev/null +++ b/MiddleClick.xcodeproj/xcuserdata/ihunter.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -0,0 +1,5 @@ + + + diff --git a/MiddleClick.xcodeproj/xcuserdata/ihunter.xcuserdatad/xcschemes/MiddleClick.xcscheme b/MiddleClick.xcodeproj/xcuserdata/ihunter.xcuserdatad/xcschemes/MiddleClick.xcscheme new file mode 100644 index 0000000..e5449da --- /dev/null +++ b/MiddleClick.xcodeproj/xcuserdata/ihunter.xcuserdatad/xcschemes/MiddleClick.xcscheme @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MiddleClick.xcodeproj/xcuserdata/ihunter.xcuserdatad/xcschemes/xcschememanagement.plist b/MiddleClick.xcodeproj/xcuserdata/ihunter.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..d941807 --- /dev/null +++ b/MiddleClick.xcodeproj/xcuserdata/ihunter.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,22 @@ + + + + + SchemeUserState + + MiddleClick.xcscheme + + orderHint + 0 + + + SuppressBuildableAutocreation + + 8D1107260486CEB800E47090 + + primary + + + + + diff --git a/TrayMenu.h b/TrayMenu.h index 518cd8b..3548c93 100644 --- a/TrayMenu.h +++ b/TrayMenu.h @@ -8,7 +8,7 @@ #import "Controller.h" -@interface TrayMenu : NSObject { +@interface TrayMenu : NSObject { @private NSStatusItem *_statusItem; Controller *myController; diff --git a/TrayMenu.m b/TrayMenu.m index de04da5..eba7d6c 100644 --- a/TrayMenu.m +++ b/TrayMenu.m @@ -57,8 +57,7 @@ - (void) actionQuit:(id)sender { } - (NSMenu *) createMenu { - NSZone *menuZone = [NSMenu menuZone]; - NSMenu *menu = [[NSMenu allocWithZone:menuZone] init]; + NSMenu *menu = [NSMenu new]; NSMenuItem *menuItem; // Add About @@ -90,7 +89,8 @@ - (void) applicationDidFinishLaunching:(NSNotification *)notification { NSMenu *menu = [self createMenu]; // Check if Darkmode menubar is supported and enable templating of the icon in that case. - NSImage *icon = [NSImage imageNamed:@"mouse.png"]; + NSImage *icon = [NSImage imageNamed:@"mouse"]; + [icon setSize:CGSizeMake(19, 19)]; BOOL oldBusted = (floor(NSAppKitVersionNumber) <= NSAppKitVersionNumber10_9); if (!oldBusted) @@ -100,11 +100,11 @@ - (void) applicationDidFinishLaunching:(NSNotification *)notification { } _statusItem = [[[NSStatusBar systemStatusBar] - statusItemWithLength:NSSquareStatusItemLength] retain]; - [_statusItem setMenu:menu]; - [_statusItem setHighlightMode:YES]; - [_statusItem setToolTip:@"MiddleClick"]; - [_statusItem setImage:icon]; + statusItemWithLength:NSSquareStatusItemLength] retain]; + _statusItem.highlightMode = YES; + _statusItem.menu = menu; + _statusItem.button.toolTip = @"MiddleClick"; + _statusItem.button.image = icon; [menu release]; } diff --git a/mouse.icns b/mouse.icns index b7abf57..fa33b7f 100644 Binary files a/mouse.icns and b/mouse.icns differ diff --git a/mouse@2x.png b/mouse@2x.png new file mode 100644 index 0000000..584e49f Binary files /dev/null and b/mouse@2x.png differ