aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrowanbeentje <rowan@beent.je>2010-03-03 01:29:44 +0000
committerrowanbeentje <rowan@beent.je>2010-03-03 01:29:44 +0000
commitc96491888011538e6da8ed6b6dd2ef217c845f2b (patch)
treeb5c5b6d1af8369409f099684655496f5ab717ea1
parent300e2cb06db621fb7f651b11e5e1c6bb2f6fbd87 (diff)
downloadsequelpro-c96491888011538e6da8ed6b6dd2ef217c845f2b.tar.gz
sequelpro-c96491888011538e6da8ed6b6dd2ef217c845f2b.tar.bz2
sequelpro-c96491888011538e6da8ed6b6dd2ef217c845f2b.zip
- Addition and enabling of crash reporting and exception reporting, submitting to a new online repository. Integrates the FeedbackReporter framework.
l---------FeedbackReporter.framework/FeedbackReporter1
l---------FeedbackReporter.framework/Headers1
l---------FeedbackReporter.framework/Resources1
-rwxr-xr-xFeedbackReporter.framework/Versions/A/FeedbackReporterbin0 -> 246280 bytes
-rw-r--r--FeedbackReporter.framework/Versions/A/Headers/FRExceptionReportingApplication.h22
-rw-r--r--FeedbackReporter.framework/Versions/A/Headers/FRFeedbackReporter.h40
-rw-r--r--FeedbackReporter.framework/Versions/A/Resources/English.lproj/FeedbackReporter.stringsbin0 -> 3974 bytes
-rw-r--r--FeedbackReporter.framework/Versions/A/Resources/FeedbackReporter.nibbin0 -> 30177 bytes
-rw-r--r--FeedbackReporter.framework/Versions/A/Resources/FeedbackReporter.pch21
-rw-r--r--FeedbackReporter.framework/Versions/A/Resources/German.lproj/FeedbackReporter.stringsbin0 -> 4084 bytes
-rw-r--r--FeedbackReporter.framework/Versions/A/Resources/Info.plist22
-rw-r--r--FeedbackReporter.framework/Versions/A/Resources/Russian.lproj/FeedbackReporter.stringsbin0 -> 4772 bytes
l---------FeedbackReporter.framework/Versions/Current1
-rw-r--r--Interfaces/English.lproj/Credits.rtf12
-rw-r--r--Resources/Info.plist4
-rw-r--r--Source/SPAppController.m9
-rw-r--r--sequel-pro.xcodeproj/project.pbxproj9
17 files changed, 141 insertions, 2 deletions
diff --git a/FeedbackReporter.framework/FeedbackReporter b/FeedbackReporter.framework/FeedbackReporter
new file mode 120000
index 00000000..141078a4
--- /dev/null
+++ b/FeedbackReporter.framework/FeedbackReporter
@@ -0,0 +1 @@
+Versions/Current/FeedbackReporter \ No newline at end of file
diff --git a/FeedbackReporter.framework/Headers b/FeedbackReporter.framework/Headers
new file mode 120000
index 00000000..a177d2a6
--- /dev/null
+++ b/FeedbackReporter.framework/Headers
@@ -0,0 +1 @@
+Versions/Current/Headers \ No newline at end of file
diff --git a/FeedbackReporter.framework/Resources b/FeedbackReporter.framework/Resources
new file mode 120000
index 00000000..953ee36f
--- /dev/null
+++ b/FeedbackReporter.framework/Resources
@@ -0,0 +1 @@
+Versions/Current/Resources \ No newline at end of file
diff --git a/FeedbackReporter.framework/Versions/A/FeedbackReporter b/FeedbackReporter.framework/Versions/A/FeedbackReporter
new file mode 100755
index 00000000..1c819683
--- /dev/null
+++ b/FeedbackReporter.framework/Versions/A/FeedbackReporter
Binary files differ
diff --git a/FeedbackReporter.framework/Versions/A/Headers/FRExceptionReportingApplication.h b/FeedbackReporter.framework/Versions/A/Headers/FRExceptionReportingApplication.h
new file mode 100644
index 00000000..a0fc992d
--- /dev/null
+++ b/FeedbackReporter.framework/Versions/A/Headers/FRExceptionReportingApplication.h
@@ -0,0 +1,22 @@
+/*
+ * Copyright 2008, Jens Alfke, Torsten Curdt
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#import <Cocoa/Cocoa.h>
+
+
+@interface FRExceptionReportingApplication : NSApplication
+
+@end
diff --git a/FeedbackReporter.framework/Versions/A/Headers/FRFeedbackReporter.h b/FeedbackReporter.framework/Versions/A/Headers/FRFeedbackReporter.h
new file mode 100644
index 00000000..b9dfa310
--- /dev/null
+++ b/FeedbackReporter.framework/Versions/A/Headers/FRFeedbackReporter.h
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2008, Torsten Curdt
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#import <Cocoa/Cocoa.h>
+
+@interface FRFeedbackReporter : NSObject {
+
+ @private
+ NSLock *modalLock;
+ id feedbackController;
+ id delegate;
+}
+
++ (FRFeedbackReporter *)sharedReporter;
+
+- (id) delegate;
+- (void) setDelegate:(id) delegate;
+
+- (BOOL) reportFeedback;
+- (BOOL) reportIfCrash;
+- (BOOL) reportException:(NSException *)exception;
+
+@end
+
+@interface NSObject (FRFeedbackReporterDelegate)
+- (NSDictionary*) customParametersForFeedbackReport;
+@end
diff --git a/FeedbackReporter.framework/Versions/A/Resources/English.lproj/FeedbackReporter.strings b/FeedbackReporter.framework/Versions/A/Resources/English.lproj/FeedbackReporter.strings
new file mode 100644
index 00000000..92cad530
--- /dev/null
+++ b/FeedbackReporter.framework/Versions/A/Resources/English.lproj/FeedbackReporter.strings
Binary files differ
diff --git a/FeedbackReporter.framework/Versions/A/Resources/FeedbackReporter.nib b/FeedbackReporter.framework/Versions/A/Resources/FeedbackReporter.nib
new file mode 100644
index 00000000..d6fc807e
--- /dev/null
+++ b/FeedbackReporter.framework/Versions/A/Resources/FeedbackReporter.nib
Binary files differ
diff --git a/FeedbackReporter.framework/Versions/A/Resources/FeedbackReporter.pch b/FeedbackReporter.framework/Versions/A/Resources/FeedbackReporter.pch
new file mode 100644
index 00000000..4b180bde
--- /dev/null
+++ b/FeedbackReporter.framework/Versions/A/Resources/FeedbackReporter.pch
@@ -0,0 +1,21 @@
+/*
+ * Copyright 2008, Torsten Curdt
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifdef __OBJC__
+ #import <Cocoa/Cocoa.h>
+#endif
+
+#define FRLocalizedString(key,comment) NSLocalizedStringFromTableInBundle(key, @"FeedbackReporter", [NSBundle bundleWithIdentifier:@"org.vafer.FeedbackReporter"], comment)
diff --git a/FeedbackReporter.framework/Versions/A/Resources/German.lproj/FeedbackReporter.strings b/FeedbackReporter.framework/Versions/A/Resources/German.lproj/FeedbackReporter.strings
new file mode 100644
index 00000000..3d90053c
--- /dev/null
+++ b/FeedbackReporter.framework/Versions/A/Resources/German.lproj/FeedbackReporter.strings
Binary files differ
diff --git a/FeedbackReporter.framework/Versions/A/Resources/Info.plist b/FeedbackReporter.framework/Versions/A/Resources/Info.plist
new file mode 100644
index 00000000..9a61e529
--- /dev/null
+++ b/FeedbackReporter.framework/Versions/A/Resources/Info.plist
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>English</string>
+ <key>CFBundleExecutable</key>
+ <string>FeedbackReporter</string>
+ <key>CFBundleIdentifier</key>
+ <string>org.vafer.FeedbackReporter</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>FeedbackReporter</string>
+ <key>CFBundlePackageType</key>
+ <string>FMWK</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleVersion</key>
+ <string>1.0</string>
+</dict>
+</plist>
diff --git a/FeedbackReporter.framework/Versions/A/Resources/Russian.lproj/FeedbackReporter.strings b/FeedbackReporter.framework/Versions/A/Resources/Russian.lproj/FeedbackReporter.strings
new file mode 100644
index 00000000..971d0dde
--- /dev/null
+++ b/FeedbackReporter.framework/Versions/A/Resources/Russian.lproj/FeedbackReporter.strings
Binary files differ
diff --git a/FeedbackReporter.framework/Versions/Current b/FeedbackReporter.framework/Versions/Current
new file mode 120000
index 00000000..8c7e5a66
--- /dev/null
+++ b/FeedbackReporter.framework/Versions/Current
@@ -0,0 +1 @@
+A \ No newline at end of file
diff --git a/Interfaces/English.lproj/Credits.rtf b/Interfaces/English.lproj/Credits.rtf
index 84df58f3..fb0b3006 100644
--- a/Interfaces/English.lproj/Credits.rtf
+++ b/Interfaces/English.lproj/Credits.rtf
@@ -82,6 +82,16 @@ Ci\'e1ran Walsh, Allan Odgaard\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\qc\pardirnatural
\cf0 All rights reserved.\
\
+\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\qc\pardirnatural
+
+\b \cf0 FeedbackReporter
+\b0 \
+\cf0 Copyright (c) 2009\
+\pard\pardeftab720\qc
+{\field{\*\fldinst{HYPERLINK "http://vafer.org/"}}{\fldrslt \cf0 Torsten Curdt}}\
+\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\qc\pardirnatural
+\cf0 All rights reserved.\
+\
\pard\pardeftab720\qc
\b \cf0 Artwork
@@ -89,4 +99,4 @@ Ci\'e1ran Walsh, Allan Odgaard\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\qc\pardirnatural
\cf0 Icon by {\field{\*\fldinst{HYPERLINK "http://nadesign.net/"}}{\fldrslt Na Wong}} and {\field{\*\fldinst{HYPERLINK "http://www.benperry.com.au/"}}{\fldrslt Ben Perry}}\
GUI design by {\field{\*\fldinst{HYPERLINK "http://www.sequelpro.com/"}}{\fldrslt Sequel Pro}} team.\
-} \ No newline at end of file
+}
diff --git a/Resources/Info.plist b/Resources/Info.plist
index 3986be05..ac080f29 100644
--- a/Resources/Info.plist
+++ b/Resources/Info.plist
@@ -63,6 +63,8 @@
<string>0.9.7</string>
<key>CFBundleVersion</key>
<string></string>
+ <key>FRFeedbackReporter.targetURL</key>
+ <string>http://log.sequelpro.com/submit</string>
<key>LSMinimumSystemVersion</key>
<string>10.5.0</string>
<key>LSMinimumSystemVersionByArchitecture</key>
@@ -81,7 +83,7 @@
<key>NSMainNibFile</key>
<string>MainMenu</string>
<key>NSPrincipalClass</key>
- <string>NSApplication</string>
+ <string>FRExceptionReportingApplication</string>
<key>NSServices</key>
<array>
<dict>
diff --git a/Source/SPAppController.m b/Source/SPAppController.m
index d961bbf0..6ba6175d 100644
--- a/Source/SPAppController.m
+++ b/Source/SPAppController.m
@@ -33,6 +33,7 @@
#import "SPConstants.h"
#import <Sparkle/Sparkle.h>
+#import <FeedbackReporter/FRFeedbackReporter.h>
@implementation SPAppController
@@ -77,6 +78,14 @@
}
/**
+ * Initialisation stuff after launch is complete
+ */
+- (void)applicationDidFinishLaunching:(NSNotification *)notification
+{
+ [[FRFeedbackReporter sharedReporter] reportIfCrash];
+}
+
+/**
* Menu item validation.
*/
- (BOOL)validateMenuItem:(NSMenuItem *)menuItem
diff --git a/sequel-pro.xcodeproj/project.pbxproj b/sequel-pro.xcodeproj/project.pbxproj
index 53772a50..dad74652 100644
--- a/sequel-pro.xcodeproj/project.pbxproj
+++ b/sequel-pro.xcodeproj/project.pbxproj
@@ -148,6 +148,8 @@
589235321020C1230011DE00 /* SPHistoryController.m in Sources */ = {isa = PBXBuildFile; fileRef = 589235301020C1230011DE00 /* SPHistoryController.m */; };
58BC5E56103898140058C2E6 /* MCPStreamingResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 583B779710386B0200B21F7E /* MCPStreamingResult.h */; settings = {ATTRIBUTES = (Public, ); }; };
58BC5E571038983E0058C2E6 /* MCPResultPlus.h in Headers */ = {isa = PBXBuildFile; fileRef = 17B7B5D1101603B200F057DE /* MCPResultPlus.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 58BD9E8711320987008B3958 /* FeedbackReporter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 58BD9E8611320987008B3958 /* FeedbackReporter.framework */; };
+ 58BD9E8F113209AB008B3958 /* FeedbackReporter.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 58BD9E8611320987008B3958 /* FeedbackReporter.framework */; };
58C34F5310B86CAE00D37E14 /* NSNotificationAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 58C34F5210B86CAE00D37E14 /* NSNotificationAdditions.m */; };
58C3506510B9A56C00D37E14 /* button_left.png in Resources */ = {isa = PBXBuildFile; fileRef = 58C3506410B9A56C00D37E14 /* button_left.png */; };
58C3506710B9A57300D37E14 /* button_right.png in Resources */ = {isa = PBXBuildFile; fileRef = 58C3506610B9A57300D37E14 /* button_right.png */; };
@@ -281,6 +283,7 @@
17B7B61D101605E300F057DE /* MCPKit.framework in CopyFiles */,
4DECC4910EC2B436008D359E /* Growl.framework in CopyFiles */,
4DECC48F0EC2B436008D359E /* Sparkle.framework in CopyFiles */,
+ 58BD9E8F113209AB008B3958 /* FeedbackReporter.framework in CopyFiles */,
B52ECE1410DDAD01009DC3E8 /* BWToolkitFramework.framework in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -538,6 +541,7 @@
588B2CC70FE5641E00EC5FC0 /* ssh-disconnected.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ssh-disconnected.png"; sourceTree = "<group>"; };
589235301020C1230011DE00 /* SPHistoryController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPHistoryController.m; sourceTree = "<group>"; };
589235311020C1230011DE00 /* SPHistoryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPHistoryController.h; sourceTree = "<group>"; };
+ 58BD9E8611320987008B3958 /* FeedbackReporter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = FeedbackReporter.framework; sourceTree = "<group>"; };
58C34F5110B86CAE00D37E14 /* NSNotificationAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSNotificationAdditions.h; sourceTree = "<group>"; };
58C34F5210B86CAE00D37E14 /* NSNotificationAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSNotificationAdditions.m; sourceTree = "<group>"; };
58C3506410B9A56C00D37E14 /* button_left.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_left.png; sourceTree = "<group>"; };
@@ -698,6 +702,7 @@
BCC5CC3C103EEE49007CE557 /* libz.dylib in Frameworks */,
58C458DF10CF188F00E6E13E /* libcrypto.dylib in Frameworks */,
B52ECDDC10DDACE9009DC3E8 /* BWToolkitFramework.framework in Frameworks */,
+ 58BD9E8711320987008B3958 /* FeedbackReporter.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -712,6 +717,7 @@
B52ECDDB10DDACE9009DC3E8 /* BWToolkitFramework.framework */,
4DECC3320EC2A170008D359E /* Sparkle.framework */,
296DC89E0F8FD336002A3258 /* WebKit.framework */,
+ 58BD9E8611320987008B3958 /* FeedbackReporter.framework */,
296DC8BE0F9091DF002A3258 /* libicucore.dylib */,
17B7B58F1016028F00F057DE /* libcrypto.dylib */,
17B7B591101602AE00F057DE /* libssl.dylib */,
@@ -2275,6 +2281,7 @@
FRAMEWORK_SEARCH_PATHS = (
"\"$(SRCROOT)/Frameworks\"",
"\"$(LOCAL_DEVELOPER_DIR)/Extras/BWToolkit\"",
+ "\"$(SRCROOT)\"",
);
GCC_MODEL_TUNING = G5;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
@@ -2361,6 +2368,7 @@
FRAMEWORK_SEARCH_PATHS = (
"\"$(SRCROOT)/Frameworks\"",
"\"$(LOCAL_DEVELOPER_DIR)/Extras/BWToolkit\"",
+ "\"$(SRCROOT)\"",
);
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_FIX_AND_CONTINUE = YES;
@@ -2385,6 +2393,7 @@
FRAMEWORK_SEARCH_PATHS = (
"\"$(SRCROOT)/Frameworks\"",
"\"$(LOCAL_DEVELOPER_DIR)/Extras/BWToolkit\"",
+ "\"$(SRCROOT)\"",
);
GCC_MODEL_TUNING = G5;
GCC_PRECOMPILE_PREFIX_HEADER = YES;