diff --git a/apps/ios/cleverrc.xcodeproj/project.pbxproj b/apps/ios/cleverrc.xcodeproj/project.pbxproj
index a11354c2..896d5a79 100644
--- a/apps/ios/cleverrc.xcodeproj/project.pbxproj
+++ b/apps/ios/cleverrc.xcodeproj/project.pbxproj
@@ -139,7 +139,7 @@
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 0920;
- LastUpgradeCheck = 0920;
+ LastUpgradeCheck = 0930;
ORGANIZATIONNAME = "Copter Express";
TargetAttributes = {
7C51653C20139237004D1F4D = {
@@ -294,6 +294,7 @@
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
@@ -301,6 +302,7 @@
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
@@ -351,6 +353,7 @@
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
@@ -358,6 +361,7 @@
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
diff --git a/apps/ios/cleverrc.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/apps/ios/cleverrc.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 00000000..18d98100
--- /dev/null
+++ b/apps/ios/cleverrc.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEDidComputeMac32BitWarning
+
+
+
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/Contents.json b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/Contents.json
index dbbe908d..ea0141b6 100644
--- a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/Contents.json
+++ b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/Contents.json
@@ -1,95 +1,111 @@
{
"images" : [
{
- "idiom" : "iphone",
"size" : "20x20",
+ "idiom" : "iphone",
+ "filename" : "cleverrc40.png",
"scale" : "2x"
},
{
- "idiom" : "iphone",
"size" : "20x20",
+ "idiom" : "iphone",
+ "filename" : "clever60.png",
"scale" : "3x"
},
{
- "idiom" : "iphone",
"size" : "29x29",
+ "idiom" : "iphone",
+ "filename" : "clever58.png",
"scale" : "2x"
},
{
- "idiom" : "iphone",
"size" : "29x29",
+ "idiom" : "iphone",
+ "filename" : "clever87.png",
"scale" : "3x"
},
{
- "idiom" : "iphone",
"size" : "40x40",
+ "idiom" : "iphone",
+ "filename" : "clever80.png",
"scale" : "2x"
},
{
- "idiom" : "iphone",
"size" : "40x40",
+ "idiom" : "iphone",
+ "filename" : "clever120.png",
"scale" : "3x"
},
{
"size" : "60x60",
"idiom" : "iphone",
- "filename" : "cleverios180.png",
+ "filename" : "clever120-1.png",
"scale" : "2x"
},
{
"size" : "60x60",
"idiom" : "iphone",
- "filename" : "cleverios180-1.png",
+ "filename" : "clever180-1.png",
"scale" : "3x"
},
{
- "idiom" : "ipad",
"size" : "20x20",
+ "idiom" : "ipad",
+ "filename" : "clever20.png",
"scale" : "1x"
},
{
- "idiom" : "ipad",
"size" : "20x20",
+ "idiom" : "ipad",
+ "filename" : "clever40.png",
"scale" : "2x"
},
{
- "idiom" : "ipad",
"size" : "29x29",
+ "idiom" : "ipad",
+ "filename" : "clever29.png",
"scale" : "1x"
},
{
- "idiom" : "ipad",
"size" : "29x29",
+ "idiom" : "ipad",
+ "filename" : "clever58-1.png",
"scale" : "2x"
},
{
- "idiom" : "ipad",
"size" : "40x40",
+ "idiom" : "ipad",
+ "filename" : "clever40-1.png",
"scale" : "1x"
},
{
- "idiom" : "ipad",
"size" : "40x40",
+ "idiom" : "ipad",
+ "filename" : "clever80-1.png",
"scale" : "2x"
},
{
- "idiom" : "ipad",
"size" : "76x76",
+ "idiom" : "ipad",
+ "filename" : "clever76.png",
"scale" : "1x"
},
{
- "idiom" : "ipad",
"size" : "76x76",
+ "idiom" : "ipad",
+ "filename" : "clever152.png",
"scale" : "2x"
},
{
- "idiom" : "ipad",
"size" : "83.5x83.5",
+ "idiom" : "ipad",
+ "filename" : "clever167.png",
"scale" : "2x"
},
{
- "idiom" : "ios-marketing",
"size" : "1024x1024",
+ "idiom" : "ios-marketing",
+ "filename" : "clever1024.png",
"scale" : "1x"
}
],
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever1024.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever1024.png
new file mode 100644
index 00000000..18e6ddae
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever1024.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever120-1.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever120-1.png
new file mode 100644
index 00000000..df88d16e
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever120-1.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever120.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever120.png
new file mode 100644
index 00000000..df88d16e
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever120.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever152.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever152.png
new file mode 100644
index 00000000..ac26ada9
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever152.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever167.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever167.png
new file mode 100644
index 00000000..092ae2c0
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever167.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever180-1.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever180-1.png
new file mode 100644
index 00000000..ede5637d
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever180-1.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever20.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever20.png
new file mode 100644
index 00000000..a6efdbf2
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever20.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever29.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever29.png
new file mode 100644
index 00000000..76a04760
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever29.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever40-1.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever40-1.png
new file mode 100644
index 00000000..43736655
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever40-1.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever40.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever40.png
new file mode 100644
index 00000000..43736655
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever40.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever58-1.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever58-1.png
new file mode 100644
index 00000000..f5ef15a8
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever58-1.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever58.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever58.png
new file mode 100644
index 00000000..f5ef15a8
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever58.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever60.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever60.png
new file mode 100644
index 00000000..273f23c5
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever60.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever76.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever76.png
new file mode 100644
index 00000000..1267cf82
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever76.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever80-1.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever80-1.png
new file mode 100644
index 00000000..9cb96a3f
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever80-1.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever80.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever80.png
new file mode 100644
index 00000000..9cb96a3f
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever80.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever87.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever87.png
new file mode 100644
index 00000000..6510f9f1
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/clever87.png differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/cleverios180-1.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/cleverios180-1.png
deleted file mode 100644
index ae590b79..00000000
Binary files a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/cleverios180-1.png and /dev/null differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/cleverios180.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/cleverios180.png
deleted file mode 100644
index ae590b79..00000000
Binary files a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/cleverios180.png and /dev/null differ
diff --git a/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/cleverrc40.png b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/cleverrc40.png
new file mode 100644
index 00000000..43736655
Binary files /dev/null and b/apps/ios/cleverrc/Assets.xcassets/AppIcon.appiconset/cleverrc40.png differ
diff --git a/apps/ios/cleverrc/Info.plist b/apps/ios/cleverrc/Info.plist
index 561d6a61..690ce469 100644
--- a/apps/ios/cleverrc/Info.plist
+++ b/apps/ios/cleverrc/Info.plist
@@ -5,7 +5,7 @@
CFBundleDevelopmentRegion
$(DEVELOPMENT_LANGUAGE)
CFBundleDisplayName
- Clever RC
+ CLEVER RC
CFBundleExecutable
$(EXECUTABLE_NAME)
CFBundleIdentifier
@@ -19,7 +19,7 @@
CFBundleShortVersionString
1.0
CFBundleVersion
- 1
+ 2
LSRequiresIPhoneOS
UILaunchStoryboardName
diff --git a/apps/ios/cleverrc/ViewController.swift b/apps/ios/cleverrc/ViewController.swift
index 20329783..99e97ec5 100644
--- a/apps/ios/cleverrc/ViewController.swift
+++ b/apps/ios/cleverrc/ViewController.swift
@@ -24,6 +24,7 @@ class ViewController: UIViewController, WKScriptMessageHandler {
UIApplication.shared.isIdleTimerDisabled = true
// Setup webview event handlers
+ webView.scrollView.bounces = false;
webView.configuration.userContentController.add(self, name: "control")
webView.configuration.userContentController.add(self, name: "controlStart")
webView.configuration.userContentController.add(self, name: "lowBattery")
diff --git a/apps/ios/cleverrc/main.css b/apps/ios/cleverrc/main.css
index c9a6dc11..3f3f944d 100644
--- a/apps/ios/cleverrc/main.css
+++ b/apps/ios/cleverrc/main.css
@@ -7,6 +7,10 @@ html, body {
color: rgba(255, 255, 255, 0.9);
}
+* {
+ user-select: none;
+}
+
.stick {
border-radius: 50%;
width: 5cm;
diff --git a/apps/ios/cleverrc/telemetry.js b/apps/ios/cleverrc/telemetry.js
index 4370ac13..6b35c585 100644
--- a/apps/ios/cleverrc/telemetry.js
+++ b/apps/ios/cleverrc/telemetry.js
@@ -65,8 +65,8 @@ new ROSLIB.Topic({
name: '/rosout_agg',
messageType: 'rosgraph_msgs/Log'
}).subscribe(function(message) {
- var BLACKLIST = ['CMD: ', 'PR: ', 'DROPPED'];
- if(message.level >= 4) {
+ var BLACKLIST = ['CMD: ', 'PR: ', 'DROPPED', 'Clock skew detected', 'MANUAL CONTROL LOST'];
+ if (message.level >= 4) {
if (BLACKLIST.some(function(e) {
return message.msg.indexOf(e) != -1;
})) {