diff --git a/.gitignore b/.gitignore
index ecda9b4..9b60407 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@
build
xcuserdata
xcshareddata
+.idea
diff --git a/keycastr/Info.plist b/keycastr/Info.plist
index 086f196..61c0a0f 100644
--- a/keycastr/Info.plist
+++ b/keycastr/Info.plist
@@ -9,7 +9,7 @@
CFBundleIconFile
KeyCastr
CFBundleIdentifier
- net.stephendeken.KeyCastr
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleInfoDictionaryVersion
6.0
CFBundleName
diff --git a/keycastr/KCDefaultVisualizer-Info.plist b/keycastr/KCDefaultVisualizer-Info.plist
index 1fa7998..6448321 100644
--- a/keycastr/KCDefaultVisualizer-Info.plist
+++ b/keycastr/KCDefaultVisualizer-Info.plist
@@ -7,7 +7,7 @@
CFBundleExecutable
${EXECUTABLE_NAME}
CFBundleIdentifier
- net.stephendeken.KCDefaultVisualizer
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleInfoDictionaryVersion
6.0
CFBundlePackageType
diff --git a/keycastr/KCVisualizer-Info.plist b/keycastr/KCVisualizer-Info.plist
index a3a20c7..de31ba4 100644
--- a/keycastr/KCVisualizer-Info.plist
+++ b/keycastr/KCVisualizer-Info.plist
@@ -7,7 +7,7 @@
CFBundleExecutable
${EXECUTABLE_NAME}
CFBundleIdentifier
- net.stephendeken.KCVisualizer
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleInfoDictionaryVersion
6.0
CFBundlePackageType
diff --git a/keycastr/KeyCastr.xcodeproj/project.pbxproj b/keycastr/KeyCastr.xcodeproj/project.pbxproj
index 584a7d5..20d0eb9 100644
--- a/keycastr/KeyCastr.xcodeproj/project.pbxproj
+++ b/keycastr/KeyCastr.xcodeproj/project.pbxproj
@@ -10,7 +10,7 @@
3D1640500F3BCC6900CA65AD /* KeyCastrStatusItemActive.png in Resources */ = {isa = PBXBuildFile; fileRef = 3D16404E0F3BCC6900CA65AD /* KeyCastrStatusItemActive.png */; };
3D1640510F3BCC6900CA65AD /* KeyCastrStatusItemInactive.png in Resources */ = {isa = PBXBuildFile; fileRef = 3D16404F0F3BCC6900CA65AD /* KeyCastrStatusItemInactive.png */; };
3D1640600F3BCEC900CA65AD /* KeyCastrInactive.icns in Resources */ = {isa = PBXBuildFile; fileRef = 3D16405F0F3BCEC900CA65AD /* KeyCastrInactive.icns */; };
- 3D1646690F43D76D00CA65AD /* KCDefaultVisualizer.kcplugin in CopyFiles */ = {isa = PBXBuildFile; fileRef = 3D16465A0F43D6E700CA65AD /* KCDefaultVisualizer.kcplugin */; };
+ 3D1646690F43D76D00CA65AD /* KCDefaultVisualizer.kcplugin in CopyFiles */ = {isa = PBXBuildFile; fileRef = 3D16465A0F43D6E700CA65AD /* KCDefaultVisualizer.kcplugin */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
3D1646830F43D8BD00CA65AD /* KCDefaultVisualizer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D3F54E20F31E52E001C7272 /* KCDefaultVisualizer.m */; };
3D1646840F43D8BE00CA65AD /* KCDefaultVisualizer.nib in Resources */ = {isa = PBXBuildFile; fileRef = 3D3F54E70F31E5C2001C7272 /* KCDefaultVisualizer.nib */; };
3D1646C20F43DC4700CA65AD /* KCVisualizer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D3F54DE0F31448A001C7272 /* KCVisualizer.m */; };
@@ -20,14 +20,14 @@
3D1646C60F43DC5000CA65AD /* KCKeystrokeTransformer.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D1645DD0F43CD0600CA65AD /* KCKeystrokeTransformer.h */; };
3D1646C70F43DC5100CA65AD /* KCKeystrokeTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D1645DE0F43CD0600CA65AD /* KCKeystrokeTransformer.m */; };
3D1646CB0F43DC6D00CA65AD /* KCVisualizer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3D1646B60F43DBD700CA65AD /* KCVisualizer.framework */; };
- 3D1646D10F43DCA700CA65AD /* KCVisualizer.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 3D1646B60F43DBD700CA65AD /* KCVisualizer.framework */; };
+ 3D1646D10F43DCA700CA65AD /* KCVisualizer.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 3D1646B60F43DBD700CA65AD /* KCVisualizer.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
3D1646EB0F43DD3000CA65AD /* KCAppController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D3F52550F300389001C7272 /* KCAppController.m */; };
3D1646ED0F43DD5E00CA65AD /* NSBezierPath+RoundedRect.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D3F56C30F3374E9001C7272 /* NSBezierPath+RoundedRect.m */; };
3D1646F40F43DD8300CA65AD /* KCVisualizer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3D1646B60F43DBD700CA65AD /* KCVisualizer.framework */; };
3D1648B70F451D8000CA65AD /* KCVisualizer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3D1646B60F43DBD700CA65AD /* KCVisualizer.framework */; };
3D1648B90F451DAA00CA65AD /* Svelte.nib in Resources */ = {isa = PBXBuildFile; fileRef = 3D1648B80F451DAA00CA65AD /* Svelte.nib */; };
3D1648BC0F451DC300CA65AD /* SvelteVisualizer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D1648BB0F451DC300CA65AD /* SvelteVisualizer.m */; };
- 3D1648C20F451EDB00CA65AD /* Svelte.kcplugin in CopyFiles */ = {isa = PBXBuildFile; fileRef = 3D1648AC0F451D4500CA65AD /* Svelte.kcplugin */; };
+ 3D1648C20F451EDB00CA65AD /* Svelte.kcplugin in CopyFiles */ = {isa = PBXBuildFile; fileRef = 3D1648AC0F451D4500CA65AD /* Svelte.kcplugin */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
3D3F52A70F30BF1E001C7272 /* KeyCastr.icns in Resources */ = {isa = PBXBuildFile; fileRef = 3D3F52A60F30BF1E001C7272 /* KeyCastr.icns */; };
3D3F52BA0F30C68B001C7272 /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3D3F52B90F30C68B001C7272 /* Quartz.framework */; };
3D3F52EB0F30CB13001C7272 /* KCPrefsWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D3F52EA0F30CB13001C7272 /* KCPrefsWindowController.m */; };
@@ -37,9 +37,9 @@
3D3F548B0F30F37E001C7272 /* DisplayIcon.tif in Resources */ = {isa = PBXBuildFile; fileRef = 3D3F54880F30F37E001C7272 /* DisplayIcon.tif */; };
3D3F548E0F30F3C7001C7272 /* UpdateIcon.tif in Resources */ = {isa = PBXBuildFile; fileRef = 3D3F548D0F30F3C7001C7272 /* UpdateIcon.tif */; };
3D3F56410F32D266001C7272 /* ShortcutRecorder.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3D3F56400F32D266001C7272 /* ShortcutRecorder.framework */; };
- 3D3F564E0F32D2EA001C7272 /* ShortcutRecorder.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 3D3F56400F32D266001C7272 /* ShortcutRecorder.framework */; };
+ 3D3F564E0F32D2EA001C7272 /* ShortcutRecorder.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 3D3F56400F32D266001C7272 /* ShortcutRecorder.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
3D3F56CB0F337533001C7272 /* NSUserDefaults+Utility.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D3F56CA0F337533001C7272 /* NSUserDefaults+Utility.m */; };
- 3D66FC520F539C290034ECC1 /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 3DF8835C0F5254F9005FD1C6 /* Sparkle.framework */; };
+ 3D66FC520F539C290034ECC1 /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 3DF8835C0F5254F9005FD1C6 /* Sparkle.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
3DF883890F5256FF005FD1C6 /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DF8835C0F5254F9005FD1C6 /* Sparkle.framework */; };
8D11072A0486CEB800E47090 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 29B97318FDCFA39411CA2CEA /* MainMenu.nib */; };
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
@@ -442,7 +442,7 @@
29B97313FDCFA39411CA2CEA /* Project object */ = {
isa = PBXProject;
attributes = {
- LastUpgradeCheck = 0510;
+ LastUpgradeCheck = 0830;
};
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "KeyCastr" */;
compatibilityVersion = "Xcode 3.2";
@@ -603,12 +603,27 @@
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_DEBUGGING_SYMBOLS = full;
GCC_GENERATE_TEST_COVERAGE_FILES = YES;
GCC_INSTRUMENT_PROGRAM_FLOW_ARCS = YES;
+ GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.9;
OTHER_LDFLAGS = "";
@@ -640,6 +655,7 @@
AppKit,
);
PREBINDING = NO;
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KCVisualizer;
PRODUCT_NAME = KCVisualizer;
ZERO_LINK = NO;
};
@@ -666,6 +682,7 @@
AppKit,
);
PREBINDING = NO;
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KeyCastr.Svelte;
PRODUCT_NAME = Svelte;
WRAPPER_EXTENSION = kcplugin;
ZERO_LINK = NO;
@@ -691,6 +708,7 @@
AppKit,
);
PREBINDING = NO;
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KCDefaultVisualizer;
PRODUCT_NAME = KCDefaultVisualizer;
WRAPPER_EXTENSION = kcplugin;
ZERO_LINK = NO;
@@ -700,7 +718,6 @@
3D11D6180F4CEB0300BBE7F1 /* Code Coverage */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_BIT)";
COPY_PHASE_STRIP = NO;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
@@ -716,6 +733,7 @@
GCC_PREFIX_HEADER = KeyCastr_Prefix.pch;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications";
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KeyCastr;
PRODUCT_NAME = KeyCastr;
SDKROOT = macosx;
WRAPPER_EXTENSION = app;
@@ -742,6 +760,7 @@
AppKit,
);
PREBINDING = NO;
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KCDefaultVisualizer;
PRODUCT_NAME = KCDefaultVisualizer;
WRAPPER_EXTENSION = kcplugin;
ZERO_LINK = YES;
@@ -766,6 +785,7 @@
AppKit,
);
PREBINDING = NO;
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KCDefaultVisualizer;
PRODUCT_NAME = KCDefaultVisualizer;
WRAPPER_EXTENSION = kcplugin;
ZERO_LINK = NO;
@@ -794,6 +814,7 @@
AppKit,
);
PREBINDING = NO;
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KCVisualizer;
PRODUCT_NAME = KCVisualizer;
ZERO_LINK = YES;
};
@@ -820,6 +841,7 @@
AppKit,
);
PREBINDING = NO;
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KCVisualizer;
PRODUCT_NAME = KCVisualizer;
ZERO_LINK = NO;
};
@@ -844,6 +866,7 @@
AppKit,
);
PREBINDING = NO;
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KeyCastr.Svelte;
PRODUCT_NAME = Svelte;
WRAPPER_EXTENSION = kcplugin;
ZERO_LINK = YES;
@@ -868,6 +891,7 @@
AppKit,
);
PREBINDING = NO;
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KeyCastr.Svelte;
PRODUCT_NAME = Svelte;
WRAPPER_EXTENSION = kcplugin;
ZERO_LINK = NO;
@@ -877,7 +901,6 @@
C01FCF4B08A954540054247B /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_BIT)";
COPY_PHASE_STRIP = NO;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
@@ -891,6 +914,7 @@
GCC_PREFIX_HEADER = KeyCastr_Prefix.pch;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications";
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KeyCastr;
PRODUCT_NAME = KeyCastr;
SDKROOT = macosx;
WRAPPER_EXTENSION = app;
@@ -901,7 +925,6 @@
C01FCF4C08A954540054247B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_BIT)";
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
@@ -912,6 +935,7 @@
GCC_PREFIX_HEADER = KeyCastr_Prefix.pch;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications";
+ PRODUCT_BUNDLE_IDENTIFIER = net.stephendeken.KeyCastr;
PRODUCT_NAME = KeyCastr;
SDKROOT = macosx;
WRAPPER_EXTENSION = app;
@@ -922,8 +946,24 @@
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
GCC_GENERATE_TEST_COVERAGE_FILES = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.9;
PREBINDING = NO;
@@ -935,8 +975,23 @@
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_GENERATE_TEST_COVERAGE_FILES = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.9;
PREBINDING = NO;
diff --git a/keycastr/Svelte-Info.plist b/keycastr/Svelte-Info.plist
index 5f3ae93..e9424b8 100644
--- a/keycastr/Svelte-Info.plist
+++ b/keycastr/Svelte-Info.plist
@@ -7,7 +7,7 @@
CFBundleExecutable
${EXECUTABLE_NAME}
CFBundleIdentifier
- net.stephendeken.KeyCastr.Svelte
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleInfoDictionaryVersion
6.0
CFBundlePackageType