You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by sh...@apache.org on 2014/11/01 00:43:21 UTC

[01/50] ios commit: Added missing tests/cordova-ios.xcworkspace

Repository: cordova-ios
Updated Branches:
  refs/heads/wkwebview 2a38ad254 -> f13ba3a49


Added missing tests/cordova-ios.xcworkspace


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/1d43720e
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/1d43720e
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/1d43720e

Branch: refs/heads/wkwebview
Commit: 1d43720ead1eae3e858017039a51521330479eeb
Parents: 3acdb29
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 10 11:02:54 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 10 11:02:54 2014 -0700

----------------------------------------------------------------------
 .../contents.xcworkspacedata                    |  10 ++
 .../xcshareddata/cordova-ios.xccheckout         |  41 ++++++
 .../xcshareddata/xcschemes/CordovaLib.xcscheme  |  77 +++++++++++
 .../xcschemes/CordovaLibApp.xcscheme            | 128 +++++++++++++++++++
 .../xcschemes/CordovaLibTests.xcscheme          | 110 ++++++++++++++++
 5 files changed, 366 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1d43720e/tests/cordova-ios.xcworkspace/contents.xcworkspacedata
----------------------------------------------------------------------
diff --git a/tests/cordova-ios.xcworkspace/contents.xcworkspacedata b/tests/cordova-ios.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000..369ca40
--- /dev/null
+++ b/tests/cordova-ios.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "group:../CordovaLib/CordovaLib.xcodeproj">
+   </FileRef>
+   <FileRef
+      location = "group:CordovaLibTests/CordovaLibTests.xcodeproj">
+   </FileRef>
+</Workspace>

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1d43720e/tests/cordova-ios.xcworkspace/xcshareddata/cordova-ios.xccheckout
----------------------------------------------------------------------
diff --git a/tests/cordova-ios.xcworkspace/xcshareddata/cordova-ios.xccheckout b/tests/cordova-ios.xcworkspace/xcshareddata/cordova-ios.xccheckout
new file mode 100644
index 0000000..df6d866
--- /dev/null
+++ b/tests/cordova-ios.xcworkspace/xcshareddata/cordova-ios.xccheckout
@@ -0,0 +1,41 @@
+<?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>IDESourceControlProjectFavoriteDictionaryKey</key>
+	<false/>
+	<key>IDESourceControlProjectIdentifier</key>
+	<string>98C9766F-4C4F-444E-8FA9-C08C9A9BD59C</string>
+	<key>IDESourceControlProjectName</key>
+	<string>cordova-ios</string>
+	<key>IDESourceControlProjectOriginsDictionary</key>
+	<dict>
+		<key>BCEF5DF91F385AC4047CEAF9627D88E4C774D4FA</key>
+		<string>https://git-wip-us.apache.org/repos/asf/cordova-ios.git</string>
+	</dict>
+	<key>IDESourceControlProjectPath</key>
+	<string>tests/cordova-ios.xcworkspace</string>
+	<key>IDESourceControlProjectRelativeInstallPathDictionary</key>
+	<dict>
+		<key>BCEF5DF91F385AC4047CEAF9627D88E4C774D4FA</key>
+		<string>../..</string>
+	</dict>
+	<key>IDESourceControlProjectURL</key>
+	<string>https://git-wip-us.apache.org/repos/asf/cordova-ios.git</string>
+	<key>IDESourceControlProjectVersion</key>
+	<integer>111</integer>
+	<key>IDESourceControlProjectWCCIdentifier</key>
+	<string>BCEF5DF91F385AC4047CEAF9627D88E4C774D4FA</string>
+	<key>IDESourceControlProjectWCConfigurations</key>
+	<array>
+		<dict>
+			<key>IDESourceControlRepositoryExtensionIdentifierKey</key>
+			<string>public.vcs.git</string>
+			<key>IDESourceControlWCCIdentifierKey</key>
+			<string>BCEF5DF91F385AC4047CEAF9627D88E4C774D4FA</string>
+			<key>IDESourceControlWCCName</key>
+			<string>cordova-ios</string>
+		</dict>
+	</array>
+</dict>
+</plist>

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1d43720e/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLib.xcscheme
----------------------------------------------------------------------
diff --git a/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLib.xcscheme b/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLib.xcscheme
new file mode 100644
index 0000000..b3559ef
--- /dev/null
+++ b/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLib.xcscheme
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "0600"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "D2AAC07D0554694100DB518D"
+               BuildableName = "libCordova.a"
+               BlueprintName = "CordovaLib"
+               ReferencedContainer = "container:../CordovaLib/CordovaLib.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      buildConfiguration = "Debug">
+      <Testables>
+      </Testables>
+   </TestAction>
+   <LaunchAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Debug"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      allowLocationSimulation = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "D2AAC07D0554694100DB518D"
+            BuildableName = "libCordova.a"
+            BlueprintName = "CordovaLib"
+            ReferencedContainer = "container:../CordovaLib/CordovaLib.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Release"
+      debugDocumentVersioning = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "D2AAC07D0554694100DB518D"
+            BuildableName = "libCordova.a"
+            BlueprintName = "CordovaLib"
+            ReferencedContainer = "container:../CordovaLib/CordovaLib.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1d43720e/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLibApp.xcscheme
----------------------------------------------------------------------
diff --git a/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLibApp.xcscheme b/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLibApp.xcscheme
new file mode 100644
index 0000000..41f6d8e
--- /dev/null
+++ b/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLibApp.xcscheme
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "0600"
+   version = "1.7">
+   <BuildAction
+      parallelizeBuildables = "NO"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "D2AAC07D0554694100DB518D"
+               BuildableName = "libCordova.a"
+               BlueprintName = "CordovaLib"
+               ReferencedContainer = "container:../CordovaLib/CordovaLib.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "303A4067152124BB00182201"
+               BuildableName = "CordovaLibApp.app"
+               BlueprintName = "CordovaLibApp"
+               ReferencedContainer = "container:CordovaLibTests/CordovaLibTests.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "NO"
+            buildForArchiving = "NO"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "686357A8141002F100DF4CF2"
+               BuildableName = "CordovaLibTests.xctest"
+               BlueprintName = "CordovaLibTests"
+               ReferencedContainer = "container:CordovaLibTests/CordovaLibTests.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      buildConfiguration = "Debug">
+      <Testables>
+         <TestableReference
+            skipped = "NO">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "686357A8141002F100DF4CF2"
+               BuildableName = "CordovaLibTests.xctest"
+               BlueprintName = "CordovaLibTests"
+               ReferencedContainer = "container:CordovaLibTests/CordovaLibTests.xcodeproj">
+            </BuildableReference>
+            <LocationScenarioReference
+               identifier = "com.apple.dt.IDEFoundation.CurrentLocationScenarioIdentifier"
+               referenceType = "1">
+            </LocationScenarioReference>
+         </TestableReference>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "303A4067152124BB00182201"
+            BuildableName = "CordovaLibApp.app"
+            BlueprintName = "CordovaLibApp"
+            ReferencedContainer = "container:CordovaLibTests/CordovaLibTests.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+   </TestAction>
+   <LaunchAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Debug"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      allowLocationSimulation = "YES">
+      <BuildableProductRunnable>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "303A4067152124BB00182201"
+            BuildableName = "CordovaLibApp.app"
+            BlueprintName = "CordovaLibApp"
+            ReferencedContainer = "container:CordovaLibTests/CordovaLibTests.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Release"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "303A4067152124BB00182201"
+            BuildableName = "CordovaLibApp.app"
+            BlueprintName = "CordovaLibApp"
+            ReferencedContainer = "container:CordovaLibTests/CordovaLibTests.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1d43720e/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLibTests.xcscheme
----------------------------------------------------------------------
diff --git a/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLibTests.xcscheme b/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLibTests.xcscheme
new file mode 100644
index 0000000..2b4f1c7
--- /dev/null
+++ b/tests/cordova-ios.xcworkspace/xcshareddata/xcschemes/CordovaLibTests.xcscheme
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "0600"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "NO"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "D2AAC07D0554694100DB518D"
+               BuildableName = "libCordova.a"
+               BlueprintName = "CordovaLib"
+               ReferencedContainer = "container:../CordovaLib/CordovaLib.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "NO"
+            buildForArchiving = "NO"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "686357A8141002F100DF4CF2"
+               BuildableName = "CordovaLibTests.xctest"
+               BlueprintName = "CordovaLibTests"
+               ReferencedContainer = "container:CordovaLibTests/CordovaLibTests.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      buildConfiguration = "Debug">
+      <Testables>
+         <TestableReference
+            skipped = "NO">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "686357A8141002F100DF4CF2"
+               BuildableName = "CordovaLibTests.xctest"
+               BlueprintName = "CordovaLibTests"
+               ReferencedContainer = "container:CordovaLibTests/CordovaLibTests.xcodeproj">
+            </BuildableReference>
+         </TestableReference>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "686357A8141002F100DF4CF2"
+            BuildableName = "CordovaLibTests.xctest"
+            BlueprintName = "CordovaLibTests"
+            ReferencedContainer = "container:CordovaLibTests/CordovaLibTests.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+   </TestAction>
+   <LaunchAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Debug"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      allowLocationSimulation = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "686357A8141002F100DF4CF2"
+            BuildableName = "CordovaLibTests.xctest"
+            BlueprintName = "CordovaLibTests"
+            ReferencedContainer = "container:CordovaLibTests/CordovaLibTests.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Release"
+      debugDocumentVersioning = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "D2AAC07D0554694100DB518D"
+            BuildableName = "libCordova.a"
+            BlueprintName = "CordovaLib"
+            ReferencedContainer = "container:../CordovaLib/CordovaLib.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[38/50] ios commit: Update version to 3.7.0

Posted by sh...@apache.org.
Update version to 3.7.0


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/753d06c9
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/753d06c9
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/753d06c9

Branch: refs/heads/wkwebview
Commit: 753d06c93a98cfbbc51df64cbc080ac8186b470b
Parents: cc43cd7
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Oct 30 11:34:11 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Oct 30 11:34:11 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVAvailability.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/753d06c9/CordovaLib/Classes/CDVAvailability.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVAvailability.h b/CordovaLib/Classes/CDVAvailability.h
index cbcb65b..1d37be0 100644
--- a/CordovaLib/Classes/CDVAvailability.h
+++ b/CordovaLib/Classes/CDVAvailability.h
@@ -53,6 +53,7 @@
 #define __CORDOVA_3_4_1 30401
 #define __CORDOVA_3_5_0 30500
 #define __CORDOVA_3_6_0 30600
+#define __CORDOVA_3_7_0 30700
 #define __CORDOVA_NA 99999      /* not available */
 
 /*
@@ -63,7 +64,7 @@
  #endif
  */
 #ifndef CORDOVA_VERSION_MIN_REQUIRED
-    #define CORDOVA_VERSION_MIN_REQUIRED __CORDOVA_3_6_0
+    #define CORDOVA_VERSION_MIN_REQUIRED __CORDOVA_3_7_0
 #endif
 
 /*


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[20/50] ios commit: Remove "Valid values for --target" in script headers. Use "cordova/lib/list-emulator-images" to get the list.

Posted by sh...@apache.org.
Remove "Valid values for --target" in script headers. Use "cordova/lib/list-emulator-images" to get the list.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/8dd4d6ff
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/8dd4d6ff
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/8dd4d6ff

Branch: refs/heads/wkwebview
Commit: 8dd4d6ffa8394aa415a059f6c9b5ea15b2c66ac8
Parents: 10c87e2
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 17 16:27:29 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 16:27:29 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/lib/install-device         |  6 ------
 bin/templates/scripts/cordova/lib/install-emulator       | 11 -----------
 bin/templates/scripts/cordova/lib/list-emulator-images   |  7 -------
 bin/templates/scripts/cordova/lib/list-started-emulators |  6 ------
 bin/templates/scripts/cordova/lib/start-emulator         |  6 ------
 5 files changed, 36 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8dd4d6ff/bin/templates/scripts/cordova/lib/install-device
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/install-device b/bin/templates/scripts/cordova/lib/install-device
index 4cea6c7..bb57e93 100755
--- a/bin/templates/scripts/cordova/lib/install-device
+++ b/bin/templates/scripts/cordova/lib/install-device
@@ -17,12 +17,6 @@
 # specific language governing permissions and limitations
 # under the License.
 #
-# Valid values for "--target" (case insensitive):
-#     "iPhone (Retina 3.5-inch)" (default)
-#     "iPhone (Retina 4-inch)"
-#     "iPhone"
-#     "iPad"
-#     "iPad (Retina)"
 
 LIB_PATH=$( cd "$( dirname "$0" )" && pwd -P)
 CORDOVA_PATH="$(dirname "$LIB_PATH")"

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8dd4d6ff/bin/templates/scripts/cordova/lib/install-emulator
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/install-emulator b/bin/templates/scripts/cordova/lib/install-emulator
index 65d2036..2be0f45 100755
--- a/bin/templates/scripts/cordova/lib/install-emulator
+++ b/bin/templates/scripts/cordova/lib/install-emulator
@@ -17,17 +17,6 @@
 # specific language governing permissions and limitations
 # under the License.
 #
-# Valid values for "--target" (case sensitive):
-#   iPhone-4s
-#   iPhone-5
-#   iPhone-5s
-#   iPhone-6-Plus
-#   iPhone-6
-#   iPad-2
-#   iPad-Retina
-#   iPad-Air
-#   Resizable-iPhone
-#   Resizable-iPad
 
 OPTION_RESULT=()
 TARGET="iPhone-6"

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8dd4d6ff/bin/templates/scripts/cordova/lib/list-emulator-images
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/list-emulator-images b/bin/templates/scripts/cordova/lib/list-emulator-images
index 689f22c..88dcd6b 100755
--- a/bin/templates/scripts/cordova/lib/list-emulator-images
+++ b/bin/templates/scripts/cordova/lib/list-emulator-images
@@ -16,13 +16,6 @@
 #  KIND, either express or implied.  See the License for the
 # specific language governing permissions and limitations
 # under the License.
-#
-# Valid values for "--target" (case insensitive):
-#     "iPhone Retina (3.5-inch)" (default)
-#     "iPhone Retina (4-inch)"
-#     "iPhone"
-#     "iPad"
-#     "iPad Retina"
 
 set -e
 

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8dd4d6ff/bin/templates/scripts/cordova/lib/list-started-emulators
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/list-started-emulators b/bin/templates/scripts/cordova/lib/list-started-emulators
index cfafe67..ccdb1a7 100755
--- a/bin/templates/scripts/cordova/lib/list-started-emulators
+++ b/bin/templates/scripts/cordova/lib/list-started-emulators
@@ -17,12 +17,6 @@
 # specific language governing permissions and limitations
 # under the License.
 #
-# Valid values for "--target" (case insensitive):
-#     "iPhone (Retina 3.5-inch)" (default)
-#     "iPhone (Retina 4-inch)"
-#     "iPhone"
-#     "iPad"
-#     "iPad (Retina)"
 
 set -e
 

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8dd4d6ff/bin/templates/scripts/cordova/lib/start-emulator
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/start-emulator b/bin/templates/scripts/cordova/lib/start-emulator
index 95028dd..7e6885f 100755
--- a/bin/templates/scripts/cordova/lib/start-emulator
+++ b/bin/templates/scripts/cordova/lib/start-emulator
@@ -17,12 +17,6 @@
 # specific language governing permissions and limitations
 # under the License.
 #
-# Valid values for "--target" (case insensitive):
-#     "iPhone (Retina 3.5-inch)" (default)
-#     "iPhone (Retina 4-inch)"
-#     "iPhone"
-#     "iPad"
-#     "iPad (Retina)"
 
 set -e
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[09/50] ios commit: CB-2520 - iOS - "original" user agent needs to be overridable (closes #112)

Posted by sh...@apache.org.
CB-2520 - iOS - "original" user agent needs to be overridable (closes #112)

Signed-off-by: Shazron Abdullah <sh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/78ca06e1
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/78ca06e1
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/78ca06e1

Branch: refs/heads/wkwebview
Commit: 78ca06e1ae14ad895d73ac5d141843cc94ecae33
Parents: b1ebdab
Author: Kevin Hawkins <kh...@salesforce.com>
Authored: Sat Oct 4 19:45:54 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Mon Oct 13 15:07:10 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVViewController.h   | 11 ++++++
 CordovaLib/Classes/CDVViewController.m   | 11 ++++--
 tests/CordovaLibTests/CDVUserAgentTest.m | 51 ++++++++++++++++++++++++---
 3 files changed, 66 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/78ca06e1/CordovaLib/Classes/CDVViewController.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.h b/CordovaLib/Classes/CDVViewController.h
index 1015c50..1d34ddd 100644
--- a/CordovaLib/Classes/CDVViewController.h
+++ b/CordovaLib/Classes/CDVViewController.h
@@ -48,8 +48,19 @@
 @property (nonatomic, readwrite, copy) NSString* startPage;
 @property (nonatomic, readonly, strong) CDVCommandQueue* commandQueue;
 @property (nonatomic, readonly, strong) id <CDVCommandDelegate> commandDelegate;
+
+/**
+ The complete user agent that Cordova will use when sending web requests.
+ */
 @property (nonatomic, readonly) NSString* userAgent;
 
+/**
+ The base user agent data that Cordova will use to build its user agent.  If this
+ property isn't set, Cordova will use the standard web view user agent as its
+ base.
+ */
+@property (nonatomic, readwrite, copy) NSString* baseUserAgent;
+
 + (NSDictionary*)getBundlePlist:(NSString*)plistName;
 + (NSString*)applicationDocumentsDirectory;
 

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/78ca06e1/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index 66c1850..1e59b1b 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -52,7 +52,7 @@
 @synthesize webView, supportedOrientations;
 @synthesize pluginObjects, pluginsMap, whitelist, startupPluginNames;
 @synthesize configParser, settings, loadFromString;
-@synthesize wwwFolderName, startPage, initialized, openURL;
+@synthesize wwwFolderName, startPage, initialized, openURL, baseUserAgent;
 @synthesize commandDelegate = _commandDelegate;
 @synthesize commandQueue = _commandQueue;
 
@@ -562,9 +562,14 @@
 - (NSString*)userAgent
 {
     if (_userAgent == nil) {
-        NSString* originalUserAgent = [CDVUserAgentUtil originalUserAgent];
+        NSString *localBaseUserAgent;
+        if (self.baseUserAgent != nil) {
+            localBaseUserAgent = self.baseUserAgent;
+        } else {
+            localBaseUserAgent = [CDVUserAgentUtil originalUserAgent];
+        }
         // Use our address as a unique number to append to the User-Agent.
-        _userAgent = [NSString stringWithFormat:@"%@ (%lld)", originalUserAgent, (long long)self];
+        _userAgent = [NSString stringWithFormat:@"%@ (%lld)", localBaseUserAgent, (long long)self];
     }
     return _userAgent;
 }

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/78ca06e1/tests/CordovaLibTests/CDVUserAgentTest.m
----------------------------------------------------------------------
diff --git a/tests/CordovaLibTests/CDVUserAgentTest.m b/tests/CordovaLibTests/CDVUserAgentTest.m
index e9066b3..42d238c 100644
--- a/tests/CordovaLibTests/CDVUserAgentTest.m
+++ b/tests/CordovaLibTests/CDVUserAgentTest.m
@@ -31,14 +31,22 @@
 @implementation CDVUserAgentTestViewController
 @synthesize vc1 = _vc1, vc2 = _vc2;
 
+- (id)init
+{
+    self = [super init];
+    if (self) {
+        _vc1 = [[CDVViewController alloc] init];
+        _vc2 = [[CDVViewController alloc] init];
+    }
+    return self;
+}
+
 - (void)loadView
 {
-    _vc1 = [[CDVViewController alloc] init];
     _vc1.wwwFolderName = @"www";
     _vc1.startPage = @"index.html";
     [self addChildViewController:_vc1];
 
-    _vc2 = [[CDVViewController alloc] init];
     _vc2.wwwFolderName = @"www";
     _vc2.startPage = @"index.html";
     [self addChildViewController:_vc2];
@@ -74,6 +82,23 @@
     [super tearDown];
 }
 
+- (void)testDefaultUserAgent
+{
+    CDVUserAgentTestViewController* rootVc = [[CDVUserAgentTestViewController alloc] init];
+    
+    self.appDelegate.window.rootViewController = rootVc;
+    
+    
+    NSString* getWebUserAgent = @"navigator.userAgent";
+    [self waitForConditionName:@"getting user-agents" block:^BOOL {
+        return (rootVc.vc1.webView.request != nil && rootVc.vc2.webView.request != nil);
+    }];
+    NSString* webUserAgent = [rootVc.vc1.webView stringByEvaluatingJavaScriptFromString:getWebUserAgent];
+    NSString* cordovaUserAgent = rootVc.vc1.userAgent;
+    
+    XCTAssertTrue([cordovaUserAgent hasPrefix:webUserAgent], @"Default Cordova user agent should be based on navigator.userAgent.");
+}
+
 - (void)testMultipleViews
 {
     CDVUserAgentTestViewController* rootVc = [[CDVUserAgentTestViewController alloc] init];
@@ -81,8 +106,8 @@
     self.appDelegate.window.rootViewController = rootVc;
 
     NSString* getUserAgentCode = @"navigator.userAgent";
-    [self waitForConditionName:@"getting user-agents" block:^{
-        return (BOOL)(rootVc.vc1.webView.request != nil && rootVc.vc2.webView.request != nil);
+    [self waitForConditionName:@"getting user-agents" block:^BOOL {
+        return (rootVc.vc1.webView.request != nil && rootVc.vc2.webView.request != nil);
     }];
     NSString* ua1 = [rootVc.vc1.webView stringByEvaluatingJavaScriptFromString:getUserAgentCode];
     NSString* ua2 = [rootVc.vc2.webView stringByEvaluatingJavaScriptFromString:getUserAgentCode];
@@ -90,4 +115,22 @@
     XCTAssertFalse([ua1 isEqual:ua2], @"User-Agents should be different.");
 }
 
+- (void)testBaseUserAgent
+{
+    CDVUserAgentTestViewController* rootVc = [[CDVUserAgentTestViewController alloc] init];
+    rootVc.vc1.baseUserAgent = @"A different baseline user agent 1";
+    rootVc.vc2.baseUserAgent = @"A different baseline user agent 2";
+    
+    self.appDelegate.window.rootViewController = rootVc;
+    
+    [self waitForConditionName:@"getting user-agents" block:^BOOL {
+        return (rootVc.vc1.webView.request != nil && rootVc.vc2.webView.request != nil);
+    }];
+    NSString* cordovaUserAgent1 = rootVc.vc1.userAgent;
+    NSString* cordovaUserAgent2 = rootVc.vc2.userAgent;
+    
+    XCTAssertTrue([cordovaUserAgent1 hasPrefix:rootVc.vc1.baseUserAgent], @"Cordova user agent should be based on base user agent.");
+    XCTAssertTrue([cordovaUserAgent2 hasPrefix:rootVc.vc2.baseUserAgent], @"Cordova user agent should be based on base user agent.");
+}
+
 @end


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[12/50] ios commit: CB-7643 - made isValidCallbackId threadsafe

Posted by sh...@apache.org.
CB-7643 - made isValidCallbackId threadsafe

_callbackIdPattern was being changed on multiple threads which caused bad access errors

Signed-off-by: Shazron Abdullah <sh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/9a3b1085
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/9a3b1085
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/9a3b1085

Branch: refs/heads/wkwebview
Commit: 9a3b1085f22956d463d9a5732f3316214a4a1005
Parents: 24e3ba6
Author: samedii <sa...@gmail.com>
Authored: Fri Sep 26 00:49:08 2014 +0200
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Oct 16 18:40:58 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVCommandDelegateImpl.m | 23 ++++++++++-------------
 1 file changed, 10 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/9a3b1085/CordovaLib/Classes/CDVCommandDelegateImpl.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVCommandDelegateImpl.m b/CordovaLib/Classes/CDVCommandDelegateImpl.m
index 76f5ef4..fc3346d 100644
--- a/CordovaLib/Classes/CDVCommandDelegateImpl.m
+++ b/CordovaLib/Classes/CDVCommandDelegateImpl.m
@@ -31,7 +31,14 @@
     if (self != nil) {
         _viewController = viewController;
         _commandQueue = _viewController.commandQueue;
-        _callbackIdPattern = nil;
+        
+        NSError* err = nil;
+        _callbackIdPattern = [NSRegularExpression regularExpressionWithPattern:@"[^A-Za-z0-9._-]" options:0 error:&err];
+        if (err != nil) {
+            // Couldn't initialize Regex
+            NSLog(@"Error: Couldn't initialize regex");
+            _callbackIdPattern = nil;
+        }
     }
     return self;
 }
@@ -97,21 +104,11 @@
 
 - (BOOL)isValidCallbackId:(NSString*)callbackId
 {
-    NSError* err = nil;
-
-    if (callbackId == nil) {
+    
+    if (callbackId == nil || _callbackIdPattern == nil) {
         return NO;
     }
 
-    // Initialize on first use
-    if (_callbackIdPattern == nil) {
-        // Catch any invalid characters in the callback id.
-        _callbackIdPattern = [NSRegularExpression regularExpressionWithPattern:@"[^A-Za-z0-9._-]" options:0 error:&err];
-        if (err != nil) {
-            // Couldn't initialize Regex; No is safer than Yes.
-            return NO;
-        }
-    }
     // Disallow if too long or if any invalid characters were found.
     if (([callbackId length] > 100) || [_callbackIdPattern firstMatchInString:callbackId options:0 range:NSMakeRange(0, [callbackId length])]) {
         return NO;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[49/50] ios commit: Fixed processOpenUrl and userContentController:didReceiveScriptMessage bad merge.

Posted by sh...@apache.org.
Fixed processOpenUrl and userContentController:didReceiveScriptMessage bad merge.

Converted processOpenUrl to use the webViewOperationsDelegate.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/1a7dbfa6
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/1a7dbfa6
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/1a7dbfa6

Branch: refs/heads/wkwebview
Commit: 1a7dbfa65bec49f9ef003bd2bd5b4d2bff9dd71d
Parents: f6d89c6
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 31 16:28:53 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 31 16:28:53 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVViewController.m | 74 +++++++++++++++++++----------
 1 file changed, 50 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a7dbfa6/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index 79d16b8..f8ced8b 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -331,10 +331,10 @@
             if (errorUrl) {
                 errorUrl = [NSURL URLWithString:[NSString stringWithFormat:@"?error=%@", [loadErr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]] relativeToURL:errorUrl];
                 NSLog(@"%@", [errorUrl absoluteString]);
-                [self.webView loadRequest:[NSURLRequest requestWithURL:errorUrl]];
+                [_webViewOperationsDelegate loadRequest:[NSURLRequest requestWithURL:errorUrl]];
             } else {
-            NSString* html = [NSString stringWithFormat:@"<html><body> %@ </body></html>", loadErr];
-            [_webViewOperationsDelegate loadHTMLString:html baseURL:nil];
+                NSString* html = [NSString stringWithFormat:@"<html><body> %@ </body></html>", loadErr];
+                [_webViewOperationsDelegate loadHTMLString:html baseURL:nil];
             }
         }
     }];
@@ -716,7 +716,7 @@
 + (NSString*)applicationDocumentsDirectory
 {
     NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
-    NSString* basePath = (([paths count] > 0) ? ([paths objectAtIndex : 0]) : nil);
+    NSString* basePath = (([paths count] > 0) ? ([paths objectAtIndex:0]) : nil);
 
     return basePath;
 }
@@ -891,12 +891,48 @@
 {
     if (self.openURL) {
         [self processOpenUrl:self.openURL pageLoaded:YES];
-        NSString* jsString = [NSString stringWithFormat:@"handleOpenURL(\"%@\");", [self.openURL description]];
-        [_webViewOperationsDelegate evaluateJavaScript:jsString completionHandler:nil];
-        self.openURL = nil;
     }
 }
 
+- (void)processOpenUrl:(NSURL*)url pageLoaded:(BOOL)pageLoaded
+{
+    __weak CDVViewController* weakSelf = self;
+
+    dispatch_block_t handleOpenUrl = ^(void) {
+        NSString* jsString = [NSString stringWithFormat:@"if (typeof handleOpenURL === 'function') { handleOpenURL(\"%@\");}", url];
+        [_webViewOperationsDelegate evaluateJavaScript:jsString
+                                     completionHandler:^(id object, NSError* error) {
+            if (error == nil) {
+                weakSelf.openURL = nil;
+            }
+        }];
+    };
+
+    if (!pageLoaded) {
+        // query the webview for readystate
+        NSString* jsString = @"document.readystate";
+        [_webViewOperationsDelegate evaluateJavaScript:jsString
+                                     completionHandler:^(id object, NSError* error) {
+            if ((error == nil) && [object isKindOfClass:[NSString class]]) {
+                NSString* readyState = (NSString*)object;
+                BOOL ready = [readyState isEqualToString:@"loaded"] || [readyState isEqualToString:@"complete"];
+                if (ready) {
+                    handleOpenUrl();
+                } else {
+                    weakSelf.openURL = url;
+                }
+            }
+        }];
+    } else {
+        handleOpenUrl();
+    }
+}
+
+- (void)processOpenUrl:(NSURL*)url
+{
+    [self processOpenUrl:url pageLoaded:NO];
+}
+
 #pragma mark WKScriptMessageHandler implementation
 
 #ifdef __IPHONE_8_0
@@ -910,29 +946,19 @@
         CDVInvokedUrlCommand* command = [CDVInvokedUrlCommand commandFromJson:jsonEntry];
         CDV_EXEC_LOG(@"Exec(%@): Calling %@.%@", command.callbackId, command.className, command.methodName);
 
-- (void)processOpenUrl:(NSURL*)url pageLoaded:(BOOL)pageLoaded
-{
-    if (!pageLoaded) {
-        // query the webview for readystate
-        NSString* readyState = [webView stringByEvaluatingJavaScriptFromString:@"document.readyState"];
-        pageLoaded = [readyState isEqualToString:@"loaded"] || [readyState isEqualToString:@"complete"];
-    }
+        if (![_commandQueue execute:command]) {
+    #ifdef DEBUG
+                NSString* commandJson = [jsonEntry JSONString];
+                static NSUInteger maxLogLength = 1024;
+                NSString* commandString = ([commandJson length] > maxLogLength) ?
+                    [NSString stringWithFormat:@"%@[...]", [commandJson substringToIndex:maxLogLength]] :
+                    commandJson;
 
-    if (pageLoaded) {
                 DLog(@"FAILED pluginJSON = %@", commandString);
-        NSString* jsString = [NSString stringWithFormat:@"if (typeof handleOpenURL === 'function') { handleOpenURL(\"%@\");}", url];
     #endif
         }
-    } else {
-        // save for when page has loaded
-        self.openURL = url;
     }
-}
-
 #endif /* ifdef __IPHONE_8_0 */
-{
-    [self processOpenUrl:url pageLoaded:NO];
-}
 
 // ///////////////////////
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[36/50] ios commit: Updated cordova.js for CB-7868

Posted by sh...@apache.org.
Updated cordova.js for CB-7868


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/8458588e
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/8458588e
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/8458588e

Branch: refs/heads/wkwebview
Commit: 8458588ebe311f9a6154a1004d410d11e88d61c8
Parents: 31302e4
Author: Shazron Abdullah <sh...@apache.org>
Authored: Mon Oct 27 17:01:44 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Mon Oct 27 17:01:44 2014 -0700

----------------------------------------------------------------------
 CordovaLib/cordova.js | 35 ++++++++++++++++-------------------
 1 file changed, 16 insertions(+), 19 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8458588e/CordovaLib/cordova.js
----------------------------------------------------------------------
diff --git a/CordovaLib/cordova.js b/CordovaLib/cordova.js
index 7889955..cc900ac 100644
--- a/CordovaLib/cordova.js
+++ b/CordovaLib/cordova.js
@@ -1,5 +1,5 @@
 // Platform: ios
-// 94291706945c42fd47fa632ed30f5eb811080e95
+// 91157c2e1bf3eb098c7e2ab31404e895ccb0df2a
 /*
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
@@ -1152,6 +1152,7 @@ var cordova = require('cordova');
 var modulemapper = require('cordova/modulemapper');
 var platform = require('cordova/platform');
 var pluginloader = require('cordova/pluginloader');
+var utils = require('cordova/utils');
 
 var platformInitChannelsArray = [channel.onNativeReady, channel.onPluginsReady];
 
@@ -1183,21 +1184,19 @@ function replaceNavigator(origNavigator) {
         for (var key in origNavigator) {
             if (typeof origNavigator[key] == 'function') {
                 newNavigator[key] = origNavigator[key].bind(origNavigator);
-            } else {
+            } 
+            else {
                 (function(k) {
-                        Object.defineProperty(newNavigator, k, {
-                            get: function() {
-                                return origNavigator[k];
-                            },
-                            configurable: true,
-                            enumerable: true
-                        });
-                    })(key);
+                    utils.defineGetterSetter(newNavigator,key,function() {
+                        return origNavigator[k];
+                    });
+                })(key);
             }
         }
     }
     return newNavigator;
 }
+
 if (window.navigator) {
     window.navigator = replaceNavigator(window.navigator);
 }
@@ -1278,6 +1277,7 @@ define("cordova/init_b", function(require, exports, module) {
 var channel = require('cordova/channel');
 var cordova = require('cordova');
 var platform = require('cordova/platform');
+var utils = require('cordova/utils');
 
 var platformInitChannelsArray = [channel.onDOMContentLoaded, channel.onNativeReady];
 
@@ -1312,16 +1312,13 @@ function replaceNavigator(origNavigator) {
         for (var key in origNavigator) {
             if (typeof origNavigator[key] == 'function') {
                 newNavigator[key] = origNavigator[key].bind(origNavigator);
-            } else {
+            } 
+            else {
                 (function(k) {
-                        Object.defineProperty(newNavigator, k, {
-                            get: function() {
-                                return origNavigator[k];
-                            },
-                            configurable: true,
-                            enumerable: true
-                        });
-                    })(key);
+                    utils.defineGetterSetter(newNavigator,key,function() {
+                        return origNavigator[k];
+                    });
+                })(key);
             }
         }
     }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[13/50] ios commit: Ignore test build artifacts

Posted by sh...@apache.org.
Ignore test build artifacts


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/45b4a854
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/45b4a854
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/45b4a854

Branch: refs/heads/wkwebview
Commit: 45b4a85497396a474a32f01a516534f528000c77
Parents: 9a3b108
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Oct 16 18:59:51 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Oct 16 18:59:51 2014 -0700

----------------------------------------------------------------------
 tests/CordovaLibTests/.gitignore | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/45b4a854/tests/CordovaLibTests/.gitignore
----------------------------------------------------------------------
diff --git a/tests/CordovaLibTests/.gitignore b/tests/CordovaLibTests/.gitignore
new file mode 100644
index 0000000..c795b05
--- /dev/null
+++ b/tests/CordovaLibTests/.gitignore
@@ -0,0 +1 @@
+build
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[30/50] ios commit: CB-7606 - handleOpenURL handler firing more than necessary

Posted by sh...@apache.org.
CB-7606 - handleOpenURL handler firing more than necessary

- plus style fixups through uncrustify


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/01b3d191
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/01b3d191
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/01b3d191

Branch: refs/heads/wkwebview
Commit: 01b3d191d47b5f5b9549a1174b0d92ae0f0a901d
Parents: 6506b22
Author: Shazron Abdullah <sh...@apache.org>
Authored: Tue Oct 21 01:52:40 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Tue Oct 21 01:52:40 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVViewController.h          |  1 +
 CordovaLib/Classes/CDVViewController.m          | 35 ++++++++++++++------
 .../__PROJECT_NAME__/Classes/AppDelegate.m      | 18 +++++-----
 3 files changed, 34 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/01b3d191/CordovaLib/Classes/CDVViewController.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.h b/CordovaLib/Classes/CDVViewController.h
index 1d34ddd..51863a5 100644
--- a/CordovaLib/Classes/CDVViewController.h
+++ b/CordovaLib/Classes/CDVViewController.h
@@ -79,5 +79,6 @@
 - (void)registerPlugin:(CDVPlugin*)plugin withPluginName:(NSString*)pluginName;
 
 - (BOOL)URLisAllowed:(NSURL*)url;
+- (void)processOpenUrl:(NSURL*)url;
 
 @end

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/01b3d191/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index 9f02d82..acb88f7 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -72,7 +72,8 @@
                                                      name:UIApplicationWillEnterForegroundNotification object:nil];
         [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onAppDidEnterBackground:)
                                                      name:UIApplicationDidEnterBackgroundNotification object:nil];
-        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleOpenURL:) name:CDVPluginHandleOpenURLNotification object:nil];
+        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onPageDidLoad:)
+                                                     name:CDVPageDidLoadNotification object:nil];
 
         // read from UISupportedInterfaceOrientations (or UISupportedInterfaceOrientations~iPad, if its iPad) from -Info.plist
         self.supportedOrientations = [self parseInterfaceOrientations:
@@ -562,7 +563,7 @@
 - (NSString*)userAgent
 {
     if (_userAgent == nil) {
-        NSString *localBaseUserAgent;
+        NSString* localBaseUserAgent;
         if (self.baseUserAgent != nil) {
             localBaseUserAgent = self.baseUserAgent;
         } else {
@@ -649,8 +650,6 @@
      */
     [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
 
-    [self processOpenUrl];
-
     [[NSNotificationCenter defaultCenter] postNotification:[NSNotification notificationWithName:CDVPageDidLoadNotification object:self.webView]];
 }
 
@@ -953,21 +952,37 @@
 
 // ///////////////////////
 
-- (void)handleOpenURL:(NSNotification*)notification
+- (void)onPageDidLoad:(NSNotification*)notification
 {
-    self.openURL = notification.object;
+    if (self.openURL) {
+        [self processOpenUrl:self.openURL pageLoaded:YES];
+        self.openURL = nil;
+    }
 }
 
-- (void)processOpenUrl
+- (void)processOpenUrl:(NSURL*)url pageLoaded:(BOOL)pageLoaded
 {
-    if (self.openURL) {
+    if (!pageLoaded) {
+        // query the webview for readystate
+        NSString* readyState = [webView stringByEvaluatingJavaScriptFromString:@"document.readyState"];
+        pageLoaded = [readyState isEqualToString:@"loaded"] || [readyState isEqualToString:@"complete"];
+    }
+
+    if (pageLoaded) {
         // calls into javascript global function 'handleOpenURL'
-        NSString* jsString = [NSString stringWithFormat:@"handleOpenURL(\"%@\");", [self.openURL description]];
+        NSString* jsString = [NSString stringWithFormat:@"if (typeof handleOpenURL === 'function') { handleOpenURL(\"%@\");}", url];
         [self.webView stringByEvaluatingJavaScriptFromString:jsString];
-        self.openURL = nil;
+    } else {
+        // save for when page has loaded
+        self.openURL = url;
     }
 }
 
+- (void)processOpenUrl:(NSURL*)url
+{
+    [self processOpenUrl:url pageLoaded:NO];
+}
+
 // ///////////////////////
 
 - (void)dealloc

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/01b3d191/bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m
----------------------------------------------------------------------
diff --git a/bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m b/bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m
index 1cf7fb6..fe4a7a0 100644
--- a/bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m
+++ b/bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m
@@ -99,9 +99,7 @@
         return NO;
     }
 
-    // calls into javascript global function 'handleOpenURL'
-    NSString* jsString = [NSString stringWithFormat:@"if (typeof handleOpenURL === 'function') { handleOpenURL(\"%@\");}", url];
-    [self.viewController.webView stringByEvaluatingJavaScriptFromString:jsString];
+    [self.viewController processOpenUrl:url];
 
     // all plugins will get the notification, and their handlers will be called
     [[NSNotificationCenter defaultCenter] postNotification:[NSNotification notificationWithName:CDVPluginHandleOpenURLNotification object:url]];
@@ -117,20 +115,20 @@
     [[NSNotificationCenter defaultCenter] postNotificationName:CDVLocalNotification object:notification];
 }
 
-- (void)                                application:(UIApplication *)application
-   didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
+- (void)                                 application:(UIApplication*)application
+    didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
 {
     // re-post ( broadcast )
     NSString* token = [[[[deviceToken description]
-                         stringByReplacingOccurrencesOfString: @"<" withString: @""]
-                        stringByReplacingOccurrencesOfString: @">" withString: @""]
-                       stringByReplacingOccurrencesOfString: @" " withString: @""];
+        stringByReplacingOccurrencesOfString:@"<" withString:@""]
+        stringByReplacingOccurrencesOfString:@">" withString:@""]
+        stringByReplacingOccurrencesOfString:@" " withString:@""];
 
     [[NSNotificationCenter defaultCenter] postNotificationName:CDVRemoteNotification object:token];
 }
 
-- (void)                                 application:(UIApplication *)application
-    didFailToRegisterForRemoteNotificationsWithError:(NSError *)error
+- (void)                                 application:(UIApplication*)application
+    didFailToRegisterForRemoteNotificationsWithError:(NSError*)error
 {
     // re-post ( broadcast )
     [[NSNotificationCenter defaultCenter] postNotificationName:CDVRemoteNotificationError object:error];


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[42/50] ios commit: CB-7047 - typo fix

Posted by sh...@apache.org.
CB-7047 - typo fix


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/e22c8fb7
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/e22c8fb7
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/e22c8fb7

Branch: refs/heads/wkwebview
Commit: e22c8fb73cee4c44eac3803b51e4b632098d0795
Parents: d801bac
Author: Shazron Abdullah <sh...@apache.org>
Authored: Mon Jul 21 14:43:36 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 31 15:37:43 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVWebViewPreferences.m | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/e22c8fb7/CordovaLib/Classes/CDVWebViewPreferences.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVWebViewPreferences.m b/CordovaLib/Classes/CDVWebViewPreferences.m
index 55f447b..f1cb48f 100644
--- a/CordovaLib/Classes/CDVWebViewPreferences.m
+++ b/CordovaLib/Classes/CDVWebViewPreferences.m
@@ -257,7 +257,7 @@
         theWebView.configuration.mediaPlaybackRequiresUserAction = mediaPlaybackRequiresUserAction;
 
         BOOL suppressesIncrementalRendering = NO; // default
-        prefObj = [self cordovaSettings:settings forKey:@"MediaPlaybackRequiresUserAction"];
+        prefObj = [self cordovaSettings:settings forKey:@"SuppressesIncrementalRendering"];
         if (prefObj != nil) {
             suppressesIncrementalRendering = [(NSNumber*)prefObj boolValue];
         }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[48/50] ios commit: Moved CDVWebViewUIDelegate into Classes folder

Posted by sh...@apache.org.
Moved CDVWebViewUIDelegate into Classes folder


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/4c0556bd
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/4c0556bd
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/4c0556bd

Branch: refs/heads/wkwebview
Commit: 4c0556bd611d3f93fa119592e2d16f37163b6925
Parents: 1a759ac
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Jul 17 16:48:13 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 31 15:37:43 2014 -0700

----------------------------------------------------------------------
 CordovaLib/CDVWebViewUIDelegate.h               |  35 ------
 CordovaLib/CDVWebViewUIDelegate.m               | 126 -------------------
 CordovaLib/Classes/CDVWebViewUIDelegate.h       |  35 ++++++
 CordovaLib/Classes/CDVWebViewUIDelegate.m       | 126 +++++++++++++++++++
 CordovaLib/CordovaLib.xcodeproj/project.pbxproj |   4 +-
 5 files changed, 163 insertions(+), 163 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/4c0556bd/CordovaLib/CDVWebViewUIDelegate.h
----------------------------------------------------------------------
diff --git a/CordovaLib/CDVWebViewUIDelegate.h b/CordovaLib/CDVWebViewUIDelegate.h
deleted file mode 100644
index 9ff2ac1..0000000
--- a/CordovaLib/CDVWebViewUIDelegate.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements.  See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership.  The ASF licenses this file
- to you 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 <Foundation/Foundation.h>
-
-#ifdef __IPHONE_8_0
-    #import <WebKit/WebKit.h>
-#endif
-
-@interface CDVWebViewUIDelegate : NSObject
-#ifdef __IPHONE_8_0
-                                      <WKUIDelegate>
-#endif
-
-@property (nonatomic, copy) NSString* title;
-
-- (instancetype)initWithTitle:(NSString*)title;
-
-@end

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/4c0556bd/CordovaLib/CDVWebViewUIDelegate.m
----------------------------------------------------------------------
diff --git a/CordovaLib/CDVWebViewUIDelegate.m b/CordovaLib/CDVWebViewUIDelegate.m
deleted file mode 100644
index 6f98327..0000000
--- a/CordovaLib/CDVWebViewUIDelegate.m
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements.  See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership.  The ASF licenses this file
- to you 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 __IPHONE_8_0
-
-#import "CDVWebViewUIDelegate.h"
-
-    @implementation CDVWebViewUIDelegate
-
-    - (instancetype)initWithTitle:(NSString*)title
-    {
-        self = [super init];
-        if (self) {
-            self.title = title;
-        }
-
-        return self;
-    }
-
-    - (void)     webView:(WKWebView*)webView runJavaScriptAlertPanelWithMessage:(NSString*)message
-        initiatedByFrame:(WKFrameInfo*)frame completionHandler:(void (^)())completionHandler
-    {
-        UIAlertController* alert = [UIAlertController alertControllerWithTitle:self.title
-                                                                       message:message
-                                                                preferredStyle:UIAlertControllerStyleAlert];
-
-        UIAlertAction* ok = [UIAlertAction actionWithTitle:NSLocalizedString(@"OK", @"OK")
-                                                     style:UIAlertActionStyleDefault
-                                                   handler:^(UIAlertAction* action)
-            {
-                completionHandler();
-                [alert dismissViewControllerAnimated:YES completion:nil];
-            }];
-
-        [alert addAction:ok];
-
-        UIViewController* rootController = [UIApplication sharedApplication].delegate.window.rootViewController;
-
-        [rootController presentViewController:alert animated:YES completion:nil];
-    }
-
-    - (void)     webView:(WKWebView*)webView runJavaScriptConfirmPanelWithMessage:(NSString*)message
-        initiatedByFrame:(WKFrameInfo*)frame completionHandler:(void (^)(BOOL result))completionHandler
-    {
-        UIAlertController* alert = [UIAlertController alertControllerWithTitle:self.title
-                                                                       message:message
-                                                                preferredStyle:UIAlertControllerStyleAlert];
-
-        UIAlertAction* ok = [UIAlertAction actionWithTitle:NSLocalizedString(@"OK", @"OK")
-                                                     style:UIAlertActionStyleDefault
-                                                   handler:^(UIAlertAction* action)
-            {
-                completionHandler(YES);
-                [alert dismissViewControllerAnimated:YES completion:nil];
-            }];
-
-        [alert addAction:ok];
-
-        UIAlertAction* cancel = [UIAlertAction actionWithTitle:NSLocalizedString(@"Cancel", @"Cancel")
-                                                         style:UIAlertActionStyleDefault
-                                                       handler:^(UIAlertAction* action)
-            {
-                completionHandler(NO);
-                [alert dismissViewControllerAnimated:YES completion:nil];
-            }];
-        [alert addAction:cancel];
-
-        UIViewController* rootController = [UIApplication sharedApplication].delegate.window.rootViewController;
-
-        [rootController presentViewController:alert animated:YES completion:nil];
-    }
-
-    - (void)      webView:(WKWebView*)webView runJavaScriptTextInputPanelWithPrompt:(NSString*)prompt
-              defaultText:(NSString*)defaultText initiatedByFrame:(WKFrameInfo*)frame
-        completionHandler:(void (^)(NSString* result))completionHandler
-    {
-        UIAlertController* alert = [UIAlertController alertControllerWithTitle:self.title
-                                                                       message:prompt
-                                                                preferredStyle:UIAlertControllerStyleAlert];
-
-        UIAlertAction* ok = [UIAlertAction actionWithTitle:NSLocalizedString(@"OK", @"OK")
-                                                     style:UIAlertActionStyleDefault
-                                                   handler:^(UIAlertAction* action)
-            {
-                completionHandler(((UITextField*)alert.textFields[0]).text);
-                [alert dismissViewControllerAnimated:YES completion:nil];
-            }];
-
-        [alert addAction:ok];
-
-        UIAlertAction* cancel = [UIAlertAction actionWithTitle:NSLocalizedString(@"Cancel", @"Cancel")
-                                                         style:UIAlertActionStyleDefault
-                                                       handler:^(UIAlertAction* action)
-            {
-                completionHandler(nil);
-                [alert dismissViewControllerAnimated:YES completion:nil];
-            }];
-        [alert addAction:cancel];
-
-        [alert addTextFieldWithConfigurationHandler:^(UITextField* textField) {
-            textField.text = defaultText;
-        }];
-
-        UIViewController* rootController = [UIApplication sharedApplication].delegate.window.rootViewController;
-
-        [rootController presentViewController:alert animated:YES completion:nil];
-    }
-
-    @end
-#endif /* ifdef __IPHONE_8_0 */

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/4c0556bd/CordovaLib/Classes/CDVWebViewUIDelegate.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVWebViewUIDelegate.h b/CordovaLib/Classes/CDVWebViewUIDelegate.h
new file mode 100644
index 0000000..9ff2ac1
--- /dev/null
+++ b/CordovaLib/Classes/CDVWebViewUIDelegate.h
@@ -0,0 +1,35 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you 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 <Foundation/Foundation.h>
+
+#ifdef __IPHONE_8_0
+    #import <WebKit/WebKit.h>
+#endif
+
+@interface CDVWebViewUIDelegate : NSObject
+#ifdef __IPHONE_8_0
+                                      <WKUIDelegate>
+#endif
+
+@property (nonatomic, copy) NSString* title;
+
+- (instancetype)initWithTitle:(NSString*)title;
+
+@end

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/4c0556bd/CordovaLib/Classes/CDVWebViewUIDelegate.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVWebViewUIDelegate.m b/CordovaLib/Classes/CDVWebViewUIDelegate.m
new file mode 100644
index 0000000..6f98327
--- /dev/null
+++ b/CordovaLib/Classes/CDVWebViewUIDelegate.m
@@ -0,0 +1,126 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you 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 __IPHONE_8_0
+
+#import "CDVWebViewUIDelegate.h"
+
+    @implementation CDVWebViewUIDelegate
+
+    - (instancetype)initWithTitle:(NSString*)title
+    {
+        self = [super init];
+        if (self) {
+            self.title = title;
+        }
+
+        return self;
+    }
+
+    - (void)     webView:(WKWebView*)webView runJavaScriptAlertPanelWithMessage:(NSString*)message
+        initiatedByFrame:(WKFrameInfo*)frame completionHandler:(void (^)())completionHandler
+    {
+        UIAlertController* alert = [UIAlertController alertControllerWithTitle:self.title
+                                                                       message:message
+                                                                preferredStyle:UIAlertControllerStyleAlert];
+
+        UIAlertAction* ok = [UIAlertAction actionWithTitle:NSLocalizedString(@"OK", @"OK")
+                                                     style:UIAlertActionStyleDefault
+                                                   handler:^(UIAlertAction* action)
+            {
+                completionHandler();
+                [alert dismissViewControllerAnimated:YES completion:nil];
+            }];
+
+        [alert addAction:ok];
+
+        UIViewController* rootController = [UIApplication sharedApplication].delegate.window.rootViewController;
+
+        [rootController presentViewController:alert animated:YES completion:nil];
+    }
+
+    - (void)     webView:(WKWebView*)webView runJavaScriptConfirmPanelWithMessage:(NSString*)message
+        initiatedByFrame:(WKFrameInfo*)frame completionHandler:(void (^)(BOOL result))completionHandler
+    {
+        UIAlertController* alert = [UIAlertController alertControllerWithTitle:self.title
+                                                                       message:message
+                                                                preferredStyle:UIAlertControllerStyleAlert];
+
+        UIAlertAction* ok = [UIAlertAction actionWithTitle:NSLocalizedString(@"OK", @"OK")
+                                                     style:UIAlertActionStyleDefault
+                                                   handler:^(UIAlertAction* action)
+            {
+                completionHandler(YES);
+                [alert dismissViewControllerAnimated:YES completion:nil];
+            }];
+
+        [alert addAction:ok];
+
+        UIAlertAction* cancel = [UIAlertAction actionWithTitle:NSLocalizedString(@"Cancel", @"Cancel")
+                                                         style:UIAlertActionStyleDefault
+                                                       handler:^(UIAlertAction* action)
+            {
+                completionHandler(NO);
+                [alert dismissViewControllerAnimated:YES completion:nil];
+            }];
+        [alert addAction:cancel];
+
+        UIViewController* rootController = [UIApplication sharedApplication].delegate.window.rootViewController;
+
+        [rootController presentViewController:alert animated:YES completion:nil];
+    }
+
+    - (void)      webView:(WKWebView*)webView runJavaScriptTextInputPanelWithPrompt:(NSString*)prompt
+              defaultText:(NSString*)defaultText initiatedByFrame:(WKFrameInfo*)frame
+        completionHandler:(void (^)(NSString* result))completionHandler
+    {
+        UIAlertController* alert = [UIAlertController alertControllerWithTitle:self.title
+                                                                       message:prompt
+                                                                preferredStyle:UIAlertControllerStyleAlert];
+
+        UIAlertAction* ok = [UIAlertAction actionWithTitle:NSLocalizedString(@"OK", @"OK")
+                                                     style:UIAlertActionStyleDefault
+                                                   handler:^(UIAlertAction* action)
+            {
+                completionHandler(((UITextField*)alert.textFields[0]).text);
+                [alert dismissViewControllerAnimated:YES completion:nil];
+            }];
+
+        [alert addAction:ok];
+
+        UIAlertAction* cancel = [UIAlertAction actionWithTitle:NSLocalizedString(@"Cancel", @"Cancel")
+                                                         style:UIAlertActionStyleDefault
+                                                       handler:^(UIAlertAction* action)
+            {
+                completionHandler(nil);
+                [alert dismissViewControllerAnimated:YES completion:nil];
+            }];
+        [alert addAction:cancel];
+
+        [alert addTextFieldWithConfigurationHandler:^(UITextField* textField) {
+            textField.text = defaultText;
+        }];
+
+        UIViewController* rootController = [UIApplication sharedApplication].delegate.window.rootViewController;
+
+        [rootController presentViewController:alert animated:YES completion:nil];
+    }
+
+    @end
+#endif /* ifdef __IPHONE_8_0 */

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/4c0556bd/CordovaLib/CordovaLib.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --git a/CordovaLib/CordovaLib.xcodeproj/project.pbxproj b/CordovaLib/CordovaLib.xcodeproj/project.pbxproj
index 941fa15..8d43b0b 100644
--- a/CordovaLib/CordovaLib.xcodeproj/project.pbxproj
+++ b/CordovaLib/CordovaLib.xcodeproj/project.pbxproj
@@ -100,8 +100,8 @@
 		68A32D7414103017006B237C /* AddressBook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBook.framework; path = System/Library/Frameworks/AddressBook.framework; sourceTree = SDKROOT; };
 		7E14B5A61705050A0032169E /* CDVTimer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVTimer.h; path = Classes/CDVTimer.h; sourceTree = "<group>"; };
 		7E14B5A71705050A0032169E /* CDVTimer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CDVTimer.m; path = Classes/CDVTimer.m; sourceTree = "<group>"; };
-		7E785B98196F508900ABBDC8 /* CDVWebViewUIDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDVWebViewUIDelegate.h; sourceTree = "<group>"; };
-		7E785B99196F508900ABBDC8 /* CDVWebViewUIDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDVWebViewUIDelegate.m; sourceTree = "<group>"; };
+		7E785B98196F508900ABBDC8 /* CDVWebViewUIDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVWebViewUIDelegate.h; path = Classes/CDVWebViewUIDelegate.h; sourceTree = "<group>"; };
+		7E785B99196F508900ABBDC8 /* CDVWebViewUIDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CDVWebViewUIDelegate.m; path = Classes/CDVWebViewUIDelegate.m; sourceTree = "<group>"; };
 		7EE9ECF619525D24004CA6B9 /* CDVWebViewPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVWebViewPreferences.h; path = Classes/CDVWebViewPreferences.h; sourceTree = "<group>"; };
 		7E22B88419E4C0210026F95E /* CDVAvailabilityDeprecated.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVAvailabilityDeprecated.h; path = Classes/CDVAvailabilityDeprecated.h; sourceTree = "<group>"; };
 		7EE9ECF719525D24004CA6B9 /* CDVWebViewPreferences.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CDVWebViewPreferences.m; path = Classes/CDVWebViewPreferences.m; sourceTree = "<group>"; };


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[50/50] ios commit: Merge branch 'wkwebview' of https://git-wip-us.apache.org/repos/asf/cordova-ios into wkwebview

Posted by sh...@apache.org.
Merge branch 'wkwebview' of https://git-wip-us.apache.org/repos/asf/cordova-ios into wkwebview

Conflicts:
	CordovaLib/Classes/CDVCommandDelegateImpl.m
	CordovaLib/Classes/CDVViewController.m
	CordovaLib/CordovaLib.xcodeproj/project.pbxproj
	CordovaLib/cordova.js
	bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/f13ba3a4
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/f13ba3a4
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/f13ba3a4

Branch: refs/heads/wkwebview
Commit: f13ba3a49405db39cb2856fe10804eee8b6a835e
Parents: 1a7dbfa 2a38ad2
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 31 16:39:10 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 31 16:39:10 2014 -0700

----------------------------------------------------------------------
 CordovaLib/cordova.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f13ba3a4/CordovaLib/cordova.js
----------------------------------------------------------------------
diff --cc CordovaLib/cordova.js
index 36dfa1b,2470044..41db627
--- a/CordovaLib/cordova.js
+++ b/CordovaLib/cordova.js
@@@ -928,10 -925,10 +928,10 @@@ function iOSExec() 
          if (navigator.userAgent) {
              bridgeMode = navigator.userAgent.indexOf(' 5_') == -1 ? jsToNativeModes.IFRAME_NAV: jsToNativeModes.XHR_NO_PAYLOAD;
  		} else {
 -            bridgeMode = jsToNativeModes.IFRAME_NAV;
 +        bridgeMode = jsToNativeModes.IFRAME_NAV;
          }
      }
- 
+ 	
      if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.cordova && window.webkit.messageHandlers.cordova.postMessage) {
          bridgeMode = jsToNativeModes.WK_WEBVIEW_BINDING;
      }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[07/50] ios commit: CB-7775 - Add component.json for component and duo package managers (closes #102)

Posted by sh...@apache.org.
CB-7775 - Add component.json for component and duo package managers (closes #102)

- This allows cordova-ios to be compatible with `component(1)` and `duo(1)`

Signed-off-by: Shazron Abdullah <sh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/875f5a4b
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/875f5a4b
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/875f5a4b

Branch: refs/heads/wkwebview
Commit: 875f5a4bb8aba38c8e78a6989fe62a9c87047b6f
Parents: fb66b91
Author: Sankar Gorthi <sb...@gmail.com>
Authored: Mon Sep 8 22:40:26 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Mon Oct 13 13:41:37 2014 -0700

----------------------------------------------------------------------
 component.json | 10 ++++++++++
 1 file changed, 10 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/875f5a4b/component.json
----------------------------------------------------------------------
diff --git a/component.json b/component.json
new file mode 100644
index 0000000..53def41
--- /dev/null
+++ b/component.json
@@ -0,0 +1,10 @@
+{
+  "name": "cordova-ios",
+  "version": "3.7.0-dev",
+  "repository": "apache/cordova-ios",
+  "main": "CordovaLib/cordova.js",
+  "scripts": [
+    "CordovaLib/cordova.js"
+  ],
+  "license": "Apache Version 2.0"
+}


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[43/50] ios commit: CB-6884 - Support new Cordova bridge under iOS 8 WKWebView (typo fix)

Posted by sh...@apache.org.
CB-6884 - Support new Cordova bridge under iOS 8 WKWebView (typo fix)


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/f6d89c6a
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/f6d89c6a
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/f6d89c6a

Branch: refs/heads/wkwebview
Commit: f6d89c6a9474c194ce9f9d8b86fda652f1c7503f
Parents: 1c1e9c3
Author: Shazron Abdullah <sh...@apache.org>
Authored: Wed Aug 13 23:33:44 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 31 15:37:43 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVViewController.m | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f6d89c6a/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index 4f81e92..79d16b8 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -462,7 +462,7 @@
 
             // scriptMessageHandler is the object that conforms to the WKScriptMessageHandler protocol
             // see https://developer.apple.com/library/prerelease/ios/documentation/WebKit/Reference/WKScriptMessageHandler_Ref/index.html#//apple_ref/swift/intf/WKScriptMessageHandler
-            if ([_commandDelegate conformsToProtocol:@protocol(WKScriptMessageHandler)]) {
+            if ([self conformsToProtocol:@protocol(WKScriptMessageHandler)]) {
                 [userContentController addScriptMessageHandler:self name:@"cordova"];
             }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[14/50] ios commit: CB-7812 - cordova-ios xcode unit-tests are failing from npm test, in Xcode it is fine

Posted by sh...@apache.org.
CB-7812 - cordova-ios xcode unit-tests are failing from npm test, in Xcode it is fine


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/3058347d
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/3058347d
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/3058347d

Branch: refs/heads/wkwebview
Commit: 3058347d4d52c9ae8ca21c95efb9b083fbbd19ec
Parents: 45b4a85
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Oct 16 19:20:18 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Oct 16 19:20:18 2014 -0700

----------------------------------------------------------------------
 tests/spec/cordovalib.spec.js | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/3058347d/tests/spec/cordovalib.spec.js
----------------------------------------------------------------------
diff --git a/tests/spec/cordovalib.spec.js b/tests/spec/cordovalib.spec.js
index f1236ff..dc581ff 100644
--- a/tests/spec/cordovalib.spec.js
+++ b/tests/spec/cordovalib.spec.js
@@ -23,6 +23,7 @@ var shell = require('shelljs'),
     util = require('util');
     
     var tests_dir = path.join(spec, '..');
+    var artifacts_dir = path.join(spec, '..', 'CordovaLibTests', 'build');
     
 describe('cordova-lib', function() {
 
@@ -42,7 +43,7 @@ describe('cordova-lib', function() {
         }
         
         // run the tests
-        command = util.format('xcodebuild test -workspace %s/cordova-ios.xcworkspace -scheme CordovaLibTests -destination "platform=iOS Simulator,name=iPhone 5"', tests_dir);
+        command = util.format('xcodebuild test -workspace %s/cordova-ios.xcworkspace -scheme CordovaLibTests -destination "platform=iOS Simulator,name=iPhone 5" CONFIGURATION_BUILD_DIR="%s"', tests_dir, artifacts_dir);
         shell.echo(command);
         return_code = shell.exec(command).code;
         expect(return_code).toBe(0);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[11/50] ios commit: CB-7735 Update cordova.js snapshot with the bridge fix

Posted by sh...@apache.org.
CB-7735 Update cordova.js snapshot with the bridge fix


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/24e3ba6c
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/24e3ba6c
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/24e3ba6c

Branch: refs/heads/wkwebview
Commit: 24e3ba6c0f56a9c68033b034534eeaa9141b0e29
Parents: c4ece0e
Author: Andrew Grieve <ag...@chromium.org>
Authored: Tue Oct 14 16:43:30 2014 -0400
Committer: Andrew Grieve <ag...@chromium.org>
Committed: Tue Oct 14 16:43:30 2014 -0400

----------------------------------------------------------------------
 CordovaLib/cordova.js | 32 +++++++++++++++++++++++++-------
 1 file changed, 25 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/24e3ba6c/CordovaLib/cordova.js
----------------------------------------------------------------------
diff --git a/CordovaLib/cordova.js b/CordovaLib/cordova.js
index 963dfe6..7889955 100644
--- a/CordovaLib/cordova.js
+++ b/CordovaLib/cordova.js
@@ -1,5 +1,5 @@
 // Platform: ios
-// d9e2a1c2401b986b5af09ecd6b4be60df2cbf131
+// 94291706945c42fd47fa632ed30f5eb811080e95
 /*
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
@@ -840,15 +840,20 @@ var cordova = require('cordova'),
     commandQueue = [], // Contains pending JS->Native messages.
     isInContextOfEvalJs = 0;
 
-function createExecIframe() {
+function createExecIframe(src, unloadListener) {
     var iframe = document.createElement("iframe");
     iframe.style.display = 'none';
+    // Both the unload listener and the src must be set before adding the iframe
+    // to the document in order to avoid race conditions. Callbacks from native
+    // can happen within the appendChild() call!
+    iframe.onunload = unloadListener;
+    iframe.src = src;
     document.body.appendChild(iframe);
     return iframe;
 }
 
 function createHashIframe() {
-    var ret = createExecIframe();
+    var ret = createExecIframe('about:blank');
     // Hash changes don't work on about:blank, so switch it to file:///.
     ret.contentWindow.history.replaceState(null, null, 'file:///#');
     return ret;
@@ -1021,6 +1026,11 @@ function pokeNativeViaXhr() {
     execXhr.send(null);
 }
 
+function onIframeUnload() {
+    execIframe = null;
+    setTimeout(pokeNativeViaIframe, 0);
+}
+
 function pokeNativeViaIframe() {
     // CB-5488 - Don't attempt to create iframe before document.body is available.
     if (!document.body) {
@@ -1028,6 +1038,7 @@ function pokeNativeViaIframe() {
         return;
     }
     if (bridgeMode === jsToNativeModes.IFRAME_HASH_NO_PAYLOAD || bridgeMode === jsToNativeModes.IFRAME_HASH_WITH_PAYLOAD) {
+        // TODO: This bridge mode doesn't properly support being removed from the DOM (CB-7735)
         execHashIframe = execHashIframe || createHashIframe();
         // Check if they've removed it from the DOM, and put it back if so.
         if (!execHashIframe.contentWindow) {
@@ -1041,12 +1052,15 @@ function pokeNativeViaIframe() {
         }
         execHashIframe.contentWindow.location.hash = hashValue;
     } else {
-        execIframe = execIframe || createExecIframe();
         // Check if they've removed it from the DOM, and put it back if so.
-        if (!execIframe.contentWindow) {
-            execIframe = createExecIframe();
+        if (execIframe && execIframe.contentWindow) {
+            // Listen for unload, since it can happen (CB-7735) that the iframe gets
+            // removed from the DOM before it gets a chance to poke the native side.
+            execIframe.contentWindow.onunload = onIframeUnload;
+            execIframe.src = 'gap://ready';
+        } else {
+            execIframe = createExecIframe('gap://ready', onIframeUnload);
         }
-        execIframe.src = "gap://ready";
     }
 }
 
@@ -1064,6 +1078,10 @@ iOSExec.setJsToNativeBridgeMode = function(mode) {
 };
 
 iOSExec.nativeFetchMessages = function() {
+    // Stop listing for window detatch once native side confirms poke.
+    if (execIframe && execIframe.contentWindow) {
+        execIframe.contentWindow.onunload = null;
+    }
     // Each entry in commandQueue is a JSON string already.
     if (!commandQueue.length) {
         return '';


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[39/50] ios commit: Set VERSION to 3.8.0-dev (via coho)

Posted by sh...@apache.org.
Set VERSION to 3.8.0-dev (via coho)


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/b798680a
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/b798680a
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/b798680a

Branch: refs/heads/wkwebview
Commit: b798680ab8e2bfe84436c3f8996dacee4067b6d0
Parents: 753d06c
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Oct 30 11:34:53 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Oct 30 11:34:53 2014 -0700

----------------------------------------------------------------------
 CordovaLib/VERSION                    | 2 +-
 bin/templates/scripts/cordova/version | 2 +-
 package.json                          | 9 ++++-----
 3 files changed, 6 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/b798680a/CordovaLib/VERSION
----------------------------------------------------------------------
diff --git a/CordovaLib/VERSION b/CordovaLib/VERSION
index a4ce38e..d4da33b 100644
--- a/CordovaLib/VERSION
+++ b/CordovaLib/VERSION
@@ -1 +1 @@
-3.7.0-dev
+3.8.0-dev

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/b798680a/bin/templates/scripts/cordova/version
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/version b/bin/templates/scripts/cordova/version
index 1f5d364..c2dcab0 100755
--- a/bin/templates/scripts/cordova/version
+++ b/bin/templates/scripts/cordova/version
@@ -24,6 +24,6 @@
 # Note: it does not work if the --shared option was used to create the project.
 #
 
-VERSION="3.7.0-dev"
+VERSION="3.8.0-dev"
 
 echo $VERSION 

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/b798680a/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
index bcd6ddd..1714e4d 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
     "name": "cordova-ios",
-    "version": "3.7.0-dev",
+    "version": "3.8.0-dev",
     "description": "cordova-ios release",
     "main": "bin/create",
     "repository": {
@@ -12,10 +12,9 @@
         "cordova",
         "apache"
     ],
-    "scripts" : {
-        "test" : "npm run jasmine",
-        "jasmine" : "jasmine-node --captureExceptions --color tests/spec"
-        
+    "scripts": {
+        "test": "npm run jasmine",
+        "jasmine": "jasmine-node --captureExceptions --color tests/spec"
     },
     "author": "Apache Software Foundation",
     "license": "Apache Version 2.0",


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[04/50] ios commit: Updated .gitignore to ignore node_modules

Posted by sh...@apache.org.
Updated .gitignore to ignore node_modules


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/e3c0d36f
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/e3c0d36f
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/e3c0d36f

Branch: refs/heads/wkwebview
Commit: e3c0d36fbd6236977d6d22f93e18db5a08f40b32
Parents: 8d03b08
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 10 15:52:05 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 10 15:52:05 2014 -0700

----------------------------------------------------------------------
 .gitignore | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/e3c0d36f/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index 0f4014c..7c9f41e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@ tmp
 *.pbxuser
 xcuserdata
 console.log
+node_modules
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[17/50] ios commit: CB-7729 - Support ios-sim 3.0 (Xcode 6) and new targets (iPhone 6/6+) (closes #107)

Posted by sh...@apache.org.
CB-7729 - Support ios-sim 3.0 (Xcode 6) and new targets (iPhone 6/6+) (closes #107)

Signed-off-by: Shazron Abdullah <sh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/307a00b3
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/307a00b3
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/307a00b3

Branch: refs/heads/wkwebview
Commit: 307a00b310955c3a7e5147b50c336b9389348b40
Parents: d72a48a
Author: aharbick@aharbick.com <ah...@aharbick.com>
Authored: Thu Sep 25 15:09:22 2014 -0400
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 15:25:03 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/emulate           |  4 +-
 .../scripts/cordova/lib/install-emulator        | 50 +++++--------------
 bin/templates/scripts/cordova/run               | 52 ++++++--------------
 3 files changed, 30 insertions(+), 76 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/307a00b3/bin/templates/scripts/cordova/emulate
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/emulate b/bin/templates/scripts/cordova/emulate
index 241cbb6..638e650 100755
--- a/bin/templates/scripts/cordova/emulate
+++ b/bin/templates/scripts/cordova/emulate
@@ -29,7 +29,7 @@ source "$CORDOVA_PATH/check_reqs"
 
 APP_PATH=${1:-$PROJECT_PATH/build/emulator/$(xcodebuild -project "$PROJECT_PATH/$PROJECT_NAME.xcodeproj" -arch i386 -target "$PROJECT_NAME" -configuration Debug -sdk $SDK -showBuildSettings | grep FULL_PRODUCT_NAME | awk -F ' = ' '{print $2}')}
 
-DEVICE_FAMILY=${2:-${DEVICE_FAMILY:-iphone}}
+TARGET=${2:-${TARGET:-iPhone-6}}
 
 IOS_SIM_MIN_VERSION="1.7"
 IOS_SIM_LOCATION=$(which ios-sim)
@@ -56,4 +56,4 @@ if [ ! -d "$APP_PATH" ]; then
 fi
 
 # launch using ios-sim
-ios-sim launch "$APP_PATH" --family "$DEVICE_FAMILY" --stderr "$CORDOVA_PATH/console.log" --stdout "$CORDOVA_PATH/console.log" --exit
+ios-sim launch "$APP_PATH" --devicetypeid "com.apple.CoreSimulator.SimDeviceType.$TARGET" --stderr "$CORDOVA_PATH/console.log" --stdout "$CORDOVA_PATH/console.log" --exit

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/307a00b3/bin/templates/scripts/cordova/lib/install-emulator
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/install-emulator b/bin/templates/scripts/cordova/lib/install-emulator
index ae2c47a..e916660 100755
--- a/bin/templates/scripts/cordova/lib/install-emulator
+++ b/bin/templates/scripts/cordova/lib/install-emulator
@@ -17,16 +17,20 @@
 # specific language governing permissions and limitations
 # under the License.
 #
-# Valid values for "--target" (case insensitive):
-#     "iPhone (Retina 3.5-inch)" (default)
-#     "iPhone (Retina 4-inch)"
-#     "iPhone"
-#     "iPad"
-#     "iPad (Retina)"
+# Valid values for "--target" (case sensitive):
+#   iPhone-4s
+#   iPhone-5
+#   iPhone-5s
+#   iPhone-6-Plus
+#   iPhone-6
+#   iPad-2
+#   iPad-Retina
+#   iPad-Air
+#   Resizable-iPhone
+#   Resizable-iPad
 
 OPTION_RESULT=()
-TARGET="iPhone (Retina 3.5-inch)"
-TARGET_FLAG='--family iphone --retina'
+TARGET="iPhone-6"
 
 # separates "key=value", sets an array with 0th index as key, 1st index as value
 _parseOption() 
@@ -60,32 +64,6 @@ _parseArgs()
 
 _parseArgs "$@"
 
-# lowercase the target string
-TARGET_LC=`echo $TARGET | tr '[:upper:]' '[:lower:]'` 
-
-# remember the comparison is lowercase
-case "$TARGET_LC" in
-  	"iphone (retina 3.5-inch)")
-    TARGET_FLAG="--family iphone --retina"
-    ;;
-    "iphone (retina 4-inch)")
-    TARGET_FLAG="--family iphone --retina --tall"
-    ;;
-    # --64bit not supportted by ios-sim yet
-    #"iphone retina (4-inch 64-bit)")
-    #TARGET_FLAG="--family iphone --retina --tall --64bit"
-    #;;
-    "iphone")
-    TARGET_FLAG="--family iphone"
-    ;;
-    "ipad")
-    TARGET_FLAG="--family ipad"
-    ;;
-    "ipad (retina)")
-    TARGET_FLAG="--family ipad --retina"
-    ;;
-esac
-
 LIB_PATH=$( cd "$( dirname "$0" )" && pwd -P)
 CORDOVA_PATH="$(dirname "$LIB_PATH")"
 PROJECT_PATH="$(dirname "$CORDOVA_PATH")"
@@ -121,6 +99,4 @@ if [[ "$IOS_SIM_VERSION" < "$IOS_SIM_MIN_VERSION" ]]; then
 fi
 
 # launch using ios-sim
-ios-sim launch "$SIMULATOR_APP_PATH" --stderr "$CORDOVA_PATH/console.log" --stdout "$CORDOVA_PATH/console.log" $TARGET_FLAG --exit
-
-
+ios-sim launch "$SIMULATOR_APP_PATH" --stderr "$CORDOVA_PATH/console.log" --stdout "$CORDOVA_PATH/console.log" --devicetypeid $TARGET --exit

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/307a00b3/bin/templates/scripts/cordova/run
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/run b/bin/templates/scripts/cordova/run
index e497aac..b4d45d0 100755
--- a/bin/templates/scripts/cordova/run
+++ b/bin/templates/scripts/cordova/run
@@ -17,16 +17,22 @@
 # specific language governing permissions and limitations
 # under the License.
 #
-# Valid values for "--target" (case insensitive):
-#     "iPhone (Retina 3.5-inch)" (default)
-#     "iPhone (Retina 4-inch)"
-#     "iPhone"
-#     "iPad"
-#     "iPad (Retina)"
+# Valid values for "--target" (case sensitive):
+#   iPhone-4s
+#   iPhone-5
+#   iPhone-5s
+#   iPhone-6-Plus
+#   iPhone-6
+#   iPad-2
+#   iPad-Retina
+#   iPad-Air
+#   Resizable-iPhone
+#   Resizable-iPad
+
 
 OPTION_RESULT=()
-TARGET="iPhone (Retina 3.5-inch)"
-TARGET_FLAG='--family iphone --retina'
+TARGET="iPhone-6"
+
 # multi-device flow default
 USE_DEVICE=true
 USE_SIMULATOR=false
@@ -71,34 +77,6 @@ _parseArgs()
 
 _parseArgs "$@"
 
-# "iPhone (Retina 3.5-inch)" -> --family iphone --retina
-# "iPhone (Retina 4-inch)" -> --family iphone --retina --tall
-# "iPhone" -> --family iphone
-# "iPad" -> --family ipad
-# "iPad (Retina)" -> --family ipad --retina
-
-# lowercase the target string
-TARGET_LC=`echo $TARGET | tr '[:upper:]' '[:lower:]'`
-
-# remember the comparison is lowercase
-case "$TARGET_LC" in
-  "iphone (retina 3.5-inch)")
-    TARGET_FLAG="--family iphone --retina"
-    ;;
-    "iphone (retina 4-inch)")
-    TARGET_FLAG="--family iphone --retina --tall"
-    ;;
-    "iphone")
-    TARGET_FLAG="--family iphone"
-    ;;
-    "ipad")
-    TARGET_FLAG="--family ipad"
-    ;;
-    "ipad (retina)")
-    TARGET_FLAG="--family ipad --retina"
-    ;;
-esac
-
 CORDOVA_PATH=$( cd "$( dirname "$0" )" && pwd -P)
 PROJECT_PATH="$(dirname "$CORDOVA_PATH")"
 XCODEPROJ=$( ls "$PROJECT_PATH" | grep .xcodeproj  )
@@ -154,6 +132,6 @@ if "$USE_SIMULATOR"; then
     
     # launch using ios-sim
     "$CORDOVA_PATH/build" --emulator || exit $?
-    ios-sim launch "$SIMULATOR_APP_PATH" --stderr "$CORDOVA_PATH/console.log" --stdout "$CORDOVA_PATH/console.log" $TARGET_FLAG --exit
+    ios-sim launch "$SIMULATOR_APP_PATH" --stderr "$CORDOVA_PATH/console.log" --stdout "$CORDOVA_PATH/console.log" --devicetypeid com.apple.CoreSimulator.SimDeviceType.$TARGET --exit
 fi
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[03/50] ios commit: Created jasmine tests, removed old tests.

Posted by sh...@apache.org.
Created jasmine tests, removed old tests.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/8d03b08c
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/8d03b08c
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/8d03b08c

Branch: refs/heads/wkwebview
Commit: 8d03b08c9677b8e59502514187c3544bfb9fc20a
Parents: cad22c3
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 10 15:51:25 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 10 15:51:25 2014 -0700

----------------------------------------------------------------------
 package.json                  |   5 +-
 tests/README.md               |  19 -------
 tests/package.json            |  14 -----
 tests/spec/cordovalib.spec.js |  50 +++++++++++++++++
 tests/spec/create.spec.js     | 106 +++++++++++++++++++++++++++++++++++++
 5 files changed, 160 insertions(+), 34 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8d03b08c/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
index f2a2345..bcd6ddd 100644
--- a/package.json
+++ b/package.json
@@ -13,11 +13,14 @@
         "apache"
     ],
     "scripts" : {
-        "test" : "cd tests && npm test"
+        "test" : "npm run jasmine",
+        "jasmine" : "jasmine-node --captureExceptions --color tests/spec"
+        
     },
     "author": "Apache Software Foundation",
     "license": "Apache Version 2.0",
     "dependencies": {
+        "jasmine-node": "~1",
         "shelljs": "^0.2.6",
         "coffee-script": "^1.7.1",
         "nodeunit": "^0.8.7"

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8d03b08c/tests/README.md
----------------------------------------------------------------------
diff --git a/tests/README.md b/tests/README.md
deleted file mode 100644
index 18018d2..0000000
--- a/tests/README.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# Tests for cordova-ios
-
-You need to install `node.js` to run npm test
-
-
-# Testing from Xcode
-
-1. Launch the `cordova-ios.xcworkspace` file.
-2. Choose "CordovaLibTests" from the scheme drop-down menu
-3. Click and hold on the `Play` button, and choose the `Wrench` icon to run the tests
-
-
-# Testing from the command line
-
-    npm test
-
-OR
-
-    killall 'iOS Simulator' && xcodebuild test -scheme CordovaLibTests -destination 'platform=iOS Simulator,name=iPhone 5'

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8d03b08c/tests/package.json
----------------------------------------------------------------------
diff --git a/tests/package.json b/tests/package.json
deleted file mode 100644
index e84b485..0000000
--- a/tests/package.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-    "name": "cordova-ios-tests",
-    "version": "1.0.0",
-    "description": "Tests for cordova-ios",
-    "author": "Apache Software Foundation",
-    "license": "Apache Version 2.0",
-    "dependencies": {
-    },
-    "scripts": {
-        "test": "npm run cordovalib-test && npm run create-project-unicode-space-in-path",
-        "cordovalib-test" : "killall 'iOS Simulator' && xcodebuild test -scheme CordovaLibTests -destination 'platform=iOS Simulator,name=iPhone 5'",
-        "create-project-unicode-space-in-path" : "rm -rf \"testcreate 応用\"; ../bin/create \"testcreate 応用\" com.test.app 応用 && \"./testcreate 応用/cordova/build\" && rm -rf \"testcreate 応用\""
-    }    
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8d03b08c/tests/spec/cordovalib.spec.js
----------------------------------------------------------------------
diff --git a/tests/spec/cordovalib.spec.js b/tests/spec/cordovalib.spec.js
new file mode 100644
index 0000000..f1236ff
--- /dev/null
+++ b/tests/spec/cordovalib.spec.js
@@ -0,0 +1,50 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you 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.
+ */
+
+var shell = require('shelljs'),
+    spec = __dirname,
+    path = require('path'),
+    util = require('util');
+    
+    var tests_dir = path.join(spec, '..');
+    
+describe('cordova-lib', function() {
+
+    it('objective-c unit tests', function() {
+        var return_code = 0;
+        var command;
+    
+        // check iOS Simulator if running
+        command = 'pgrep "iOS Simulator"';
+        return_code = shell.exec(command).code;
+        
+        // if iOS Simulator is running, kill it
+        if (return_code == 0) { // found
+            shell.echo('iOS Simulator is running, we\'re going to kill it.');
+            return_code = shell.exec('killall "iOS Simulator"').code;
+            expect(return_code).toBe(0);
+        }
+        
+        // run the tests
+        command = util.format('xcodebuild test -workspace %s/cordova-ios.xcworkspace -scheme CordovaLibTests -destination "platform=iOS Simulator,name=iPhone 5"', tests_dir);
+        shell.echo(command);
+        return_code = shell.exec(command).code;
+        expect(return_code).toBe(0);
+    });
+});
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/8d03b08c/tests/spec/create.spec.js
----------------------------------------------------------------------
diff --git a/tests/spec/create.spec.js b/tests/spec/create.spec.js
new file mode 100644
index 0000000..e25440a
--- /dev/null
+++ b/tests/spec/create.spec.js
@@ -0,0 +1,106 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you 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.
+ */
+
+var shell = require('shelljs'),
+    spec = __dirname,
+    path = require('path'),
+    util = require('util');
+    
+    var cordova_bin = path.join(spec, '../..', 'bin');
+    var tmp = path.join(spec, '..', 'tmp');
+    
+function createAndBuild(projectname, projectid) {
+    var return_code = 0;
+    var command;
+    
+    // create tmp folder if necessary
+    shell.mkdir('-p', tmp);
+    
+    // remove existing folder
+    command =  path.join(tmp, projectname);
+    shell.rm('-rf', command);
+
+    // create the project
+    command = util.format('"%s/create" "%s/%s" %s "%s"', cordova_bin, tmp, projectname, projectid, projectname);
+    shell.echo(command);
+    return_code = shell.exec(command).code;
+    expect(return_code).toBe(0);
+    
+    // build the project
+    command = util.format('"%s/cordova/build"', path.join(tmp, projectname));
+    shell.echo(command);
+    return_code = shell.exec(command).code;
+    expect(return_code).toBe(0);
+
+    // clean-up
+    command =  path.join(tmp, projectname);
+    shell.rm('-rf', command);
+}    
+
+    
+describe('create', function() {
+
+    it('create project with ascii name, no spaces', function() {
+        var projectname = 'testcreate';
+        var projectid = 'com.test.app1';
+
+        createAndBuild(projectname, projectid);
+    });
+    
+    it('create project with ascii name, and spaces', function() {
+        var projectname = 'test create';
+        var projectid = 'com.test.app2';
+
+        createAndBuild(projectname, projectid);
+    });
+
+    it('create project with unicode name, no spaces', function() {
+        var projectname = '応応応応用用用用';
+        var projectid = 'com.test.app3';
+
+        createAndBuild(projectname, projectid);
+    });
+
+    it('create project with unicode name, and spaces', function() {
+        var projectname = '応応応応 用用用用';
+        var projectid = 'com.test.app4';
+
+        createAndBuild(projectname, projectid);
+    });
+    
+    it('create project with ascii+unicode name, no spaces', function() {
+        var projectname = '応応応応hello用用用用';
+        var projectid = 'com.test.app5';
+
+        createAndBuild(projectname, projectid);
+    });
+
+    it('create project with ascii+unicode name, and spaces', function() {
+        var projectname = '応応応応 hello 用用用用';
+        var projectid = 'com.test.app6';
+
+        createAndBuild(projectname, projectid);
+    });
+    
+    // clean-up last
+    it('cleanup tmp folder', function() {
+        shell.rm('-rf', tmp);
+    });
+
+});
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[16/50] ios commit: CB-7813 - Added unit test

Posted by sh...@apache.org.
CB-7813 - Added unit test


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/d72a48ac
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/d72a48ac
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/d72a48ac

Branch: refs/heads/wkwebview
Commit: d72a48acd0b9455ece519419f0cbc538a8af808c
Parents: 5de0f3f
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 17 15:15:43 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 15:15:43 2014 -0700

----------------------------------------------------------------------
 tests/CordovaLibTests/CDVWebViewDelegateTests.m | 35 ++++++++++++++++++++
 1 file changed, 35 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/d72a48ac/tests/CordovaLibTests/CDVWebViewDelegateTests.m
----------------------------------------------------------------------
diff --git a/tests/CordovaLibTests/CDVWebViewDelegateTests.m b/tests/CordovaLibTests/CDVWebViewDelegateTests.m
index 7edd189..3413638 100644
--- a/tests/CordovaLibTests/CDVWebViewDelegateTests.m
+++ b/tests/CordovaLibTests/CDVWebViewDelegateTests.m
@@ -21,6 +21,27 @@
 
 #import <Cordova/CDVWebViewDelegate.h>
 
+@interface CDVWebViewDelegate2 : CDVWebViewDelegate {}
+
+- (void)setState:(NSInteger)state;
+- (NSInteger)state;
+
+@end
+
+@implementation  CDVWebViewDelegate2
+
+- (void)setState:(NSInteger)state
+{
+    _state = state;
+}
+
+- (NSInteger)state
+{
+    return _state;
+}
+
+@end
+
 @interface CDVWebViewDelegate ()
 
 // expose private interface
@@ -43,6 +64,20 @@
     [super tearDown];
 }
 
+- (void)testFailLoadStateCancelled
+{
+    NSInteger initialState = 1; // STATE_WAITING_FOR_LOAD_START;
+    NSInteger expectedState = 5; // STATE_CANCELLED;
+    NSError* errorCancelled = [NSError errorWithDomain:NSCocoaErrorDomain code:NSURLErrorCancelled userInfo:nil];
+
+    CDVWebViewDelegate2* wvd = [[CDVWebViewDelegate2 alloc] initWithDelegate:nil]; // not really testing delegate handling
+
+    wvd.state = initialState;
+    [wvd webView:nil didFailLoadWithError:errorCancelled];
+
+    XCTAssertTrue(wvd.state == expectedState, @"If the load error was through an iframe redirect (NSURLErrorCancelled), the state should be STATE_CANCELLED");
+}
+
 - (void)testShouldLoadRequest
 {
     CDVWebViewDelegate* wvd = [[CDVWebViewDelegate alloc] initWithDelegate:nil]; // not really testing delegate handling


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[22/50] ios commit: Remove non-working applescript to start emulator, use Instruments to start iOS Simulator now.

Posted by sh...@apache.org.
Remove non-working applescript to start emulator, use Instruments to start iOS Simulator now.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/21f2749c
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/21f2749c
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/21f2749c

Branch: refs/heads/wkwebview
Commit: 21f2749c56794b4d33724c14cba89eba1b1d8031
Parents: b53d21a
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 17 16:36:05 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 16:36:05 2014 -0700

----------------------------------------------------------------------
 .../scripts/cordova/lib/sim.applescript         | 31 --------------------
 .../scripts/cordova/lib/start-emulator          |  7 +++--
 2 files changed, 4 insertions(+), 34 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/21f2749c/bin/templates/scripts/cordova/lib/sim.applescript
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/sim.applescript b/bin/templates/scripts/cordova/lib/sim.applescript
deleted file mode 100755
index 8425625..0000000
--- a/bin/templates/scripts/cordova/lib/sim.applescript
+++ /dev/null
@@ -1,31 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you 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.
-
-tell application "System Events"
-	set UI elements enabled to true
-end tell
-
-tell application "iPhone Simulator"
-    activate
-end tell
-
-tell application "System Events"
-    tell process "iPhone Simulator"
-    click menu item "$DEVICE_NAME" of menu 1 of menu item "Device" of menu 1 of menu bar item "Hardware" of menu bar 1
-    click menu item "Home" of menu 1 of menu bar item "Hardware" of menu bar 1
-    end tell
-end tell

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/21f2749c/bin/templates/scripts/cordova/lib/start-emulator
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/start-emulator b/bin/templates/scripts/cordova/lib/start-emulator
index 7e6885f..c300bb3 100755
--- a/bin/templates/scripts/cordova/lib/start-emulator
+++ b/bin/templates/scripts/cordova/lib/start-emulator
@@ -17,13 +17,14 @@
 # specific language governing permissions and limitations
 # under the License.
 #
+# Run the below to get the device targets:
+#     xcrun instruments -s
 
 set -e
 
 
-DEFAULT_TARGET="iPhone Retina (3.5-inch)"
+DEFAULT_TARGET="iPhone 5s"
 TARGET=${1:-$DEFAULT_TARGET}
 LIB_PATH=$( cd "$( dirname "$0" )" && pwd -P)
 
-SCPT=`sed -e "s/\\$DEVICE_NAME/$TARGET/g" "$LIB_PATH/sim.applescript"`
-osascript -e "$SCPT"
+xcrun instruments -w "$TARGET"
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[23/50] ios commit: Fix cordova/lib/list-started-emulators for Xcode 6

Posted by sh...@apache.org.
Fix cordova/lib/list-started-emulators for Xcode 6


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/442606a1
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/442606a1
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/442606a1

Branch: refs/heads/wkwebview
Commit: 442606a194a1bbf54a755614500a4179bf7a59c3
Parents: 21f2749
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 17 16:37:29 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 16:37:29 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/lib/list-started-emulators | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/442606a1/bin/templates/scripts/cordova/lib/list-started-emulators
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/list-started-emulators b/bin/templates/scripts/cordova/lib/list-started-emulators
index ccdb1a7..badab2c 100755
--- a/bin/templates/scripts/cordova/lib/list-started-emulators
+++ b/bin/templates/scripts/cordova/lib/list-started-emulators
@@ -20,7 +20,7 @@
 
 set -e
 
-SIM_RUNNING=$(ps aux | grep -i "[i]Phone Simulator" | wc -l)
+SIM_RUNNING=$(ps aux | grep -i "[i]OS Simulator" | wc -l)
 if [ $SIM_RUNNING == 0 ]; then
     echo "No emulators are running."
     exit 1


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[41/50] ios commit: CB-7047 - Support config.xml preferences for WKWebView

Posted by sh...@apache.org.
CB-7047 - Support config.xml preferences for WKWebView


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/d801baca
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/d801baca
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/d801baca

Branch: refs/heads/wkwebview
Commit: d801bacac2a41ff730bd8aa6967004ea6bf3f82b
Parents: 686ef8a
Author: Shazron Abdullah <sh...@apache.org>
Authored: Mon Jul 21 14:34:05 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 31 15:37:43 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVWebViewPreferences.m | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/d801baca/CordovaLib/Classes/CDVWebViewPreferences.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVWebViewPreferences.m b/CordovaLib/Classes/CDVWebViewPreferences.m
index a42b3aa..55f447b 100644
--- a/CordovaLib/Classes/CDVWebViewPreferences.m
+++ b/CordovaLib/Classes/CDVWebViewPreferences.m
@@ -242,6 +242,27 @@
         }
         theWebView.configuration.preferences.minimumFontSize = minimumFontSize;
 
+        BOOL allowInlineMediaPlayback = NO; // default
+        prefObj = [self cordovaSettings:settings forKey:@"AllowInlineMediaPlayback"];
+        if (prefObj != nil) {
+            allowInlineMediaPlayback = [(NSNumber*)prefObj boolValue];
+        }
+        theWebView.configuration.allowsInlineMediaPlayback = allowInlineMediaPlayback;
+
+        BOOL mediaPlaybackRequiresUserAction = YES;  // default
+        prefObj = [self cordovaSettings:settings forKey:@"MediaPlaybackRequiresUserAction"];
+        if (prefObj != nil) {
+            mediaPlaybackRequiresUserAction = [(NSNumber*)prefObj boolValue];
+        }
+        theWebView.configuration.mediaPlaybackRequiresUserAction = mediaPlaybackRequiresUserAction;
+
+        BOOL suppressesIncrementalRendering = NO; // default
+        prefObj = [self cordovaSettings:settings forKey:@"MediaPlaybackRequiresUserAction"];
+        if (prefObj != nil) {
+            suppressesIncrementalRendering = [(NSNumber*)prefObj boolValue];
+        }
+        theWebView.configuration.suppressesIncrementalRendering = suppressesIncrementalRendering;
+
         /*
         BOOL javaScriptEnabled = YES;  // default value
         if ([self cordovaSettings:settings forKey:@"JavaScriptEnabled"]) {


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[18/50] ios commit: Increment ios-deploy min version to 1.2.0 and ios-sim min version to 3.0

Posted by sh...@apache.org.
Increment ios-deploy min version to 1.2.0 and ios-sim min version to 3.0


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/bdbb026f
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/bdbb026f
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/bdbb026f

Branch: refs/heads/wkwebview
Commit: bdbb026fce26d476485f708f8ec9398b3ec714db
Parents: 307a00b
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 17 15:35:46 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 15:35:46 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/emulate              | 2 +-
 bin/templates/scripts/cordova/lib/install-device   | 2 +-
 bin/templates/scripts/cordova/lib/install-emulator | 2 +-
 bin/templates/scripts/cordova/run                  | 4 ++--
 4 files changed, 5 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/bdbb026f/bin/templates/scripts/cordova/emulate
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/emulate b/bin/templates/scripts/cordova/emulate
index 638e650..5c68a82 100755
--- a/bin/templates/scripts/cordova/emulate
+++ b/bin/templates/scripts/cordova/emulate
@@ -31,7 +31,7 @@ APP_PATH=${1:-$PROJECT_PATH/build/emulator/$(xcodebuild -project "$PROJECT_PATH/
 
 TARGET=${2:-${TARGET:-iPhone-6}}
 
-IOS_SIM_MIN_VERSION="1.7"
+IOS_SIM_MIN_VERSION="3.0"
 IOS_SIM_LOCATION=$(which ios-sim)
 if [ $? != 0 ]; then
     echo -e "\033[31mError: ios-sim was not found. Please download, build and install version $IOS_SIM_MIN_VERSION or greater from https://github.com/phonegap/ios-sim into your path. Or 'npm install -g ios-sim' using node.js: http://nodejs.org/\033[m" 1>&2; 

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/bdbb026f/bin/templates/scripts/cordova/lib/install-device
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/install-device b/bin/templates/scripts/cordova/lib/install-device
index 617442f..4cea6c7 100755
--- a/bin/templates/scripts/cordova/lib/install-device
+++ b/bin/templates/scripts/cordova/lib/install-device
@@ -40,7 +40,7 @@ if [ ! -d "$DEVICE_APP_PATH" ]; then
 fi
 
 
-IOS_DEPLOY_MIN_VERSION="1.0.4"
+IOS_DEPLOY_MIN_VERSION="1.2.0"
 IOS_DEPLOY_LOCATION=$(which ios-deploy)
 if [ $? != 0 ]; then
     echo -e "\033[31mError: ios-deploy was not found. Please download, build and install version $IOS_DEPLOY_MIN_VERSION or greater from https://github.com/phonegap/ios-deploy into your path. Or 'npm install -g ios-deploy' using node.js: http://nodejs.org/\033[m"; exit 1;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/bdbb026f/bin/templates/scripts/cordova/lib/install-emulator
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/install-emulator b/bin/templates/scripts/cordova/lib/install-emulator
index e916660..65d2036 100755
--- a/bin/templates/scripts/cordova/lib/install-emulator
+++ b/bin/templates/scripts/cordova/lib/install-emulator
@@ -84,7 +84,7 @@ if [ ! -d "$SIMULATOR_APP_PATH" ]; then
 	exit 1
 fi
 
-IOS_SIM_MIN_VERSION="1.7"
+IOS_SIM_MIN_VERSION="3.0"
 IOS_SIM_LOCATION=$(which ios-sim)
 if [ $? != 0 ]; then
     echo -e "\033[31mError: ios-sim was not found. Please download, build and install version $IOS_SIM_MIN_VERSION or greater from https://github.com/phonegap/ios-sim into your path. Or 'npm install -g ios-sim' using node.js: http://nodejs.org/\033[m"; exit 1;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/bdbb026f/bin/templates/scripts/cordova/run
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/run b/bin/templates/scripts/cordova/run
index b4d45d0..ff60876 100755
--- a/bin/templates/scripts/cordova/run
+++ b/bin/templates/scripts/cordova/run
@@ -90,7 +90,7 @@ source "$CORDOVA_PATH/check_reqs"
 
 # if device build found, run it first
 if "$USE_DEVICE"; then
-    IOS_DEPLOY_MIN_VERSION="1.0.4"
+    IOS_DEPLOY_MIN_VERSION="1.2.0"
     IOS_DEPLOY_LOCATION=$(which ios-deploy)
     if [ $? != 0 ]; then
         echo -e "\033[31mError: ios-deploy was not found. Please download, build and install version $IOS_DEPLOY_MIN_VERSION or greater from https://github.com/phonegap/ios-deploy into your path. Or 'npm install -g ios-deploy' using node.js: http://nodejs.org/\033[m" 1>&2;
@@ -116,7 +116,7 @@ if "$USE_DEVICE"; then
 fi
 
 if "$USE_SIMULATOR"; then
-    IOS_SIM_MIN_VERSION="1.7"
+    IOS_SIM_MIN_VERSION="3.0"
     IOS_SIM_LOCATION=$(which ios-sim)
     if [ $? != 0 ]; then
         echo -e "\033[31mError: ios-sim was not found. Please download, build and install version $IOS_SIM_MIN_VERSION or greater from https://github.com/phonegap/ios-sim into your path. Or 'npm install -g ios-sim' using node.js: http://nodejs.org/\033[m" 1>&2;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[37/50] ios commit: Update RELEASENOTES.md for 3.7.0 release

Posted by sh...@apache.org.
Update RELEASENOTES.md for 3.7.0 release


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/cc43cd7d
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/cc43cd7d
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/cc43cd7d

Branch: refs/heads/wkwebview
Commit: cc43cd7dbb4b6f19b35a74502431a167f1ed492e
Parents: 8458588
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Oct 30 11:20:38 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Oct 30 11:20:38 2014 -0700

----------------------------------------------------------------------
 RELEASENOTES.md | 49 ++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 48 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/cc43cd7d/RELEASENOTES.md
----------------------------------------------------------------------
diff --git a/RELEASENOTES.md b/RELEASENOTES.md
index 503bd84..23d6194 100644
--- a/RELEASENOTES.md
+++ b/RELEASENOTES.md
@@ -24,7 +24,54 @@ Update these notes using: git log --pretty=format:'* %s' --topo-order --no-merge
 
 Cordova is a static library that enables developers to include the Cordova API in their iOS application projects easily, and also create new Cordova-based iOS application projects through the command-line.
 
-### 3.6.0 (201409XX) ###
+### 3.7.0 (201411XX) ###
+
+* CB-7882 - viewDidUnload instance method is missing [super viewDidUnload] call
+* CB-7872 - XCode 6.1's xcrun PackageApplication fails at packaging / resigning Cordova applications (closes #115)
+* CB-6510 - Support for ErrorUrl preference on iOS
+* CB-7857 - Load appURL after plugins have loaded
+* CB-7606 - handleOpenURL handler firing more than necessary
+* CB-7597 - Localizable.strings for Media Capture are in the default template, it should be in the plugin
+* CB-7818 - CLI builds ignore Distribution certificates (closes #114)
+* CB-7729 - Support ios-sim 3.0 (Xcode 6) and new targets (iPhone 6/6+) (closes #107)
+* CB-7813 - Added unit test
+* CB-7813 - CDVWebViewDelegate fails to update the webview state properly in iOS
+* CB-7812 - cordova-ios xcode unit-tests are failing from npm test, in Xcode it is fine
+* CB-7643 - made isValidCallbackId threadsafe
+* CB-7735 - Update cordova.js snapshot with the bridge fix
+* CB-2520 - built interim js from cordova-js for custom user agent support
+* CB-2520 - iOS - "original" user agent needs to be overridable (closes #112)
+* CB-7777 - In AppDelegate, before calling handleOpenURL check whether it exists first to prevent exceptions (closes #109)
+* CB-7775 - Add component.json for component and duo package managers (closes #102)
+* CB-7493 - Add e2e test for 'space-in-path' and 'unicode in path/name' for core platforms (moved from root folder).
+* CB-7493 - Adds test-build command to package.json
+* CB-7630 - Deprecate CDV_IsIPhone5 and CDV_IsIPad macro in CDVAvailability.h
+* CB-7727 - add resolution part to 'backup to icloud' warning message
+* CB-7627 - Remove duplicate reference to the same libCordova.a.
+* CB-7648 - [iOS 8] Add iPhone 6 Plus icon to default template
+* CB-7632 - [iOS 8] Add launch image definitions to Info.plist
+* CB-7631 - CDVUrlProtocol - the iOS 8 NSHttpUrlResponse is not initialized with the statuscode
+* CB-7596 - [iOS 8] CDV_IsIPhone5() Macro needs to be updated because screen size is now orientation dependent
+* CB-7560 - Tel and Mailto links don't work in iframe
+* CB-7450 - Fix deprecations in cordova-ios unit tests
+* CB-7546 - [Contacts][iOS] Prevent exception when index is out of range
+* CB-7450 - Fix deprecations in cordova-ios unit tests (interim checkin)
+* CB-7502 - iOS default template is missing CFBundleShortVersionString key in Info.plist, prevents iTunes Connect submission
+* Changed CordovaLibTests to run in a xcworkspace, and runnable from the command line
+* Move CordovaLibTests into tests/
+* Add ios-sim version check (3.0) to cordova/lib/list-emulator-images
+* Fix cordova/lib/install-emulator to pass in the correct prefix for ios-sim --devicetypeid
+* Fix cordova/lib/list-started-emulators for Xcode 6
+* Remove non-working applescript to start emulator, use Instruments to start iOS Simulator now.
+* Add support for the iPod in cordova/lib/list-devices script.
+* Remove "Valid values for --target" in script headers. Use "cordova/lib/list-emulator-images" to get the list.
+* Update cordova/lib/list-emulator-images for ios-sim 3.0
+* Increment ios-deploy min version to 1.2.0 and ios-sim min version to 3.0
+* Updated cordova/build script to use specific SHARED_PRECOMPS_DIR variable.
+* Update .gitignore to not ignore .xcworkspace files
+
+
+### 3.6.3 (20140908) ###
 
 * Updated default template.
 * CB-7432 - iOS - Version script should be updated by coho at release time


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[25/50] ios commit: Add ios-sim version check (3.0) to cordova/lib/list-emulator-images

Posted by sh...@apache.org.
Add ios-sim version check (3.0) to cordova/lib/list-emulator-images


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/5bbfbf8a
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/5bbfbf8a
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/5bbfbf8a

Branch: refs/heads/wkwebview
Commit: 5bbfbf8a60ad6aa4453a9458b64f276b36eb8d02
Parents: 14fa0a8
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 17 16:45:50 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 16:45:50 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/lib/list-emulator-images | 7 +++++++
 1 file changed, 7 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/5bbfbf8a/bin/templates/scripts/cordova/lib/list-emulator-images
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/list-emulator-images b/bin/templates/scripts/cordova/lib/list-emulator-images
index 88dcd6b..c831370 100755
--- a/bin/templates/scripts/cordova/lib/list-emulator-images
+++ b/bin/templates/scripts/cordova/lib/list-emulator-images
@@ -19,6 +19,13 @@
 
 set -e
 
+IOS_SIM_MIN_VERSION="3.0"
+IOS_SIM_LOCATION=$(which ios-sim)
+if [ $? != 0 ]; then
+    echo -e "\033[31mError: ios-sim was not found. Please download, build and install version $IOS_SIM_MIN_VERSION or greater from https://github.com/phonegap/ios-sim into your path. Or 'npm install -g ios-sim' using node.js: http://nodejs.org/\033[m" 1>&2; 
+	exit 1;
+fi
+
 IOS_SIM_VERSION=$(ios-sim --version)
 
 if [[ "$IOS_SIM_VERSION" < "$IOS_SIM_MIN_VERSION" ]]; then


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[02/50] ios commit: Updated cordova/build script to use specific SHARED_PRECOMPS_DIR variable.

Posted by sh...@apache.org.
Updated cordova/build script to use specific SHARED_PRECOMPS_DIR variable.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/cad22c35
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/cad22c35
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/cad22c35

Branch: refs/heads/wkwebview
Commit: cad22c35362d891242e9ceab872b9c819f7ddfef
Parents: 1d43720
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 10 15:33:43 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 10 15:33:43 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/build | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/cad22c35/bin/templates/scripts/cordova/build
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/build b/bin/templates/scripts/cordova/build
index 220c3af..124ce81 100755
--- a/bin/templates/scripts/cordova/build
+++ b/bin/templates/scripts/cordova/build
@@ -49,8 +49,8 @@ while [[ $# -gt 0 ]]; do
 done
 
 if (( $EMULATOR )); then
-    exec xcodebuild -project "$PROJECT_NAME.xcodeproj" -arch i386 -target "$PROJECT_NAME" -configuration $CONFIGURATION -sdk iphonesimulator build VALID_ARCHS="i386" CONFIGURATION_BUILD_DIR="$PROJECT_PATH/build/emulator"
+    exec xcodebuild -project "$PROJECT_NAME.xcodeproj" -arch i386 -target "$PROJECT_NAME" -configuration $CONFIGURATION -sdk iphonesimulator build VALID_ARCHS="i386" CONFIGURATION_BUILD_DIR="$PROJECT_PATH/build/emulator" SHARED_PRECOMPS_DIR="$PROJECT_PATH/build/sharedpch"
 else
-    exec xcodebuild -xcconfig "$CORDOVA_PATH/build.xcconfig" -project "$PROJECT_NAME.xcodeproj" ARCHS="armv7 armv7s arm64" -target "$PROJECT_NAME" -configuration $CONFIGURATION -sdk iphoneos build VALID_ARCHS="armv7 armv7s arm64" CONFIGURATION_BUILD_DIR="$PROJECT_PATH/build/device"
+    exec xcodebuild -xcconfig "$CORDOVA_PATH/build.xcconfig" -project "$PROJECT_NAME.xcodeproj" ARCHS="armv7 armv7s arm64" -target "$PROJECT_NAME" -configuration $CONFIGURATION -sdk iphoneos build VALID_ARCHS="armv7 armv7s arm64" CONFIGURATION_BUILD_DIR="$PROJECT_PATH/build/device" SHARED_PRECOMPS_DIR="$PROJECT_PATH/build/sharedpch"
 fi
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[35/50] ios commit: CB-7882 - viewDidUnload instance method is missing [super viewDidUnload] call

Posted by sh...@apache.org.
CB-7882 - viewDidUnload instance method is missing [super viewDidUnload] call


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/31302e40
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/31302e40
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/31302e40

Branch: refs/heads/wkwebview
Commit: 31302e403013618e7ed1f5e703db8475643c78ff
Parents: 1d7ed65
Author: Shazron Abdullah <sh...@apache.org>
Authored: Mon Oct 27 16:53:13 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Mon Oct 27 16:53:13 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVViewController.m | 2 ++
 1 file changed, 2 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/31302e40/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index f0e0c2f..eb056ce 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -657,6 +657,8 @@
     self.webView.delegate = nil;
     self.webView = nil;
     [CDVUserAgentUtil releaseLock:&_userAgentLockToken];
+
+    [super viewDidUnload];
 }
 
 #pragma mark UIWebViewDelegate


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[32/50] ios commit: Typo in style fixup.

Posted by sh...@apache.org.
Typo in style fixup.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/722397ae
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/722397ae
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/722397ae

Branch: refs/heads/wkwebview
Commit: 722397ae7b4a084fd54ac9e52517938ca82a9b0b
Parents: 1b85a6e
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Oct 23 13:09:33 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Oct 23 13:09:33 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVViewController.m | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/722397ae/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index 8cd59b3..c62ba87 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -788,7 +788,7 @@
 + (NSString*)applicationDocumentsDirectory
 {
     NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
-    NSString* basePath = ([paths count] > 0) ? (([paths objectAtIndex : 0]) : nil);
+    NSString* basePath = (([paths count] > 0) ? ([paths objectAtIndex : 0]) : nil);
 
     return basePath;
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[06/50] ios commit: Added Travis CI badge to README.md

Posted by sh...@apache.org.
Added Travis CI badge to README.md


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/fb66b916
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/fb66b916
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/fb66b916

Branch: refs/heads/wkwebview
Commit: fb66b916d31ec0afce87858187e846feb7ed2f5f
Parents: 99aea98
Author: Shazron Abdullah <sh...@apache.org>
Authored: Sun Oct 12 00:32:00 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Sun Oct 12 00:32:00 2014 -0700

----------------------------------------------------------------------
 README.md | 3 +++
 1 file changed, 3 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/fb66b916/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 5faf0dc..d4adc20 100644
--- a/README.md
+++ b/README.md
@@ -18,6 +18,9 @@
 # under the License.
 #
 -->
+
+[![Build Status](https://travis-ci.org/apache/cordova-ios.svg)](https://travis-ci.org/apache/cordova-ios)
+
 Cordova iOS
 =============================================================
 Cordova iOS is an iOS application library that allows for Cordova-based projects to be built for the iOS Platform. Cordova based applications are, at the core, applications written with web technology: HTML, CSS and JavaScript.


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[31/50] ios commit: CB-7857 - Load appURL after plugins have loaded

Posted by sh...@apache.org.
CB-7857 - Load appURL after plugins have loaded

- includes uncrustify style fixups


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/1b85a6e6
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/1b85a6e6
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/1b85a6e6

Branch: refs/heads/wkwebview
Commit: 1b85a6e6762ef1280651a6e52358298b3d2a0ed7
Parents: 01b3d19
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Oct 23 12:43:13 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Oct 23 12:43:13 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVViewController.m | 27 +++++++++++++++++----------
 1 file changed, 17 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1b85a6e6/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index acb88f7..8cd59b3 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -199,13 +199,9 @@
     self.pluginObjects = [[NSMutableDictionary alloc] initWithCapacity:20];
 }
 
-// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
-- (void)viewDidLoad
+- (NSURL*)appUrl
 {
-    [super viewDidLoad];
-
     NSURL* appURL = nil;
-    NSString* loadErr = nil;
 
     if ([self.startPage rangeOfString:@"://"].location != NSNotFound) {
         appURL = [NSURL URLWithString:self.startPage];
@@ -217,8 +213,6 @@
         NSString* startFilePath = [self.commandDelegate pathForResource:[startURL path]];
 
         if (startFilePath == nil) {
-            loadErr = [NSString stringWithFormat:@"ERROR: Start Page at '%@/%@' was not found.", self.wwwFolderName, self.startPage];
-            NSLog(@"%@", loadErr);
             self.loadFromString = YES;
             appURL = nil;
         } else {
@@ -233,6 +227,14 @@
         }
     }
 
+    return appURL;
+}
+
+// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
+- (void)viewDidLoad
+{
+    [super viewDidLoad];
+
     // // Fix the iOS 5.1 SECURITY_ERR bug (CB-347), this must be before the webView is instantiated ////
 
     NSString* backupWebStorageType = @"cloud"; // default value
@@ -315,7 +317,7 @@
     }
 
     NSString* decelerationSetting = [self settingForKey:@"UIWebViewDecelerationSpeed"];
-    if (![@"fast" isEqualToString : decelerationSetting]) {
+    if (![@"fast" isEqualToString:decelerationSetting]) {
         [self.webView.scrollView setDecelerationRate:UIScrollViewDecelerationRateNormal];
     }
 
@@ -437,13 +439,18 @@
     }
 
     // /////////////////
+    NSURL* appURL = [self appUrl];
+
     [CDVUserAgentUtil acquireLock:^(NSInteger lockToken) {
         _userAgentLockToken = lockToken;
         [CDVUserAgentUtil setUserAgent:self.userAgent lockToken:lockToken];
-        if (!loadErr) {
+        if (appURL) {
             NSURLRequest* appReq = [NSURLRequest requestWithURL:appURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:20.0];
             [self.webView loadRequest:appReq];
         } else {
+            NSString* loadErr = [NSString stringWithFormat:@"ERROR: Start Page at '%@/%@' was not found.", self.wwwFolderName, self.startPage];
+            NSLog(@"%@", loadErr);
+
             NSString* html = [NSString stringWithFormat:@"<html><body> %@ </body></html>", loadErr];
             [self.webView loadHTMLString:html baseURL:nil];
         }
@@ -781,7 +788,7 @@
 + (NSString*)applicationDocumentsDirectory
 {
     NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
-    NSString* basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
+    NSString* basePath = ([paths count] > 0) ? (([paths objectAtIndex : 0]) : nil);
 
     return basePath;
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[27/50] ios commit: CB-7818 - CLI builds ignore Distribution certificates (closes #114)

Posted by sh...@apache.org.
CB-7818 - CLI builds ignore Distribution certificates (closes #114)

Fixed build / xcconfig defaults for CI environments. "cordova build -…
…-device --release" now builds using the "iPhone Distribution"-type profile, as opposed to the default "cordova build --device", using the default "iPhone Developer"-type profile.

Re-added build.xcconfig as shared .xcconfig for legacy compatibility. Implemented Configuration-level .xcconfig selection via inheritance. Added ASF comment section, short documentation.

Signed-off-by: Shazron Abdullah <sh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/c0db6382
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/c0db6382
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/c0db6382

Branch: refs/heads/wkwebview
Commit: c0db6382af2e2570be139d584f553ca5c046a941
Parents: 7cd2e2b
Author: Sidney Bofah <si...@googlemail.com>
Authored: Sat Oct 18 03:38:49 2014 +0200
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Mon Oct 20 12:32:45 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/build             |  2 +-
 .../scripts/cordova/build-debug.xcconfig        | 24 +++++++++++++++
 .../scripts/cordova/build-release.xcconfig      | 27 +++++++++++++++++
 bin/templates/scripts/cordova/build.xcconfig    | 32 +++++++++++++++++---
 4 files changed, 80 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/c0db6382/bin/templates/scripts/cordova/build
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/build b/bin/templates/scripts/cordova/build
index 124ce81..9df2be0 100755
--- a/bin/templates/scripts/cordova/build
+++ b/bin/templates/scripts/cordova/build
@@ -51,6 +51,6 @@ done
 if (( $EMULATOR )); then
     exec xcodebuild -project "$PROJECT_NAME.xcodeproj" -arch i386 -target "$PROJECT_NAME" -configuration $CONFIGURATION -sdk iphonesimulator build VALID_ARCHS="i386" CONFIGURATION_BUILD_DIR="$PROJECT_PATH/build/emulator" SHARED_PRECOMPS_DIR="$PROJECT_PATH/build/sharedpch"
 else
-    exec xcodebuild -xcconfig "$CORDOVA_PATH/build.xcconfig" -project "$PROJECT_NAME.xcodeproj" ARCHS="armv7 armv7s arm64" -target "$PROJECT_NAME" -configuration $CONFIGURATION -sdk iphoneos build VALID_ARCHS="armv7 armv7s arm64" CONFIGURATION_BUILD_DIR="$PROJECT_PATH/build/device" SHARED_PRECOMPS_DIR="$PROJECT_PATH/build/sharedpch"
+    exec xcodebuild -xcconfig "$CORDOVA_PATH/build$(echo -$CONFIGURATION | tr '[:upper:]' '[:lower:]').xcconfig" -project "$PROJECT_NAME.xcodeproj" ARCHS="armv7 armv7s arm64" -target "$PROJECT_NAME" -configuration $CONFIGURATION -sdk iphoneos build VALID_ARCHS="armv7 armv7s arm64" CONFIGURATION_BUILD_DIR="$PROJECT_PATH/build/device" SHARED_PRECOMPS_DIR="$PROJECT_PATH/build/sharedpch"
 fi
 

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/c0db6382/bin/templates/scripts/cordova/build-debug.xcconfig
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/build-debug.xcconfig b/bin/templates/scripts/cordova/build-debug.xcconfig
new file mode 100644
index 0000000..85748ea
--- /dev/null
+++ b/bin/templates/scripts/cordova/build-debug.xcconfig
@@ -0,0 +1,24 @@
+//
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you 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.
+//
+
+//
+// XCode Build settings for "Debug" Build Configuration.
+//
+
+#include "build.xcconfig"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/c0db6382/bin/templates/scripts/cordova/build-release.xcconfig
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/build-release.xcconfig b/bin/templates/scripts/cordova/build-release.xcconfig
new file mode 100644
index 0000000..6169afd
--- /dev/null
+++ b/bin/templates/scripts/cordova/build-release.xcconfig
@@ -0,0 +1,27 @@
+//
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you 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.
+//
+
+//
+// XCode Build settings for "Release" Build Configuration.
+//
+
+#include "build.xcconfig"
+
+CODE_SIGN_IDENTITY = iPhone Distribution
+CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/c0db6382/bin/templates/scripts/cordova/build.xcconfig
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/build.xcconfig b/bin/templates/scripts/cordova/build.xcconfig
index b2febfe..99231ea 100644
--- a/bin/templates/scripts/cordova/build.xcconfig
+++ b/bin/templates/scripts/cordova/build.xcconfig
@@ -1,5 +1,29 @@
-// to list all installed iOS identities, run:
-//     security find-identity |  sed -n 's/.*\("[^"]*"\).*/\1/p' | grep 'iPhone'
+//
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you 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.
+//
 
-// generic 'iPhone Developer' (no quotes) will match the right Identity with the right Provisioning Profile plus Certificate, based on the app bundle id
-CODE_SIGN_IDENTITY = iPhone Developer
\ No newline at end of file
+//
+// XCode build settings shared by all Build Configurations.
+// Settings are overridden by configuration-level .xcconfig file (build-release/build-debug).
+//
+
+
+// Type of signing identity used for codesigning, resolves to first match of given type.
+// "iPhone Developer": Development builds (default, local only; iOS Development certificate) or "iPhone Distribution": Distribution builds (Adhoc/In-House/AppStore; iOS Distribution certificate)
+CODE_SIGN_IDENTITY = iPhone Developer
+CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[10/50] ios commit: CB-2520 - built interim js from cordova-js for custom user agent support

Posted by sh...@apache.org.
CB-2520 - built interim js from cordova-js for custom user agent support


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/c4ece0e7
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/c4ece0e7
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/c4ece0e7

Branch: refs/heads/wkwebview
Commit: c4ece0e7af320246c164b97b00ac78567dbfbfc4
Parents: 78ca06e
Author: Shazron Abdullah <sh...@apache.org>
Authored: Mon Oct 13 15:23:57 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Mon Oct 13 15:23:57 2014 -0700

----------------------------------------------------------------------
 CordovaLib/cordova.js | 80 +++++++++++++++++++++++++++-------------------
 1 file changed, 47 insertions(+), 33 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/c4ece0e7/CordovaLib/cordova.js
----------------------------------------------------------------------
diff --git a/CordovaLib/cordova.js b/CordovaLib/cordova.js
index 3153482..963dfe6 100644
--- a/CordovaLib/cordova.js
+++ b/CordovaLib/cordova.js
@@ -1,5 +1,5 @@
 // Platform: ios
-// 3.7.0-dev-1258511
+// d9e2a1c2401b986b5af09ecd6b4be60df2cbf131
 /*
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
@@ -19,7 +19,7 @@
  under the License.
 */
 ;(function() {
-var CORDOVA_JS_BUILD_LABEL = '3.7.0-dev-1258511';
+var PLATFORM_VERSION_BUILD_LABEL = '3.7.0-dev';
 // file: src/scripts/require.js
 
 /*jshint -W079 */
@@ -175,7 +175,8 @@ function createEvent(type, data) {
 var cordova = {
     define:define,
     require:require,
-    version:CORDOVA_JS_BUILD_LABEL,
+    version:PLATFORM_VERSION_BUILD_LABEL,
+    platformVersion:PLATFORM_VERSION_BUILD_LABEL,
     platformId:platform.id,
     /**
      * Methods to add/remove your own addEventListener hijacking on document + window.
@@ -262,11 +263,7 @@ var cordova = {
      * Called by native code when returning successful result from an action.
      */
     callbackSuccess: function(callbackId, args) {
-        try {
-            cordova.callbackFromNative(callbackId, true, args.status, [args.message], args.keepCallback);
-        } catch (e) {
-            console.log("Error in success callback: " + callbackId + " = "+e);
-        }
+        cordova.callbackFromNative(callbackId, true, args.status, [args.message], args.keepCallback);
     },
 
     /**
@@ -275,30 +272,34 @@ var cordova = {
     callbackError: function(callbackId, args) {
         // TODO: Deprecate callbackSuccess and callbackError in favour of callbackFromNative.
         // Derive success from status.
-        try {
-            cordova.callbackFromNative(callbackId, false, args.status, [args.message], args.keepCallback);
-        } catch (e) {
-            console.log("Error in error callback: " + callbackId + " = "+e);
-        }
+        cordova.callbackFromNative(callbackId, false, args.status, [args.message], args.keepCallback);
     },
 
     /**
      * Called by native code when returning the result from an action.
      */
-    callbackFromNative: function(callbackId, success, status, args, keepCallback) {
-        var callback = cordova.callbacks[callbackId];
-        if (callback) {
-            if (success && status == cordova.callbackStatus.OK) {
-                callback.success && callback.success.apply(null, args);
-            } else if (!success) {
-                callback.fail && callback.fail.apply(null, args);
-            }
+    callbackFromNative: function(callbackId, isSuccess, status, args, keepCallback) {
+        try {
+            var callback = cordova.callbacks[callbackId];
+            if (callback) {
+                if (isSuccess && status == cordova.callbackStatus.OK) {
+                    callback.success && callback.success.apply(null, args);
+                } else {
+                    callback.fail && callback.fail.apply(null, args);
+                }
 
-            // Clear callback if not expecting any more results
-            if (!keepCallback) {
-                delete cordova.callbacks[callbackId];
+                // Clear callback if not expecting any more results
+                if (!keepCallback) {
+                    delete cordova.callbacks[callbackId];
+                }
             }
         }
+        catch (err) {
+            var msg = "Error in " + (isSuccess ? "Success" : "Error") + " callbackId: " + callbackId + " : " + err;
+            console && console.log && console.log(msg);
+            cordova.fireWindowEvent("cordovacallbackerror", { 'message': msg });
+            throw err;
+        }
     },
     addConstructor: function(func) {
         channel.onCordovaReady.subscribe(function() {
@@ -918,15 +919,8 @@ function convertMessageToArgsNativeToJs(message) {
 }
 
 function iOSExec() {
-    // Use XHR for iOS 5 to work around a bug in -webkit-scroll.
-    // Use IFRAME_NAV elsewhere since it's faster and XHR bridge
-    // seems to have bugs in newer OS's (CB-3900, CB-3359, CB-5457, CB-4970, CB-4998, CB-5134)
     if (bridgeMode === undefined) {
-        if (navigator.userAgent) {
-            bridgeMode = navigator.userAgent.indexOf(' 5_') == -1 ? jsToNativeModes.IFRAME_NAV: jsToNativeModes.XHR_NO_PAYLOAD;
-        } else {
-            bridgeMode = jsToNativeModes.IFRAME_NAV;
-        }
+        bridgeMode = jsToNativeModes.IFRAME_NAV;
     }
 
     if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.cordova && window.webkit.messageHandlers.cordova.postMessage) {
@@ -1017,7 +1011,7 @@ function pokeNativeViaXhr() {
     // Add a timestamp to the query param to prevent caching.
     execXhr.open('HEAD', "/!gap_exec?" + (+new Date()), true);
     if (!vcHeaderValue) {
-        vcHeaderValue = /.*\((.*)\)/.exec(navigator.userAgent)[1];
+        vcHeaderValue = /.*\((.*)\)$/.exec(navigator.userAgent)[1];
     }
     execXhr.setRequestHeader('vc', vcHeaderValue);
     execXhr.setRequestHeader('rc', ++requestCount);
@@ -1171,6 +1165,16 @@ function replaceNavigator(origNavigator) {
         for (var key in origNavigator) {
             if (typeof origNavigator[key] == 'function') {
                 newNavigator[key] = origNavigator[key].bind(origNavigator);
+            } else {
+                (function(k) {
+                        Object.defineProperty(newNavigator, k, {
+                            get: function() {
+                                return origNavigator[k];
+                            },
+                            configurable: true,
+                            enumerable: true
+                        });
+                    })(key);
             }
         }
     }
@@ -1290,6 +1294,16 @@ function replaceNavigator(origNavigator) {
         for (var key in origNavigator) {
             if (typeof origNavigator[key] == 'function') {
                 newNavigator[key] = origNavigator[key].bind(origNavigator);
+            } else {
+                (function(k) {
+                        Object.defineProperty(newNavigator, k, {
+                            get: function() {
+                                return origNavigator[k];
+                            },
+                            configurable: true,
+                            enumerable: true
+                        });
+                    })(key);
             }
         }
     }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[45/50] ios commit: CB-7182 - Running mobile-spec in an iOS 8 project but using UIWebView results in an exception

Posted by sh...@apache.org.
CB-7182 - Running mobile-spec in an iOS 8 project but using UIWebView results in an exception


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/686ef8a3
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/686ef8a3
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/686ef8a3

Branch: refs/heads/wkwebview
Commit: 686ef8a3a8c6c5cc1d025d9a5010dd28e6380206
Parents: 4c0556b
Author: Shazron Abdullah <sh...@apache.org>
Authored: Mon Jul 21 14:02:43 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 31 15:37:43 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVCommandQueue.m | 28 +++++++++++-----------------
 1 file changed, 11 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/686ef8a3/CordovaLib/Classes/CDVCommandQueue.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVCommandQueue.m b/CordovaLib/Classes/CDVCommandQueue.m
index b4f1fa6..bb2788b 100644
--- a/CordovaLib/Classes/CDVCommandQueue.m
+++ b/CordovaLib/Classes/CDVCommandQueue.m
@@ -109,25 +109,19 @@ static const double MAX_EXECUTION_TIME = .008; // Half of a 60fps frame.
 
 - (void)fetchCommandsFromJs
 {
+    __weak CDVCommandQueue* weakSelf = self;
     NSString* js = @"cordova.require('cordova/exec').nativeFetchMessages()";
-    SEL ui_selector = NSSelectorFromString(@"stringByEvaluatingJavaScriptFromString:");
 
-    // Grab all the queued commands from the JS side.
-    NSInvocation* invocation = [NSInvocation invocationWithMethodSignature:
-        [[_viewController.webView class] instanceMethodSignatureForSelector:ui_selector]];
-
-    [invocation setSelector:ui_selector];
-    [invocation setTarget:_viewController.webView];
-    // arguments 0 and 1 are self and _cmd respectively, automatically set by NSInvocation
-    [invocation setArgument:&(js) atIndex:2];
-
-    [invocation invoke];
-
-    NSString* queuedCommandsJSON;
-    [invocation getReturnValue:&(queuedCommandsJSON)];
-
-    CDV_EXEC_LOG(@"Exec: Flushed JS->native queue (hadCommands=%d).", [queuedCommandsJSON length] > 0);
-    [self enqueueCommandBatch:queuedCommandsJSON];
+    [_viewController.webViewOperationsDelegate evaluateJavaScript:js
+                                                completionHandler:^(id obj, NSError* error) {
+        if ((error == nil) && [obj isKindOfClass:[NSString class]]) {
+            NSString* queuedCommandsJSON = (NSString*)obj;
+            CDV_EXEC_LOG(@"Exec: Flushed JS->native queue (hadCommands=%d).", [queuedCommandsJSON length] > 0);
+            [weakSelf enqueueCommandBatch:queuedCommandsJSON];
+            // this has to be called here now, because fetchCommandsFromJs is now async (previously: synchronous)
+            [self executePending];
+        }
+    }];
 }
 
 - (void)executePending


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[19/50] ios commit: Update cordova/lib/list-emulator-images for ios-sim 3.0

Posted by sh...@apache.org.
Update cordova/lib/list-emulator-images for ios-sim 3.0


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/10c87e24
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/10c87e24
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/10c87e24

Branch: refs/heads/wkwebview
Commit: 10c87e249ade65c427cbfa5248d6c7f4f3c0d85f
Parents: bdbb026
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 17 16:21:06 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 16:21:06 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/lib/list-emulator-images | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/10c87e24/bin/templates/scripts/cordova/lib/list-emulator-images
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/list-emulator-images b/bin/templates/scripts/cordova/lib/list-emulator-images
index a73de7b..689f22c 100755
--- a/bin/templates/scripts/cordova/lib/list-emulator-images
+++ b/bin/templates/scripts/cordova/lib/list-emulator-images
@@ -26,15 +26,14 @@
 
 set -e
 
-echo \""iPhone (Retina 3.5-inch)"\"
-echo \""iPhone (Retina 4-inch)"\"
+IOS_SIM_VERSION=$(ios-sim --version)
 
-# this assumes Xcode 5 minimum not supported by ios-sim yet
-# echo \""iPhone (Retina 4-inch 64-bit)"\"
+if [[ "$IOS_SIM_VERSION" < "$IOS_SIM_MIN_VERSION" ]]; then
+	echo "Cordova needs ios-sim version $IOS_SIM_MIN_VERSION or greater, you have version $IOS_SIM_VERSION." 1>&2;
+	exit 1
+fi
 
-echo \""iPhone"\"
-echo \""iPad"\"
-echo \""iPad (Retina)"\"
+ios-sim showdevicetypes 2>&1 | sed "s/com.apple.CoreSimulator.SimDeviceType.//g" | awk -F',' '{print $1}'
 
 
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[05/50] ios commit: Update README.md for Tests

Posted by sh...@apache.org.
Update README.md for Tests


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/99aea984
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/99aea984
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/99aea984

Branch: refs/heads/wkwebview
Commit: 99aea98401938aa869b0fda198ae8db1d1ce4560
Parents: e3c0d36
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 10 15:54:23 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 10 15:54:23 2014 -0700

----------------------------------------------------------------------
 README.md | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/99aea984/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index bdbbaa3..5faf0dc 100644
--- a/README.md
+++ b/README.md
@@ -55,7 +55,9 @@ By default when you create a new project, the CordovaLib sub-project is copied i
 Tests
 --------------------------------------------------------------------
 
-See the `tests/README.md` file.
+1. Install [node.js](http://nodejs.org)
+2. Run `npm install`
+3. Run `npm test`
 
 Futher reading
 -----


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[33/50] ios commit: CB-6510 - Support for ErrorUrl preference on iOS

Posted by sh...@apache.org.
CB-6510 - Support for ErrorUrl preference on iOS

- ErrorUrl is a file that is relative to the www folder, or an external url. The value cannot have any query parameters or fragment identifiers, since an error query parameter is passed to the url, with the query parameter value as the error message.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/a96f059a
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/a96f059a
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/a96f059a

Branch: refs/heads/wkwebview
Commit: a96f059ac160c20c95d0ee802e0ee09dfb0f5856
Parents: 722397a
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Oct 23 14:15:54 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Oct 23 14:15:54 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVViewController.m | 43 +++++++++++++++++++++++++++--
 1 file changed, 40 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/a96f059a/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index c62ba87..f0e0c2f 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -230,6 +230,28 @@
     return appURL;
 }
 
+- (NSURL*)errorUrl
+{
+    NSURL* errorURL = nil;
+
+    id setting = [self settingForKey:@"ErrorUrl"];
+
+    if (setting) {
+        NSString* errorUrlString = (NSString*)setting;
+        if ([errorUrlString rangeOfString:@"://"].location != NSNotFound) {
+            errorURL = [NSURL URLWithString:errorUrlString];
+        } else {
+            NSURL* url = [NSURL URLWithString:(NSString*)setting];
+            NSString* errorFilePath = [self.commandDelegate pathForResource:[url path]];
+            if (errorFilePath) {
+                errorURL = [NSURL fileURLWithPath:errorFilePath];
+            }
+        }
+    }
+
+    return errorURL;
+}
+
 // Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
 - (void)viewDidLoad
 {
@@ -451,8 +473,15 @@
             NSString* loadErr = [NSString stringWithFormat:@"ERROR: Start Page at '%@/%@' was not found.", self.wwwFolderName, self.startPage];
             NSLog(@"%@", loadErr);
 
-            NSString* html = [NSString stringWithFormat:@"<html><body> %@ </body></html>", loadErr];
-            [self.webView loadHTMLString:html baseURL:nil];
+            NSURL* errorUrl = [self errorUrl];
+            if (errorUrl) {
+                errorUrl = [NSURL URLWithString:[NSString stringWithFormat:@"?error=%@", [loadErr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]] relativeToURL:errorUrl];
+                NSLog(@"%@", [errorUrl absoluteString]);
+                [self.webView loadRequest:[NSURLRequest requestWithURL:errorUrl]];
+            } else {
+                NSString* html = [NSString stringWithFormat:@"<html><body> %@ </body></html>", loadErr];
+                [self.webView loadHTMLString:html baseURL:nil];
+            }
         }
     }];
 }
@@ -664,7 +693,15 @@
 {
     [CDVUserAgentUtil releaseLock:&_userAgentLockToken];
 
-    NSLog(@"Failed to load webpage with error: %@", [error localizedDescription]);
+    NSString* message = [NSString stringWithFormat:@"Failed to load webpage with error: %@", [error localizedDescription]];
+    NSLog(@"%@", message);
+
+    NSURL* errorUrl = [self errorUrl];
+    if (errorUrl) {
+        errorUrl = [NSURL URLWithString:[NSString stringWithFormat:@"?error=%@", [message stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]] relativeToURL:errorUrl];
+        NSLog(@"%@", [errorUrl absoluteString]);
+        [theWebView loadRequest:[NSURLRequest requestWithURL:errorUrl]];
+    }
 }
 
 - (BOOL)webView:(UIWebView*)theWebView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[24/50] ios commit: Fix cordova/lib/install-emulator to pass in the correct prefix for ios-sim --devicetypeid

Posted by sh...@apache.org.
Fix cordova/lib/install-emulator to pass in the correct prefix for ios-sim --devicetypeid


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/14fa0a83
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/14fa0a83
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/14fa0a83

Branch: refs/heads/wkwebview
Commit: 14fa0a8367ab7fc4a0d7ae873b4cf0ea2cdd7dcb
Parents: 442606a
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 17 16:45:27 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 16:45:27 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/lib/install-emulator | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/14fa0a83/bin/templates/scripts/cordova/lib/install-emulator
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/install-emulator b/bin/templates/scripts/cordova/lib/install-emulator
index 2be0f45..bcf926e 100755
--- a/bin/templates/scripts/cordova/lib/install-emulator
+++ b/bin/templates/scripts/cordova/lib/install-emulator
@@ -88,4 +88,4 @@ if [[ "$IOS_SIM_VERSION" < "$IOS_SIM_MIN_VERSION" ]]; then
 fi
 
 # launch using ios-sim
-ios-sim launch "$SIMULATOR_APP_PATH" --stderr "$CORDOVA_PATH/console.log" --stdout "$CORDOVA_PATH/console.log" --devicetypeid $TARGET --exit
+ios-sim launch "$SIMULATOR_APP_PATH" --stderr "$CORDOVA_PATH/console.log" --stdout "$CORDOVA_PATH/console.log" --devicetypeid  "com.apple.CoreSimulator.SimDeviceType.$TARGET" --exit


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[08/50] ios commit: CB-7777 - In AppDelegate, before calling handleOpenURL check whether it exists first to prevent exceptions (closes #109)

Posted by sh...@apache.org.
CB-7777 - In AppDelegate, before calling handleOpenURL check whether it exists first to prevent exceptions (closes #109)

Signed-off-by: Shazron Abdullah <sh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/b1ebdab2
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/b1ebdab2
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/b1ebdab2

Branch: refs/heads/wkwebview
Commit: b1ebdab272c64b69ad434a7c72abd05fd660ac71
Parents: 875f5a4
Author: Emil Marashliev <em...@me.com>
Authored: Mon Sep 29 15:24:14 2014 +0300
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Mon Oct 13 13:56:32 2014 -0700

----------------------------------------------------------------------
 bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/b1ebdab2/bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m
----------------------------------------------------------------------
diff --git a/bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m b/bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m
index cc82260..1cf7fb6 100644
--- a/bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m
+++ b/bin/templates/project/__PROJECT_NAME__/Classes/AppDelegate.m
@@ -100,7 +100,7 @@
     }
 
     // calls into javascript global function 'handleOpenURL'
-    NSString* jsString = [NSString stringWithFormat:@"handleOpenURL(\"%@\");", url];
+    NSString* jsString = [NSString stringWithFormat:@"if (typeof handleOpenURL === 'function') { handleOpenURL(\"%@\");}", url];
     [self.viewController.webView stringByEvaluatingJavaScriptFromString:jsString];
 
     // all plugins will get the notification, and their handlers will be called


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[46/50] ios commit: CB-7184 - Implement support for mediaPlaybackAllowsAirPlay in UIWebView and WKWebView

Posted by sh...@apache.org.
CB-7184 - Implement support for mediaPlaybackAllowsAirPlay in UIWebView and WKWebView

plus config cleanup.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/b3fbd850
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/b3fbd850
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/b3fbd850

Branch: refs/heads/wkwebview
Commit: b3fbd850672a2cccb5163bca3720d618118d72bd
Parents: e22c8fb
Author: Shazron Abdullah <sh...@apache.org>
Authored: Mon Jul 21 14:48:51 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 31 15:37:43 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVWebViewPreferences.m | 42 +++++++++++++++++--------
 1 file changed, 29 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/b3fbd850/CordovaLib/Classes/CDVWebViewPreferences.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVWebViewPreferences.m b/CordovaLib/Classes/CDVWebViewPreferences.m
index f1cb48f..eb55c9d 100644
--- a/CordovaLib/Classes/CDVWebViewPreferences.m
+++ b/CordovaLib/Classes/CDVWebViewPreferences.m
@@ -72,25 +72,34 @@
 
 - (void)updateUIWebView:(UIWebView*)theWebView settings:(NSDictionary*)settings
 {
-    NSString* enableViewportScale = [self cordovaSettings:settings forKey:@"EnableViewportScale"];
-    NSNumber* allowInlineMediaPlayback = [self cordovaSettings:settings forKey:@"AllowInlineMediaPlayback"];
-    BOOL mediaPlaybackRequiresUserAction = YES;  // default value
+    BOOL scalesPageToFit = NO; // default
+    id prefObj = [self cordovaSettings:settings forKey:@"EnableViewportScale"];
 
-    if ([self cordovaSettings:settings forKey:@"MediaPlaybackRequiresUserAction"]) {
-        mediaPlaybackRequiresUserAction = [(NSNumber*)[self cordovaSettings:settings forKey:@"MediaPlaybackRequiresUserAction"] boolValue];
+    if (prefObj != nil) {
+        scalesPageToFit = [(NSNumber*)prefObj boolValue];
     }
+    theWebView.scalesPageToFit = scalesPageToFit;
 
-    theWebView.scalesPageToFit = [enableViewportScale boolValue];
+    BOOL allowInlineMediaPlayback = NO; // default
+    prefObj = [self cordovaSettings:settings forKey:@"AllowInlineMediaPlayback"];
+    if (prefObj != nil) {
+        allowInlineMediaPlayback = [(NSNumber*)prefObj boolValue];
+    }
+    theWebView.allowsInlineMediaPlayback = allowInlineMediaPlayback;
 
-    /*
-     * This is for iOS 4.x, where you can allow inline <video> and <audio>, and also autoplay them
-     */
-    if ([allowInlineMediaPlayback boolValue] && [theWebView respondsToSelector:@selector(allowsInlineMediaPlayback)]) {
-        theWebView.allowsInlineMediaPlayback = YES;
+    BOOL mediaPlaybackRequiresUserAction = YES;  // default
+    prefObj = [self cordovaSettings:settings forKey:@"MediaPlaybackRequiresUserAction"];
+    if (prefObj != nil) {
+        mediaPlaybackRequiresUserAction = [(NSNumber*)prefObj boolValue];
     }
-    if ((mediaPlaybackRequiresUserAction == NO) && [theWebView respondsToSelector:@selector(mediaPlaybackRequiresUserAction)]) {
-        theWebView.mediaPlaybackRequiresUserAction = NO;
+    theWebView.mediaPlaybackRequiresUserAction = mediaPlaybackRequiresUserAction;
+
+    BOOL mediaPlaybackAllowsAirPlay = YES;  // default
+    prefObj = [self cordovaSettings:settings forKey:@"MediaPlaybackAllowsAirPlay"];
+    if (prefObj != nil) {
+        mediaPlaybackAllowsAirPlay = [(NSNumber*)prefObj boolValue];
     }
+    theWebView.mediaPlaybackAllowsAirPlay = mediaPlaybackAllowsAirPlay;
 
     // By default, overscroll bouncing is allowed.
     // UIWebViewBounce has been renamed to DisallowOverscroll, but both are checked.
@@ -263,6 +272,13 @@
         }
         theWebView.configuration.suppressesIncrementalRendering = suppressesIncrementalRendering;
 
+        BOOL mediaPlaybackAllowsAirPlay = YES;  // default
+        prefObj = [self cordovaSettings:settings forKey:@"MediaPlaybackAllowsAirPlay"];
+        if (prefObj != nil) {
+            mediaPlaybackAllowsAirPlay = [(NSNumber*)prefObj boolValue];
+        }
+        theWebView.configuration.mediaPlaybackAllowsAirPlay = mediaPlaybackAllowsAirPlay;
+
         /*
         BOOL javaScriptEnabled = YES;  // default value
         if ([self cordovaSettings:settings forKey:@"JavaScriptEnabled"]) {


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[29/50] ios commit: Remove unused code, also pre-iOS 4 only code

Posted by sh...@apache.org.
Remove unused code, also pre-iOS 4 only code


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/6506b22f
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/6506b22f
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/6506b22f

Branch: refs/heads/wkwebview
Commit: 6506b22f71efcbebc8df4a71300203771250caf5
Parents: 7a1d6c8
Author: Shazron Abdullah <sh...@apache.org>
Authored: Tue Oct 21 01:42:17 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Tue Oct 21 01:42:17 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVViewController.m | 17 -----------------
 1 file changed, 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/6506b22f/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index 1e59b1b..9f02d82 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -779,23 +779,6 @@
     [self.commandDelegate evalJs:jsString];
 }
 
-+ (NSString*)resolveImageResource:(NSString*)resource
-{
-    NSString* systemVersion = [[UIDevice currentDevice] systemVersion];
-    BOOL isLessThaniOS4 = ([systemVersion compare:@"4.0" options:NSNumericSearch] == NSOrderedAscending);
-
-    // the iPad image (nor retina) differentiation code was not in 3.x, and we have to explicitly set the path
-    if (isLessThaniOS4) {
-        if (CDV_IsIPad()) {
-            return [NSString stringWithFormat:@"%@~ipad.png", resource];
-        } else {
-            return [NSString stringWithFormat:@"%@.png", resource];
-        }
-    }
-
-    return resource;
-}
-
 + (NSString*)applicationDocumentsDirectory
 {
     NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[28/50] ios commit: CB-7597 - Localizable.strings for Media Capture are in the default template, it should be in the plugin

Posted by sh...@apache.org.
CB-7597 - Localizable.strings for Media Capture are in the default template, it should be in the plugin


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/7a1d6c83
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/7a1d6c83
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/7a1d6c83

Branch: refs/heads/wkwebview
Commit: 7a1d6c833041fa7662cfd87cab3772434a750c12
Parents: c0db638
Author: Shazron Abdullah <sh...@apache.org>
Authored: Mon Oct 20 17:18:49 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Mon Oct 20 17:18:49 2014 -0700

----------------------------------------------------------------------
 .../project/__CLI__.xcodeproj/project.pbxproj   | 77 -------------------
 .../__NON-CLI__.xcodeproj/project.pbxproj       | 79 --------------------
 .../Resources/de.lproj/Localizable.strings      | 28 -------
 .../Resources/en.lproj/Localizable.strings      | 27 -------
 .../Resources/es.lproj/Localizable.strings      | 27 -------
 .../Resources/se.lproj/Localizable.strings      | 28 -------
 6 files changed, 266 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/7a1d6c83/bin/templates/project/__CLI__.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --git a/bin/templates/project/__CLI__.xcodeproj/project.pbxproj b/bin/templates/project/__CLI__.xcodeproj/project.pbxproj
index 2c10f47..9edef21 100755
--- a/bin/templates/project/__CLI__.xcodeproj/project.pbxproj
+++ b/bin/templates/project/__CLI__.xcodeproj/project.pbxproj
@@ -9,7 +9,6 @@
 /* Begin PBXBuildFile section */
 		1D3623260D0F684500981E51 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* AppDelegate.m */; };
 		1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; };
-		1F766FE113BBADB100FB74C0 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1F766FDC13BBADB100FB74C0 /* Localizable.strings */; };
 		288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; };
 		301BF552109A68D80062928A /* libCordova.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 301BF535109A57CC0062928A /* libCordova.a */; };
 		302D95F114D2391D003F00A1 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 302D95EF14D2391D003F00A1 /* MainViewController.m */; };
@@ -24,7 +23,6 @@
 		308D05371370CCF300D202BF /* icon-72.png in Resources */ = {isa = PBXBuildFile; fileRef = 308D052E1370CCF300D202BF /* icon-72.png */; };
 		308D05381370CCF300D202BF /* icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 308D052F1370CCF300D202BF /* icon.png */; };
 		308D05391370CCF300D202BF /* icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 308D05301370CCF300D202BF /* icon@2x.png */; };
-		30A0434814DC770100060A13 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 30A0434314DC770100060A13 /* Localizable.strings */; };
 		30B4F30019D5E07200D9F7D8 /* Default-667h.png in Resources */ = {isa = PBXBuildFile; fileRef = 30B4F2FD19D5E07200D9F7D8 /* Default-667h.png */; };
 		30B4F30119D5E07200D9F7D8 /* Default-736h.png in Resources */ = {isa = PBXBuildFile; fileRef = 30B4F2FE19D5E07200D9F7D8 /* Default-736h.png */; };
 		30B4F30219D5E07200D9F7D8 /* Default-Landscape-736h.png in Resources */ = {isa = PBXBuildFile; fileRef = 30B4F2FF19D5E07200D9F7D8 /* Default-Landscape-736h.png */; };
@@ -84,8 +82,6 @@
 		308D052E1370CCF300D202BF /* icon-72.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon-72.png"; sourceTree = "<group>"; };
 		308D052F1370CCF300D202BF /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = "<group>"; };
 		308D05301370CCF300D202BF /* icon@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon@2x.png"; sourceTree = "<group>"; };
-		30A0434414DC770100060A13 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localizable.strings; sourceTree = "<group>"; };
-		30A0434714DC770100060A13 /* se */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = se; path = Localizable.strings; sourceTree = "<group>"; };
 		30B4F2FD19D5E07200D9F7D8 /* Default-667h.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-667h.png"; sourceTree = "<group>"; };
 		30B4F2FE19D5E07200D9F7D8 /* Default-736h.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-736h.png"; sourceTree = "<group>"; };
 		30B4F2FF19D5E07200D9F7D8 /* Default-Landscape-736h.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-Landscape-736h.png"; sourceTree = "<group>"; };
@@ -147,22 +143,6 @@
 			name = Products;
 			sourceTree = "<group>";
 		};
-		1F766FDB13BBADB100FB74C0 /* en.lproj */ = {
-			isa = PBXGroup;
-			children = (
-				1F766FDC13BBADB100FB74C0 /* Localizable.strings */,
-			);
-			path = en.lproj;
-			sourceTree = "<group>";
-		};
-		1F766FDE13BBADB100FB74C0 /* es.lproj */ = {
-			isa = PBXGroup;
-			children = (
-				1F766FDF13BBADB100FB74C0 /* Localizable.strings */,
-			);
-			path = es.lproj;
-			sourceTree = "<group>";
-		};
 		29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
 			isa = PBXGroup;
 			children = (
@@ -194,10 +174,6 @@
 		29B97317FDCFA39411CA2CEA /* Resources */ = {
 			isa = PBXGroup;
 			children = (
-				30A0434214DC770100060A13 /* de.lproj */,
-				30A0434514DC770100060A13 /* se.lproj */,
-				1F766FDB13BBADB100FB74C0 /* en.lproj */,
-				1F766FDE13BBADB100FB74C0 /* es.lproj */,
 				308D052D1370CCF300D202BF /* icons */,
 				308D05311370CCF300D202BF /* splash */,
 				8D1107310486CEB800E47090 /* __PROJECT_NAME__-Info.plist */,
@@ -271,22 +247,6 @@
 			path = splash;
 			sourceTree = "<group>";
 		};
-		30A0434214DC770100060A13 /* de.lproj */ = {
-			isa = PBXGroup;
-			children = (
-				30A0434314DC770100060A13 /* Localizable.strings */,
-			);
-			path = de.lproj;
-			sourceTree = "<group>";
-		};
-		30A0434514DC770100060A13 /* se.lproj */ = {
-			isa = PBXGroup;
-			children = (
-				30A0434614DC770100060A13 /* Localizable.strings */,
-			);
-			path = se.lproj;
-			sourceTree = "<group>";
-		};
 		EB87FDF11871DA420020F90C /* Staging */ = {
 			isa = PBXGroup;
 			children = (
@@ -376,11 +336,9 @@
 				30B4F30119D5E07200D9F7D8 /* Default-736h.png in Resources */,
 				308D05381370CCF300D202BF /* icon.png in Resources */,
 				308D05391370CCF300D202BF /* icon@2x.png in Resources */,
-				1F766FE113BBADB100FB74C0 /* Localizable.strings in Resources */,
 				302D95F214D2391D003F00A1 /* MainViewController.xib in Resources */,
 				7E7966E01810823500FA85AD /* icon-50.png in Resources */,
 				7E7966E31810823500FA85AD /* icon-60@2x.png in Resources */,
-				30A0434814DC770100060A13 /* Localizable.strings in Resources */,
 				7E7966E61810823500FA85AD /* icon-small.png in Resources */,
 				3088BBBD154F3926009F9C59 /* Default-Landscape@2x~ipad.png in Resources */,
 				3088BBBE154F3926009F9C59 /* Default-Landscape~ipad.png in Resources */,
@@ -442,41 +400,6 @@
 		};
 /* End PBXTargetDependency section */
 
-/* Begin PBXVariantGroup section */
-		1F766FDC13BBADB100FB74C0 /* Localizable.strings */ = {
-			isa = PBXVariantGroup;
-			children = (
-				1F766FDD13BBADB100FB74C0 /* en */,
-			);
-			name = Localizable.strings;
-			sourceTree = "<group>";
-		};
-		1F766FDF13BBADB100FB74C0 /* Localizable.strings */ = {
-			isa = PBXVariantGroup;
-			children = (
-				1F766FE013BBADB100FB74C0 /* es */,
-			);
-			name = Localizable.strings;
-			sourceTree = "<group>";
-		};
-		30A0434314DC770100060A13 /* Localizable.strings */ = {
-			isa = PBXVariantGroup;
-			children = (
-				30A0434414DC770100060A13 /* de */,
-			);
-			name = Localizable.strings;
-			sourceTree = "<group>";
-		};
-		30A0434614DC770100060A13 /* Localizable.strings */ = {
-			isa = PBXVariantGroup;
-			children = (
-				30A0434714DC770100060A13 /* se */,
-			);
-			name = Localizable.strings;
-			sourceTree = "<group>";
-		};
-/* End PBXVariantGroup section */
-
 /* Begin XCBuildConfiguration section */
 		1D6058940D05DD3E006BFB54 /* Debug */ = {
 			isa = XCBuildConfiguration;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/7a1d6c83/bin/templates/project/__NON-CLI__.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --git a/bin/templates/project/__NON-CLI__.xcodeproj/project.pbxproj b/bin/templates/project/__NON-CLI__.xcodeproj/project.pbxproj
index b13d9b8..47db3a2 100755
--- a/bin/templates/project/__NON-CLI__.xcodeproj/project.pbxproj
+++ b/bin/templates/project/__NON-CLI__.xcodeproj/project.pbxproj
@@ -9,7 +9,6 @@
 /* Begin PBXBuildFile section */
 		1D3623260D0F684500981E51 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* AppDelegate.m */; };
 		1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; };
-		1F766FE113BBADB100FB74C0 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1F766FDC13BBADB100FB74C0 /* Localizable.strings */; };
 		288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; };
 		301BF552109A68D80062928A /* libCordova.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 301BF535109A57CC0062928A /* libCordova.a */; };
 		302D95F114D2391D003F00A1 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 302D95EF14D2391D003F00A1 /* MainViewController.m */; };
@@ -25,7 +24,6 @@
 		308D05371370CCF300D202BF /* icon-72.png in Resources */ = {isa = PBXBuildFile; fileRef = 308D052E1370CCF300D202BF /* icon-72.png */; };
 		308D05381370CCF300D202BF /* icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 308D052F1370CCF300D202BF /* icon.png */; };
 		308D05391370CCF300D202BF /* icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 308D05301370CCF300D202BF /* icon@2x.png */; };
-		30A0434814DC770100060A13 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 30A0434314DC770100060A13 /* Localizable.strings */; };
 		30B4F30719D5E08600D9F7D8 /* Default-667h.png in Resources */ = {isa = PBXBuildFile; fileRef = 30B4F30419D5E08600D9F7D8 /* Default-667h.png */; };
 		30B4F30819D5E08600D9F7D8 /* Default-736h.png in Resources */ = {isa = PBXBuildFile; fileRef = 30B4F30519D5E08600D9F7D8 /* Default-736h.png */; };
 		30B4F30919D5E08600D9F7D8 /* Default-Landscape-736h.png in Resources */ = {isa = PBXBuildFile; fileRef = 30B4F30619D5E08600D9F7D8 /* Default-Landscape-736h.png */; };
@@ -65,8 +63,6 @@
 		1D3623240D0F684500981E51 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
 		1D3623250D0F684500981E51 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
 		1D6058910D05DD3D006BFB54 /* __PROJECT_NAME__.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "__PROJECT_NAME__.app"; sourceTree = BUILT_PRODUCTS_DIR; };
-		1F766FDD13BBADB100FB74C0 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = Localizable.strings; sourceTree = "<group>"; };
-		1F766FE013BBADB100FB74C0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = Localizable.strings; sourceTree = "<group>"; };
 		288765FC0DF74451002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
 		29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
 		301BF52D109A57CC0062928A /* CordovaLib.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = CordovaLib.xcodeproj; sourceTree = CORDOVALIB; };
@@ -85,8 +81,6 @@
 		308D052E1370CCF300D202BF /* icon-72.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon-72.png"; sourceTree = "<group>"; };
 		308D052F1370CCF300D202BF /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = "<group>"; };
 		308D05301370CCF300D202BF /* icon@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon@2x.png"; sourceTree = "<group>"; };
-		30A0434414DC770100060A13 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localizable.strings; sourceTree = "<group>"; };
-		30A0434714DC770100060A13 /* se */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = se; path = Localizable.strings; sourceTree = "<group>"; };
 		30B4F30419D5E08600D9F7D8 /* Default-667h.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-667h.png"; sourceTree = "<group>"; };
 		30B4F30519D5E08600D9F7D8 /* Default-736h.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-736h.png"; sourceTree = "<group>"; };
 		30B4F30619D5E08600D9F7D8 /* Default-Landscape-736h.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-Landscape-736h.png"; sourceTree = "<group>"; };
@@ -144,22 +138,6 @@
 			name = Products;
 			sourceTree = "<group>";
 		};
-		1F766FDB13BBADB100FB74C0 /* en.lproj */ = {
-			isa = PBXGroup;
-			children = (
-				1F766FDC13BBADB100FB74C0 /* Localizable.strings */,
-			);
-			path = en.lproj;
-			sourceTree = "<group>";
-		};
-		1F766FDE13BBADB100FB74C0 /* es.lproj */ = {
-			isa = PBXGroup;
-			children = (
-				1F766FDF13BBADB100FB74C0 /* Localizable.strings */,
-			);
-			path = es.lproj;
-			sourceTree = "<group>";
-		};
 		29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
 			isa = PBXGroup;
 			children = (
@@ -189,10 +167,6 @@
 		29B97317FDCFA39411CA2CEA /* Resources */ = {
 			isa = PBXGroup;
 			children = (
-				30A0434214DC770100060A13 /* de.lproj */,
-				30A0434514DC770100060A13 /* se.lproj */,
-				1F766FDB13BBADB100FB74C0 /* en.lproj */,
-				1F766FDE13BBADB100FB74C0 /* es.lproj */,
 				308D052D1370CCF300D202BF /* icons */,
 				308D05311370CCF300D202BF /* splash */,
 				8D1107310486CEB800E47090 /* __PROJECT_NAME__-Info.plist */,
@@ -266,22 +240,6 @@
 			path = splash;
 			sourceTree = "<group>";
 		};
-		30A0434214DC770100060A13 /* de.lproj */ = {
-			isa = PBXGroup;
-			children = (
-				30A0434314DC770100060A13 /* Localizable.strings */,
-			);
-			path = de.lproj;
-			sourceTree = "<group>";
-		};
-		30A0434514DC770100060A13 /* se.lproj */ = {
-			isa = PBXGroup;
-			children = (
-				30A0434614DC770100060A13 /* Localizable.strings */,
-			);
-			path = se.lproj;
-			sourceTree = "<group>";
-		};
 /* End PBXGroup section */
 
 /* Begin PBXNativeTarget section */
@@ -362,11 +320,9 @@
 				30B4F30819D5E08600D9F7D8 /* Default-736h.png in Resources */,
 				308D05381370CCF300D202BF /* icon.png in Resources */,
 				308D05391370CCF300D202BF /* icon@2x.png in Resources */,
-				1F766FE113BBADB100FB74C0 /* Localizable.strings in Resources */,
 				302D95F214D2391D003F00A1 /* MainViewController.xib in Resources */,
 				7E7966E01810823500FA85AD /* icon-50.png in Resources */,
 				7E7966E31810823500FA85AD /* icon-60@2x.png in Resources */,
-				30A0434814DC770100060A13 /* Localizable.strings in Resources */,
 				7E7966E61810823500FA85AD /* icon-small.png in Resources */,
 				3088BBBD154F3926009F9C59 /* Default-Landscape@2x~ipad.png in Resources */,
 				3088BBBE154F3926009F9C59 /* Default-Landscape~ipad.png in Resources */,
@@ -428,41 +384,6 @@
 		};
 /* End PBXTargetDependency section */
 
-/* Begin PBXVariantGroup section */
-		1F766FDC13BBADB100FB74C0 /* Localizable.strings */ = {
-			isa = PBXVariantGroup;
-			children = (
-				1F766FDD13BBADB100FB74C0 /* en */,
-			);
-			name = Localizable.strings;
-			sourceTree = "<group>";
-		};
-		1F766FDF13BBADB100FB74C0 /* Localizable.strings */ = {
-			isa = PBXVariantGroup;
-			children = (
-				1F766FE013BBADB100FB74C0 /* es */,
-			);
-			name = Localizable.strings;
-			sourceTree = "<group>";
-		};
-		30A0434314DC770100060A13 /* Localizable.strings */ = {
-			isa = PBXVariantGroup;
-			children = (
-				30A0434414DC770100060A13 /* de */,
-			);
-			name = Localizable.strings;
-			sourceTree = "<group>";
-		};
-		30A0434614DC770100060A13 /* Localizable.strings */ = {
-			isa = PBXVariantGroup;
-			children = (
-				30A0434714DC770100060A13 /* se */,
-			);
-			name = Localizable.strings;
-			sourceTree = "<group>";
-		};
-/* End PBXVariantGroup section */
-
 /* Begin XCBuildConfiguration section */
 		1D6058940D05DD3E006BFB54 /* Debug */ = {
 			isa = XCBuildConfiguration;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/7a1d6c83/bin/templates/project/__PROJECT_NAME__/Resources/de.lproj/Localizable.strings
----------------------------------------------------------------------
diff --git a/bin/templates/project/__PROJECT_NAME__/Resources/de.lproj/Localizable.strings b/bin/templates/project/__PROJECT_NAME__/Resources/de.lproj/Localizable.strings
deleted file mode 100644
index 945cbc4..0000000
--- a/bin/templates/project/__PROJECT_NAME__/Resources/de.lproj/Localizable.strings
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements.  See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership.  The ASF licenses this file
- to you 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.
- */
-
-
-// controller title for Videos
-"Videos title" = "Videos";
-// accessibility label for recording button
-"toggle audio recording" = "starten/beenden der Tonaufnahme";
-// notification spoken by VoiceOver when timed recording finishes
-"timed recording complete" = "programmierte Aufnahme beendet";
-// accessibility hint for display of recorded elapsed time
-"recorded time in minutes and seconds" = "aufgenommene Zeit in Minuten und Sekunden";

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/7a1d6c83/bin/templates/project/__PROJECT_NAME__/Resources/en.lproj/Localizable.strings
----------------------------------------------------------------------
diff --git a/bin/templates/project/__PROJECT_NAME__/Resources/en.lproj/Localizable.strings b/bin/templates/project/__PROJECT_NAME__/Resources/en.lproj/Localizable.strings
deleted file mode 100644
index a4a049e..0000000
--- a/bin/templates/project/__PROJECT_NAME__/Resources/en.lproj/Localizable.strings
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements.  See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership.  The ASF licenses this file
- to you 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.
- */
-
-// controller title for Videos
-"Videos title" = "Videos";
-// accessibility label for recording button
-"toggle audio recording" = "toggle audio recording";
-// notification spoken by VoiceOver when timed recording finishes
-"timed recording complete" = "timed recording complete";
-// accessibility hint for display of recorded elapsed time
-"recorded time in minutes and seconds" = "recorded time in minutes and seconds";

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/7a1d6c83/bin/templates/project/__PROJECT_NAME__/Resources/es.lproj/Localizable.strings
----------------------------------------------------------------------
diff --git a/bin/templates/project/__PROJECT_NAME__/Resources/es.lproj/Localizable.strings b/bin/templates/project/__PROJECT_NAME__/Resources/es.lproj/Localizable.strings
deleted file mode 100644
index ceade1a..0000000
--- a/bin/templates/project/__PROJECT_NAME__/Resources/es.lproj/Localizable.strings
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements.  See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership.  The ASF licenses this file
- to you 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.
- */
-
-// controller title for Videos
-"Videos title" = "Videos";
-// accessibility label for recording button
-"toggle audio recording" = "grabación de audio cambiar";
-// notification spoken by VoiceOver when timed recording finishes
-"timed recording complete" = "tiempo de grabación completo";
-// accessibility hint for display of recorded elapsed time
-"recorded time in minutes and seconds" = "tiempo registrado en minutos y segundos";

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/7a1d6c83/bin/templates/project/__PROJECT_NAME__/Resources/se.lproj/Localizable.strings
----------------------------------------------------------------------
diff --git a/bin/templates/project/__PROJECT_NAME__/Resources/se.lproj/Localizable.strings b/bin/templates/project/__PROJECT_NAME__/Resources/se.lproj/Localizable.strings
deleted file mode 100644
index aee034d..0000000
--- a/bin/templates/project/__PROJECT_NAME__/Resources/se.lproj/Localizable.strings
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements.  See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership.  The ASF licenses this file
- to you 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.
- */
-
-
-// controller title for Videos
-"Videos title" = "Videor";
-// accessibility label for recording button
-"toggle audio recording" = "börja/avsluta inspelning";
-// notification spoken by VoiceOver when timed recording finishes
-"timed recording complete" = "inspelning har avslutad";
-// accessibility hint for display of recorded elapsed time
-"recorded time in minutes and seconds" = "inspelad tid in minuter och sekund";


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[15/50] ios commit: CB-7813 - CDVWebViewDelegate fails to update the webview state properly in iOS

Posted by sh...@apache.org.
CB-7813 - CDVWebViewDelegate fails to update the webview state properly in iOS

CDVWebViewDelegate fails to update the webview state properly in iOS when a page loads an iframe using javascript and does a redirect to another page using javascript. Method didFailLoadWithError gets called while in STATE_WAITING_FOR_LOAD_START with a NSURLErrorCancelled (-999) error. Instead of entering STATE_CANCELLED in this situation it always enters STATE_IDLE, which causes didFailLoadWithError event to never fire (which depending on the app, and definitely in our case, can cause a hang condition).

For a simplified Cordova project that reproduces the problem in the most straigtforward
way possible, please refer to: https://github.com/greatvines/cordova-webview-state-bug-www

Signed-off-by: Shazron Abdullah <sh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/5de0f3f7
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/5de0f3f7
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/5de0f3f7

Branch: refs/heads/wkwebview
Commit: 5de0f3f7f1d39e5b45909d00862869b4fc245bb3
Parents: 3058347
Author: pbenschop <pb...@cox.net>
Authored: Mon Sep 29 17:31:30 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 15:13:30 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVWebViewDelegate.m | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/5de0f3f7/CordovaLib/Classes/CDVWebViewDelegate.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVWebViewDelegate.m b/CordovaLib/Classes/CDVWebViewDelegate.m
index cdc3980..5a187f4 100644
--- a/CordovaLib/Classes/CDVWebViewDelegate.m
+++ b/CordovaLib/Classes/CDVWebViewDelegate.m
@@ -378,7 +378,11 @@ static NSString *stripFragment(NSString* url)
             break;
 
         case STATE_WAITING_FOR_LOAD_START:
-            _state = STATE_IDLE;
+            if ([error code] == NSURLErrorCancelled) {
+                _state = STATE_CANCELLED;
+            } else {
+                _state = STATE_IDLE;
+            }
             fireCallback = YES;
             break;
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[34/50] ios commit: CB-7872 - XCode 6.1's xcrun PackageApplication fails at packaging / resigning Cordova applications (closes #115)

Posted by sh...@apache.org.
CB-7872 - XCode 6.1's xcrun PackageApplication fails at packaging / resigning Cordova applications (closes #115)

Signed-off-by: Shazron Abdullah <sh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/1d7ed65a
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/1d7ed65a
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/1d7ed65a

Branch: refs/heads/wkwebview
Commit: 1d7ed65ac3b265224cd5c9bd9a3cdfcad2bf9bb2
Parents: a96f059
Author: Sidney Bofah <si...@googlemail.com>
Authored: Sat Oct 25 17:25:42 2014 +0200
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Mon Oct 27 16:44:46 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/build.xcconfig | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1d7ed65a/bin/templates/scripts/cordova/build.xcconfig
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/build.xcconfig b/bin/templates/scripts/cordova/build.xcconfig
index 99231ea..dca8c6c 100644
--- a/bin/templates/scripts/cordova/build.xcconfig
+++ b/bin/templates/scripts/cordova/build.xcconfig
@@ -26,4 +26,7 @@
 // Type of signing identity used for codesigning, resolves to first match of given type.
 // "iPhone Developer": Development builds (default, local only; iOS Development certificate) or "iPhone Distribution": Distribution builds (Adhoc/In-House/AppStore; iOS Distribution certificate)
 CODE_SIGN_IDENTITY = iPhone Developer
-CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer
\ No newline at end of file
+CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer
+
+// (CB-7872) Solution for XCode 6.1 signing errors related to resource envelope format deprecation 
+CODE_SIGN_RESOURCE_RULES_PATH = "$(SDKROOT)/ResourceRules.plist"
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[26/50] ios commit: Suppress output of cordova/lib/start-emulator for harmless message (we don't need to specify a template to Instruments)

Posted by sh...@apache.org.
Suppress output of cordova/lib/start-emulator for harmless message (we don't need to specify a template to Instruments)


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/7cd2e2b9
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/7cd2e2b9
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/7cd2e2b9

Branch: refs/heads/wkwebview
Commit: 7cd2e2b9ee696775a8e01368a7c17c4dad8a37a5
Parents: 5bbfbf8
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 17 16:46:27 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 16:46:27 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/lib/start-emulator | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/7cd2e2b9/bin/templates/scripts/cordova/lib/start-emulator
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/start-emulator b/bin/templates/scripts/cordova/lib/start-emulator
index c300bb3..624335b 100755
--- a/bin/templates/scripts/cordova/lib/start-emulator
+++ b/bin/templates/scripts/cordova/lib/start-emulator
@@ -27,4 +27,4 @@ DEFAULT_TARGET="iPhone 5s"
 TARGET=${1:-$DEFAULT_TARGET}
 LIB_PATH=$( cd "$( dirname "$0" )" && pwd -P)
 
-xcrun instruments -w "$TARGET"
\ No newline at end of file
+xcrun instruments -w "$TARGET" &> /dev/null
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[21/50] ios commit: Add support for the iPod in cordova/lib/list-devices script.

Posted by sh...@apache.org.
Add support for the iPod in cordova/lib/list-devices script.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/b53d21ac
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/b53d21ac
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/b53d21ac

Branch: refs/heads/wkwebview
Commit: b53d21ac4467d04c3a1f48713b7a20c1c65c195f
Parents: 8dd4d6f
Author: Shazron Abdullah <sh...@apache.org>
Authored: Fri Oct 17 16:27:52 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 17 16:27:52 2014 -0700

----------------------------------------------------------------------
 bin/templates/scripts/cordova/lib/list-devices | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/b53d21ac/bin/templates/scripts/cordova/lib/list-devices
----------------------------------------------------------------------
diff --git a/bin/templates/scripts/cordova/lib/list-devices b/bin/templates/scripts/cordova/lib/list-devices
index 80dd3b8..feacfba 100755
--- a/bin/templates/scripts/cordova/lib/list-devices
+++ b/bin/templates/scripts/cordova/lib/list-devices
@@ -20,3 +20,4 @@
 
 system_profiler SPUSBDataType | sed -n -e '/iPad/,/Serial/p' | grep "Serial Number:" | awk -F ": " '{print $2 " iPad"}'
 system_profiler SPUSBDataType | sed -n -e '/iPhone/,/Serial/p' | grep "Serial Number:" | awk -F ": " '{print $2 " iPhone"}'
+system_profiler SPUSBDataType | sed -n -e '/iPod/,/Serial/p' | grep "Serial Number:" | awk -F ": " '{print $2 " iPod"}'


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[40/50] ios commit: Update JS snapshot to version 3.8.0-dev (via coho)

Posted by sh...@apache.org.
Update JS snapshot to version 3.8.0-dev (via coho)


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/5769d58d
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/5769d58d
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/5769d58d

Branch: refs/heads/wkwebview
Commit: 5769d58daf9fee00b12345f34d9f8a1ef88d3f39
Parents: b798680
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Oct 30 11:34:54 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Oct 30 11:34:54 2014 -0700

----------------------------------------------------------------------
 CordovaLib/cordova.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/5769d58d/CordovaLib/cordova.js
----------------------------------------------------------------------
diff --git a/CordovaLib/cordova.js b/CordovaLib/cordova.js
index cc900ac..75729c1 100644
--- a/CordovaLib/cordova.js
+++ b/CordovaLib/cordova.js
@@ -19,7 +19,7 @@
  under the License.
 */
 ;(function() {
-var PLATFORM_VERSION_BUILD_LABEL = '3.7.0-dev';
+var PLATFORM_VERSION_BUILD_LABEL = '3.8.0-dev';
 // file: src/scripts/require.js
 
 /*jshint -W079 */


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[44/50] ios commit: WKWebView - squashed commit.

Posted by sh...@apache.org.
WKWebView - squashed commit.

commit da7a3546f809c331cf230af180b3e6f1fb99cb2b
Author: Shazron Abdullah <sh...@apache.org>
Date:   Thu Jul 10 17:48:15 2014 -0700

    Support alert/confirm/prompt in WKWebView

commit 63552fd3f2548f407aec1bbfda997809d1f2a89d
Author: Shazron Abdullah <sh...@apache.org>
Date:   Thu Jul 10 14:52:44 2014 -0700

    Support config.xml preferences for WKWebView, and style fixups

commit e67e6bf2577c776c887453801af05f973fb90094
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jul 9 18:44:03 2014 -0700

    Use weakSelf in block

commit fc83f068388f3402935819f7891906ffa9029cc1
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jul 9 18:38:30 2014 -0700

    Support config.xml preferences for WKWebView

commit 4eeaf0c8730a30b8709d0d98aba4b2996e34d9f4
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jul 9 18:27:51 2014 -0700

    Break out config.xml preferences for UIWebView (related to WKWebView prefs support)

commit 9ba496297116f20a4ea0d7b83a9f142ceec2bc84
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jul 9 17:51:11 2014 -0700

    Re-add pragma message for iOS 8

commit 2e17db94a87da80a7d50f202eef40178c0a688c0
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jul 9 17:46:00 2014 -0700

    Removed unused WKWebView+Private header

commit 601eea1c8784e1acf00b0a39ca4a3ea5085b2098
Author: Shazron Abdullah <sh...@apache.org>
Date:   Mon Jul 7 15:59:30 2014 -0700

    Removed WKWebView+Private category since the functions it covers are already now in iOS 8 beta 3

commit 69c86d641c8a14e23843566ff2024ce77238fd79
Author: Shazron Abdullah <sh...@apache.org>
Date:   Mon Jun 23 11:59:51 2014 -0700

    Changed @import WebKit back to the old #import (for supporting older IPHONE_OS_DEPLOYMENT_TARGET reasons, bug in Xcode), add #pragma message to add WebKit.framework for iOS 8

commit c133640d264eba5456b3ffd2d3be83e3fd90bf42
Author: Shazron Abdullah <sh...@gmail.com>
Date:   Sat Jun 21 22:14:26 2014 -0700

    Removed WebKit.framework from templates.

commit b4832d132e6628a7ae0ef681eab54554ed913b77
Author: Shazron Abdullah <sh...@gmail.com>
Date:   Sat Jun 21 21:45:10 2014 -0700

    Using @import instead of #import for WebKit, which doesn't require us to list the framework in the project explicitly.
    This gives us a true Xcode 5 / 6 compile solution. HOWEVER there is a bug in Xcode (was there since 5) where if you do an @import for a framework, it won't link if your Deployment Target OS version does not also include the framework itself, when compiling for the Simulator. For example, if you @import WebKit, and build for the Simulator, your Deployment Target MUST be iOS 8.

    The workaround is, this bug does not appear if you build for a device. To make it work for the Simulator, you will have to explicitly add the framework in Build Phases -> Link Binary with Libraries.

commit df3d8391546b2bb6da659ca2102609beb7038f7d
Author: Shazron Abdullah <sh...@gmail.com>
Date:   Sat Jun 21 00:20:36 2014 -0700

    Unified the implementations to switch to WKWebView when available and fall back to UIWebView. The implementation even compiles under Xcode 5.1 -- however, the linker will complain under Xcode 5.1 that WebKit.framework is not available. Just remove the framework in "Link Binary With Libraries" Build Phase and it should run.

commit 52e27adcd4227621d329fea4743be73bfcb7f4bf
Author: Shazron Abdullah <sh...@apache.org>
Date:   Fri Jun 20 16:59:48 2014 -0700

    Re-add deprecated CDVPlugin functions

commit e16e914c3ba2f30324f25da27fbbc0efa9cde727
Merge: f3af6f2 2e1b00c
Author: Shazron Abdullah <sh...@apache.org>
Date:   Fri Jun 20 16:51:54 2014 -0700

    Merge branch 'wkwebview-only' of github.com:shazron/cordova-ios into wkwebview-only

    Conflicts:
    	CordovaLib/Classes/CDVPlugin.h

commit f3af6f2636dad50412da329ce7c21dfaf3717254
Author: Shazron Abdullah <sh...@apache.org>
Date:   Fri Jun 20 16:22:08 2014 -0700

    Changed webView property of CDVPlugin to UIView.

    Plugins need to coerce this into a UIWebView or WKWebView.

commit c33497742cfe9c7f0e2c7c8902b56cf6fba09ad9
Author: Shazron Abdullah <sh...@gmail.com>
Date:   Thu Jun 19 21:39:07 2014 -0700

    Fixed native commands not being called when called in a exec callback

commit b155b5d9e120a1b7ec2d4a8c3950073792281df5
Author: Shazron Abdullah <sh...@apache.org>
Date:   Thu Jun 19 16:22:04 2014 -0700

    Added new cordova.js to support WKWebView Cordova bridge

commit 6a96341da8d0f455ed9f977e6329af6d98c357fe
Author: Shazron Abdullah <sh...@apache.org>
Date:   Thu Jun 19 16:08:30 2014 -0700

    Implemented the WKWebView Cordova bridge.

commit 6eb29c716b8308a7f4824a313a232c7c16f421b8
Author: Shazron Abdullah <sh...@apache.org>
Date:   Thu Jun 19 13:42:49 2014 -0700

    Moved WKScriptMessageHandler to CDVCommandDelegateImpl

commit 374763daf13f73df872a64caa83a7371a0c58542
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jun 18 17:51:51 2014 -0700

    Updated templates for WebKit.framework use

commit be7fd66f708587bee48b9dbbc7c0b57b03002eb2
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jun 18 17:50:28 2014 -0700

    Updated AppDelegate.m to use WKWebView evaluateJavascript (private)

commit 05b5c5912e339d29623de75127c2f162e0c875ed
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jun 18 17:49:54 2014 -0700

    Added WKWebView support (not unified, stripped out UIWebView use)

commit a6ebfb01a7dbad504928b871783f75bbc95e0d85
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jun 18 17:49:00 2014 -0700

    Added WKWebView private functions.

commit 2e1b00cbb92164114db2f30df10b7f0ec918c9bc
Author: Shazron Abdullah <sh...@apache.org>
Date:   Fri Jun 20 16:22:08 2014 -0700

    Changed webView property of CDVPlugin to UIView.

    Plugins need to coerce this into a UIWebView or WKWebView.

commit 867647075c837c3782333eb6b4c865cb70451aa3
Author: Shazron Abdullah <sh...@gmail.com>
Date:   Thu Jun 19 21:39:07 2014 -0700

    Fixed native commands not being called when called in a exec callback

commit ad3ec2937633995309b77bc663ee22e0b07ac667
Author: Shazron Abdullah <sh...@apache.org>
Date:   Thu Jun 19 16:22:04 2014 -0700

    Added new cordova.js to support WKWebView Cordova bridge

commit ede3ad5cef804c67e777c0f2c750712df50883f5
Author: Shazron Abdullah <sh...@apache.org>
Date:   Thu Jun 19 16:08:30 2014 -0700

    Implemented the WKWebView Cordova bridge.

commit c1c39086ab220fcdc5a796b27d38a5d32f7f5f37
Author: Shazron Abdullah <sh...@apache.org>
Date:   Thu Jun 19 13:42:49 2014 -0700

    Moved WKScriptMessageHandler to CDVCommandDelegateImpl

commit 5d2b137645e5fffb460c8e84d16dc8f5d104d085
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jun 18 17:51:51 2014 -0700

    Updated templates for WebKit.framework use

commit 63bf9a7ca03f92f263a3a3d7226512aee784a171
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jun 18 17:50:28 2014 -0700

    Updated AppDelegate.m to use WKWebView evaluateJavascript (private)

commit 23c05db85e57f82a4c6fe03fc5faf49abaf947b8
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jun 18 17:49:54 2014 -0700

    Added WKWebView support (not unified, stripped out UIWebView use)

commit 74a0f4e678e4349849596f23f7f0714aaa574532
Author: Shazron Abdullah <sh...@apache.org>
Date:   Wed Jun 18 17:49:00 2014 -0700

    Added WKWebView private functions.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/1a759ac7
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/1a759ac7
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/1a759ac7

Branch: refs/heads/wkwebview
Commit: 1a759ac7fd7fa24aa658f868dbf413ef8ca34396
Parents: 5769d58
Author: Shazron Abdullah <sh...@apache.org>
Authored: Mon Jul 14 12:03:19 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 31 15:37:43 2014 -0700

----------------------------------------------------------------------
 CordovaLib/CDVWebViewUIDelegate.h               |  35 +++
 CordovaLib/CDVWebViewUIDelegate.m               | 126 +++++++++
 CordovaLib/Classes/CDV.h                        |   2 +
 CordovaLib/Classes/CDVCommandDelegateImpl.h     |   6 +-
 CordovaLib/Classes/CDVCommandDelegateImpl.m     |  37 +--
 CordovaLib/Classes/CDVCommandQueue.m            |  17 +-
 CordovaLib/Classes/CDVPlugin.h                  |   7 +-
 CordovaLib/Classes/CDVPlugin.m                  |   9 +-
 CordovaLib/Classes/CDVViewController.h          |  18 +-
 CordovaLib/Classes/CDVViewController.m          | 250 ++++++------------
 .../Classes/CDVWebViewOperationsDelegate.h      |  39 +++
 .../Classes/CDVWebViewOperationsDelegate.m      |  83 ++++++
 CordovaLib/Classes/CDVWebViewPreferences.h      |  32 +++
 CordovaLib/Classes/CDVWebViewPreferences.m      | 261 +++++++++++++++++++
 CordovaLib/CordovaLib.xcodeproj/project.pbxproj |  26 ++
 CordovaLib/cordova.js                           |   8 +-
 .../project/__CLI__.xcodeproj/project.pbxproj   |   6 +
 .../__NON-CLI__.xcodeproj/project.pbxproj       |   6 +
 .../project/__PROJECT_NAME__/config.xml         |   1 +
 tests/CordovaLibTests/CordovaLibApp/config.xml  |   1 +
 20 files changed, 767 insertions(+), 203 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/CDVWebViewUIDelegate.h
----------------------------------------------------------------------
diff --git a/CordovaLib/CDVWebViewUIDelegate.h b/CordovaLib/CDVWebViewUIDelegate.h
new file mode 100644
index 0000000..9ff2ac1
--- /dev/null
+++ b/CordovaLib/CDVWebViewUIDelegate.h
@@ -0,0 +1,35 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you 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 <Foundation/Foundation.h>
+
+#ifdef __IPHONE_8_0
+    #import <WebKit/WebKit.h>
+#endif
+
+@interface CDVWebViewUIDelegate : NSObject
+#ifdef __IPHONE_8_0
+                                      <WKUIDelegate>
+#endif
+
+@property (nonatomic, copy) NSString* title;
+
+- (instancetype)initWithTitle:(NSString*)title;
+
+@end

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/CDVWebViewUIDelegate.m
----------------------------------------------------------------------
diff --git a/CordovaLib/CDVWebViewUIDelegate.m b/CordovaLib/CDVWebViewUIDelegate.m
new file mode 100644
index 0000000..6f98327
--- /dev/null
+++ b/CordovaLib/CDVWebViewUIDelegate.m
@@ -0,0 +1,126 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you 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 __IPHONE_8_0
+
+#import "CDVWebViewUIDelegate.h"
+
+    @implementation CDVWebViewUIDelegate
+
+    - (instancetype)initWithTitle:(NSString*)title
+    {
+        self = [super init];
+        if (self) {
+            self.title = title;
+        }
+
+        return self;
+    }
+
+    - (void)     webView:(WKWebView*)webView runJavaScriptAlertPanelWithMessage:(NSString*)message
+        initiatedByFrame:(WKFrameInfo*)frame completionHandler:(void (^)())completionHandler
+    {
+        UIAlertController* alert = [UIAlertController alertControllerWithTitle:self.title
+                                                                       message:message
+                                                                preferredStyle:UIAlertControllerStyleAlert];
+
+        UIAlertAction* ok = [UIAlertAction actionWithTitle:NSLocalizedString(@"OK", @"OK")
+                                                     style:UIAlertActionStyleDefault
+                                                   handler:^(UIAlertAction* action)
+            {
+                completionHandler();
+                [alert dismissViewControllerAnimated:YES completion:nil];
+            }];
+
+        [alert addAction:ok];
+
+        UIViewController* rootController = [UIApplication sharedApplication].delegate.window.rootViewController;
+
+        [rootController presentViewController:alert animated:YES completion:nil];
+    }
+
+    - (void)     webView:(WKWebView*)webView runJavaScriptConfirmPanelWithMessage:(NSString*)message
+        initiatedByFrame:(WKFrameInfo*)frame completionHandler:(void (^)(BOOL result))completionHandler
+    {
+        UIAlertController* alert = [UIAlertController alertControllerWithTitle:self.title
+                                                                       message:message
+                                                                preferredStyle:UIAlertControllerStyleAlert];
+
+        UIAlertAction* ok = [UIAlertAction actionWithTitle:NSLocalizedString(@"OK", @"OK")
+                                                     style:UIAlertActionStyleDefault
+                                                   handler:^(UIAlertAction* action)
+            {
+                completionHandler(YES);
+                [alert dismissViewControllerAnimated:YES completion:nil];
+            }];
+
+        [alert addAction:ok];
+
+        UIAlertAction* cancel = [UIAlertAction actionWithTitle:NSLocalizedString(@"Cancel", @"Cancel")
+                                                         style:UIAlertActionStyleDefault
+                                                       handler:^(UIAlertAction* action)
+            {
+                completionHandler(NO);
+                [alert dismissViewControllerAnimated:YES completion:nil];
+            }];
+        [alert addAction:cancel];
+
+        UIViewController* rootController = [UIApplication sharedApplication].delegate.window.rootViewController;
+
+        [rootController presentViewController:alert animated:YES completion:nil];
+    }
+
+    - (void)      webView:(WKWebView*)webView runJavaScriptTextInputPanelWithPrompt:(NSString*)prompt
+              defaultText:(NSString*)defaultText initiatedByFrame:(WKFrameInfo*)frame
+        completionHandler:(void (^)(NSString* result))completionHandler
+    {
+        UIAlertController* alert = [UIAlertController alertControllerWithTitle:self.title
+                                                                       message:prompt
+                                                                preferredStyle:UIAlertControllerStyleAlert];
+
+        UIAlertAction* ok = [UIAlertAction actionWithTitle:NSLocalizedString(@"OK", @"OK")
+                                                     style:UIAlertActionStyleDefault
+                                                   handler:^(UIAlertAction* action)
+            {
+                completionHandler(((UITextField*)alert.textFields[0]).text);
+                [alert dismissViewControllerAnimated:YES completion:nil];
+            }];
+
+        [alert addAction:ok];
+
+        UIAlertAction* cancel = [UIAlertAction actionWithTitle:NSLocalizedString(@"Cancel", @"Cancel")
+                                                         style:UIAlertActionStyleDefault
+                                                       handler:^(UIAlertAction* action)
+            {
+                completionHandler(nil);
+                [alert dismissViewControllerAnimated:YES completion:nil];
+            }];
+        [alert addAction:cancel];
+
+        [alert addTextFieldWithConfigurationHandler:^(UITextField* textField) {
+            textField.text = defaultText;
+        }];
+
+        UIViewController* rootController = [UIApplication sharedApplication].delegate.window.rootViewController;
+
+        [rootController presentViewController:alert animated:YES completion:nil];
+    }
+
+    @end
+#endif /* ifdef __IPHONE_8_0 */

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDV.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDV.h b/CordovaLib/Classes/CDV.h
index 6cf592a..d368961 100644
--- a/CordovaLib/Classes/CDV.h
+++ b/CordovaLib/Classes/CDV.h
@@ -31,6 +31,8 @@
 #import "CDVLocalStorage.h"
 #import "CDVScreenOrientationDelegate.h"
 #import "CDVTimer.h"
+#import "CDVWebViewPreferences.h"
+#import "CDVWebViewOperationsDelegate.h"
 
 #import "NSArray+Comparisons.h"
 #import "NSData+Base64.h"

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVCommandDelegateImpl.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVCommandDelegateImpl.h b/CordovaLib/Classes/CDVCommandDelegateImpl.h
index 0531134..4a74d55 100644
--- a/CordovaLib/Classes/CDVCommandDelegateImpl.h
+++ b/CordovaLib/Classes/CDVCommandDelegateImpl.h
@@ -6,9 +6,9 @@
  to you 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
@@ -24,7 +24,7 @@
 @class CDVCommandQueue;
 
 @interface CDVCommandDelegateImpl : NSObject <CDVCommandDelegate>{
-    @private
+@private
     __weak CDVViewController* _viewController;
     NSRegularExpression* _callbackIdPattern;
     @protected

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVCommandDelegateImpl.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVCommandDelegateImpl.m b/CordovaLib/Classes/CDVCommandDelegateImpl.m
index fc3346d..02e3064 100644
--- a/CordovaLib/Classes/CDVCommandDelegateImpl.m
+++ b/CordovaLib/Classes/CDVCommandDelegateImpl.m
@@ -6,9 +6,9 @@
  to you 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
@@ -48,16 +48,16 @@
     NSBundle* mainBundle = [NSBundle mainBundle];
     NSMutableArray* directoryParts = [NSMutableArray arrayWithArray:[resourcepath componentsSeparatedByString:@"/"]];
     NSString* filename = [directoryParts lastObject];
-
+    
     [directoryParts removeLastObject];
-
+    
     NSString* directoryPartsJoined = [directoryParts componentsJoinedByString:@"/"];
     NSString* directoryStr = _viewController.wwwFolderName;
-
+    
     if ([directoryPartsJoined length] > 0) {
         directoryStr = [NSString stringWithFormat:@"%@/%@", _viewController.wwwFolderName, [directoryParts componentsJoinedByString:@"/"]];
     }
-
+    
     return [mainBundle pathForResource:filename ofType:@"" inDirectory:directoryStr];
 }
 
@@ -71,13 +71,18 @@
 - (void)evalJsHelper2:(NSString*)js
 {
     CDV_EXEC_LOG(@"Exec: evalling: %@", [js substringToIndex:MIN([js length], 160)]);
-    NSString* commandsJSON = [_viewController.webView stringByEvaluatingJavaScriptFromString:js];
-    if ([commandsJSON length] > 0) {
-        CDV_EXEC_LOG(@"Exec: Retrieved new exec messages by chaining.");
-    }
-
-    [_commandQueue enqueueCommandBatch:commandsJSON];
-    [_commandQueue executePending];
+    [_viewController.webViewOperationsDelegate evaluateJavaScript:js completionHandler:^(id obj, NSError* error) {
+        // TODO: obj can be something other than string
+        if ([obj isKindOfClass:[NSString class]]) {
+            NSString* commandsJSON = (NSString*)obj;
+            if ([commandsJSON length] > 0) {
+                CDV_EXEC_LOG(@"Exec: Retrieved new exec messages by chaining.");
+            }
+            
+            [_commandQueue enqueueCommandBatch:commandsJSON];
+            [_commandQueue executePending];
+        }
+    }];
 }
 
 - (void)evalJsHelper:(NSString*)js
@@ -131,9 +136,9 @@
     int status = [result.status intValue];
     BOOL keepCallback = [result.keepCallback boolValue];
     NSString* argumentsAsJSON = [result argumentsAsJSON];
-
+    
     NSString* js = [NSString stringWithFormat:@"cordova.require('cordova/exec').nativeCallback('%@',%d,%@,%d)", callbackId, status, argumentsAsJSON, keepCallback];
-
+    
     [self evalJsHelper:js];
 }
 
@@ -170,7 +175,7 @@
 - (BOOL)URLIsWhitelisted:(NSURL*)url
 {
     return ![_viewController.whitelist schemeIsAllowed:[url scheme]] ||
-           [_viewController.whitelist URLIsAllowed:url logFailure:NO];
+    [_viewController.whitelist URLIsAllowed:url logFailure:NO];
 }
 
 - (NSDictionary*)settings

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVCommandQueue.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVCommandQueue.m b/CordovaLib/Classes/CDVCommandQueue.m
index 1eddfe3..b4f1fa6 100644
--- a/CordovaLib/Classes/CDVCommandQueue.m
+++ b/CordovaLib/Classes/CDVCommandQueue.m
@@ -109,9 +109,22 @@ static const double MAX_EXECUTION_TIME = .008; // Half of a 60fps frame.
 
 - (void)fetchCommandsFromJs
 {
+    NSString* js = @"cordova.require('cordova/exec').nativeFetchMessages()";
+    SEL ui_selector = NSSelectorFromString(@"stringByEvaluatingJavaScriptFromString:");
+
     // Grab all the queued commands from the JS side.
-    NSString* queuedCommandsJSON = [_viewController.webView stringByEvaluatingJavaScriptFromString:
-        @"cordova.require('cordova/exec').nativeFetchMessages()"];
+    NSInvocation* invocation = [NSInvocation invocationWithMethodSignature:
+        [[_viewController.webView class] instanceMethodSignatureForSelector:ui_selector]];
+
+    [invocation setSelector:ui_selector];
+    [invocation setTarget:_viewController.webView];
+    // arguments 0 and 1 are self and _cmd respectively, automatically set by NSInvocation
+    [invocation setArgument:&(js) atIndex:2];
+
+    [invocation invoke];
+
+    NSString* queuedCommandsJSON;
+    [invocation getReturnValue:&(queuedCommandsJSON)];
 
     CDV_EXEC_LOG(@"Exec: Flushed JS->native queue (hadCommands=%d).", [queuedCommandsJSON length] > 0);
     [self enqueueCommandBatch:queuedCommandsJSON];

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVPlugin.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVPlugin.h b/CordovaLib/Classes/CDVPlugin.h
index 5e8b283..35d4cc2 100644
--- a/CordovaLib/Classes/CDVPlugin.h
+++ b/CordovaLib/Classes/CDVPlugin.h
@@ -22,6 +22,9 @@
 #import "CDVPluginResult.h"
 #import "NSMutableArray+QueueAdditions.h"
 #import "CDVCommandDelegate.h"
+#ifdef __IPHONE_8_0
+    #import <WebKit/WebKit.h>
+#endif
 
 extern NSString* const CDVPageDidLoadNotification;
 extern NSString* const CDVPluginHandleOpenURLNotification;
@@ -32,13 +35,13 @@ extern NSString* const CDVRemoteNotificationError;
 
 @interface CDVPlugin : NSObject {}
 
-@property (nonatomic, weak) UIWebView* webView;
+@property (nonatomic, weak) UIView* webView;
 @property (nonatomic, weak) UIViewController* viewController;
 @property (nonatomic, weak) id <CDVCommandDelegate> commandDelegate;
 
 @property (readonly, assign) BOOL hasPendingOperation;
 
-- (CDVPlugin*)initWithWebView:(UIWebView*)theWebView;
+- (instancetype)initWithWebView:(UIView*)theWebView;
 - (void)pluginInitialize;
 
 - (void)handleOpenURL:(NSNotification*)notification;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVPlugin.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVPlugin.m b/CordovaLib/Classes/CDVPlugin.m
index ea81ddd..5f90311 100644
--- a/CordovaLib/Classes/CDVPlugin.m
+++ b/CordovaLib/Classes/CDVPlugin.m
@@ -18,6 +18,7 @@
  */
 
 #import "CDVPlugin.h"
+#import "CDVViewController.h"
 
 NSString* const CDVPageDidLoadNotification = @"CDVPageDidLoadNotification";
 NSString* const CDVPluginHandleOpenURLNotification = @"CDVPluginHandleOpenURLNotification";
@@ -36,12 +37,12 @@ NSString* const CDVRemoteNotificationError = @"CDVRemoteNotificationError";
 @synthesize webView, viewController, commandDelegate, hasPendingOperation;
 
 // Do not override these methods. Use pluginInitialize instead.
-- (CDVPlugin*)initWithWebView:(UIWebView*)theWebView settings:(NSDictionary*)classSettings
+- (instancetype)initWithWebView:(UIView*)theWebView settings:(NSDictionary*)classSettings
 {
     return [self initWithWebView:theWebView];
 }
 
-- (CDVPlugin*)initWithWebView:(UIWebView*)theWebView
+- (instancetype)initWithWebView:(UIView*)theWebView
 {
     self = [super init];
     if (self) {
@@ -130,7 +131,9 @@ NSString* const CDVRemoteNotificationError = @"CDVRemoteNotificationError";
 
 - (NSString*)writeJavascript:(NSString*)javascript
 {
-    return [self.webView stringByEvaluatingJavaScriptFromString:javascript];
+    // TODO: although deprecated, should have some solution here instead of removing it
+    [((CDVViewController*)self.viewController).webViewOperationsDelegate evaluateJavaScript : javascript completionHandler : nil]; // bad cast, but ok for now
+    return @"";
 }
 
 - (NSString*)success:(CDVPluginResult*)pluginResult callbackId:(NSString*)callbackId

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVViewController.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.h b/CordovaLib/Classes/CDVViewController.h
index 51863a5..7bc005a 100644
--- a/CordovaLib/Classes/CDVViewController.h
+++ b/CordovaLib/Classes/CDVViewController.h
@@ -26,8 +26,19 @@
 #import "CDVWhitelist.h"
 #import "CDVScreenOrientationDelegate.h"
 #import "CDVPlugin.h"
+#import "CDVWebViewOperationsDelegate.h"
+#ifdef __IPHONE_8_0
+    #import <WebKit/WebKit.h>
+#else
+    @protocol WKScriptMessageHandler
+    @end
+#endif
 
-@interface CDVViewController : UIViewController <UIWebViewDelegate, CDVScreenOrientationDelegate>{
+@protocol WKScriptMessageHandler;
+
+@interface CDVViewController : UIViewController <UIWebViewDelegate, CDVScreenOrientationDelegate, WKScriptMessageHandler>{
+    @protected
+    CDVWebViewOperationsDelegate* _webViewOperationsDelegate;
     @protected
     id <CDVCommandDelegate> _commandDelegate;
     @protected
@@ -35,7 +46,7 @@
     NSString* _userAgent;
 }
 
-@property (nonatomic, strong) IBOutlet UIWebView* webView;
+@property (nonatomic, strong) IBOutlet UIView* webView;
 
 @property (nonatomic, readonly, strong) NSMutableDictionary* pluginObjects;
 @property (nonatomic, readonly, strong) NSDictionary* pluginsMap;
@@ -47,6 +58,7 @@
 @property (nonatomic, readwrite, copy) NSString* wwwFolderName;
 @property (nonatomic, readwrite, copy) NSString* startPage;
 @property (nonatomic, readonly, strong) CDVCommandQueue* commandQueue;
+@property (nonatomic, readonly, strong) CDVWebViewOperationsDelegate* webViewOperationsDelegate;
 @property (nonatomic, readonly, strong) id <CDVCommandDelegate> commandDelegate;
 
 /**
@@ -66,7 +78,7 @@
 
 - (void)printMultitaskingInfo;
 - (void)createGapView;
-- (UIWebView*)newCordovaViewWithFrame:(CGRect)bounds;
+- (UIView*)newCordovaViewWithFrame:(CGRect)bounds;
 
 - (void)javascriptAlert:(NSString*)text;
 - (NSString*)appURLScheme;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index eb056ce..6730239 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -23,6 +23,7 @@
 #import "CDVConfigParser.h"
 #import "CDVUserAgentUtil.h"
 #import "CDVWebViewDelegate.h"
+#import "CDVWebViewUIDelegate.h"
 #import <AVFoundation/AVFoundation.h>
 
 #define degreesToRadian(x) (M_PI * (x) / 180.0)
@@ -30,6 +31,7 @@
 @interface CDVViewController () {
     NSInteger _userAgentLockToken;
     CDVWebViewDelegate* _webViewDelegate;
+    CDVWebViewUIDelegate* _webViewUIDelegate;
 }
 
 @property (nonatomic, readwrite, strong) NSXMLParser* configParser;
@@ -55,6 +57,7 @@
 @synthesize wwwFolderName, startPage, initialized, openURL, baseUserAgent;
 @synthesize commandDelegate = _commandDelegate;
 @synthesize commandQueue = _commandQueue;
+@synthesize webViewOperationsDelegate = _webViewOperationsDelegate;
 
 - (void)__init
 {
@@ -279,22 +282,15 @@
 
     // Configure WebView
     _webViewDelegate = [[CDVWebViewDelegate alloc] initWithDelegate:self];
-    self.webView.delegate = _webViewDelegate;
+    if ([webView respondsToSelector:@selector(setDelegate:)]) {
+        [webView setValue:_webViewDelegate forKey:@"delegate"];
+    }
 
     // register this viewcontroller with the NSURLProtocol, only after the User-Agent is set
     [CDVURLProtocol registerViewController:self];
 
     // /////////////////
 
-    NSString* enableViewportScale = [self settingForKey:@"EnableViewportScale"];
-    NSNumber* allowInlineMediaPlayback = [self settingForKey:@"AllowInlineMediaPlayback"];
-    BOOL mediaPlaybackRequiresUserAction = YES;  // default value
-    if ([self settingForKey:@"MediaPlaybackRequiresUserAction"]) {
-        mediaPlaybackRequiresUserAction = [(NSNumber*)[self settingForKey:@"MediaPlaybackRequiresUserAction"] boolValue];
-    }
-
-    self.webView.scalesPageToFit = [enableViewportScale boolValue];
-
     /*
      * Fire up CDVLocalStorage to work-around WebKit storage limitations: on all iOS 5.1+ versions for local-only backups, but only needed on iOS 5.1 for cloud backup.
      */
@@ -303,150 +299,8 @@
         [self registerPlugin:[[CDVLocalStorage alloc] initWithWebView:self.webView] withClassName:NSStringFromClass([CDVLocalStorage class])];
     }
 
-    /*
-     * This is for iOS 4.x, where you can allow inline <video> and <audio>, and also autoplay them
-     */
-    if ([allowInlineMediaPlayback boolValue] && [self.webView respondsToSelector:@selector(allowsInlineMediaPlayback)]) {
-        self.webView.allowsInlineMediaPlayback = YES;
-    }
-    if ((mediaPlaybackRequiresUserAction == NO) && [self.webView respondsToSelector:@selector(mediaPlaybackRequiresUserAction)]) {
-        self.webView.mediaPlaybackRequiresUserAction = NO;
-    }
-
-    // By default, overscroll bouncing is allowed.
-    // UIWebViewBounce has been renamed to DisallowOverscroll, but both are checked.
-    BOOL bounceAllowed = YES;
-    NSNumber* disallowOverscroll = [self settingForKey:@"DisallowOverscroll"];
-    if (disallowOverscroll == nil) {
-        NSNumber* bouncePreference = [self settingForKey:@"UIWebViewBounce"];
-        bounceAllowed = (bouncePreference == nil || [bouncePreference boolValue]);
-    } else {
-        bounceAllowed = ![disallowOverscroll boolValue];
-    }
-
-    // prevent webView from bouncing
-    // based on the DisallowOverscroll/UIWebViewBounce key in config.xml
-    if (!bounceAllowed) {
-        if ([self.webView respondsToSelector:@selector(scrollView)]) {
-            ((UIScrollView*)[self.webView scrollView]).bounces = NO;
-        } else {
-            for (id subview in self.webView.subviews) {
-                if ([[subview class] isSubclassOfClass:[UIScrollView class]]) {
-                    ((UIScrollView*)subview).bounces = NO;
-                }
-            }
-        }
-    }
-
-    NSString* decelerationSetting = [self settingForKey:@"UIWebViewDecelerationSpeed"];
-    if (![@"fast" isEqualToString:decelerationSetting]) {
-        [self.webView.scrollView setDecelerationRate:UIScrollViewDecelerationRateNormal];
-    }
-
-    /*
-     * iOS 6.0 UIWebView properties
-     */
-    if (IsAtLeastiOSVersion(@"6.0")) {
-        BOOL keyboardDisplayRequiresUserAction = YES; // KeyboardDisplayRequiresUserAction - defaults to YES
-        if ([self settingForKey:@"KeyboardDisplayRequiresUserAction"] != nil) {
-            if ([self settingForKey:@"KeyboardDisplayRequiresUserAction"]) {
-                keyboardDisplayRequiresUserAction = [(NSNumber*)[self settingForKey:@"KeyboardDisplayRequiresUserAction"] boolValue];
-            }
-        }
-
-        // property check for compiling under iOS < 6
-        if ([self.webView respondsToSelector:@selector(setKeyboardDisplayRequiresUserAction:)]) {
-            [self.webView setValue:[NSNumber numberWithBool:keyboardDisplayRequiresUserAction] forKey:@"keyboardDisplayRequiresUserAction"];
-        }
-
-        BOOL suppressesIncrementalRendering = NO; // SuppressesIncrementalRendering - defaults to NO
-        if ([self settingForKey:@"SuppressesIncrementalRendering"] != nil) {
-            if ([self settingForKey:@"SuppressesIncrementalRendering"]) {
-                suppressesIncrementalRendering = [(NSNumber*)[self settingForKey:@"SuppressesIncrementalRendering"] boolValue];
-            }
-        }
-
-        // property check for compiling under iOS < 6
-        if ([self.webView respondsToSelector:@selector(setSuppressesIncrementalRendering:)]) {
-            [self.webView setValue:[NSNumber numberWithBool:suppressesIncrementalRendering] forKey:@"suppressesIncrementalRendering"];
-        }
-    }
-
-    /*
-     * iOS 7.0 UIWebView properties
-     */
-    if (IsAtLeastiOSVersion(@"7.0")) {
-        SEL ios7sel = nil;
-        id prefObj = nil;
-
-        CGFloat gapBetweenPages = 0.0; // default
-        prefObj = [self settingForKey:@"GapBetweenPages"];
-        if (prefObj != nil) {
-            gapBetweenPages = [prefObj floatValue];
-        }
-
-        // property check for compiling under iOS < 7
-        ios7sel = NSSelectorFromString(@"setGapBetweenPages:");
-        if ([self.webView respondsToSelector:ios7sel]) {
-            [self.webView setValue:[NSNumber numberWithFloat:gapBetweenPages] forKey:@"gapBetweenPages"];
-        }
-
-        CGFloat pageLength = 0.0; // default
-        prefObj = [self settingForKey:@"PageLength"];
-        if (prefObj != nil) {
-            pageLength = [[self settingForKey:@"PageLength"] floatValue];
-        }
-
-        // property check for compiling under iOS < 7
-        ios7sel = NSSelectorFromString(@"setPageLength:");
-        if ([self.webView respondsToSelector:ios7sel]) {
-            [self.webView setValue:[NSNumber numberWithBool:pageLength] forKey:@"pageLength"];
-        }
-
-        NSInteger paginationBreakingMode = 0; // default - UIWebPaginationBreakingModePage
-        prefObj = [self settingForKey:@"PaginationBreakingMode"];
-        if (prefObj != nil) {
-            NSArray* validValues = @[@"page", @"column"];
-            NSString* prefValue = [validValues objectAtIndex:0];
-
-            if ([prefObj isKindOfClass:[NSString class]]) {
-                prefValue = prefObj;
-            }
-
-            paginationBreakingMode = [validValues indexOfObject:[prefValue lowercaseString]];
-            if (paginationBreakingMode == NSNotFound) {
-                paginationBreakingMode = 0;
-            }
-        }
-
-        // property check for compiling under iOS < 7
-        ios7sel = NSSelectorFromString(@"setPaginationBreakingMode:");
-        if ([self.webView respondsToSelector:ios7sel]) {
-            [self.webView setValue:[NSNumber numberWithInteger:paginationBreakingMode] forKey:@"paginationBreakingMode"];
-        }
-
-        NSInteger paginationMode = 0; // default - UIWebPaginationModeUnpaginated
-        prefObj = [self settingForKey:@"PaginationMode"];
-        if (prefObj != nil) {
-            NSArray* validValues = @[@"unpaginated", @"lefttoright", @"toptobottom", @"bottomtotop", @"righttoleft"];
-            NSString* prefValue = [validValues objectAtIndex:0];
-
-            if ([prefObj isKindOfClass:[NSString class]]) {
-                prefValue = prefObj;
-            }
-
-            paginationMode = [validValues indexOfObject:[prefValue lowercaseString]];
-            if (paginationMode == NSNotFound) {
-                paginationMode = 0;
-            }
-        }
-
-        // property check for compiling under iOS < 7
-        ios7sel = NSSelectorFromString(@"setPaginationMode:");
-        if ([self.webView respondsToSelector:ios7sel]) {
-            [self.webView setValue:[NSNumber numberWithInteger:paginationMode] forKey:@"paginationMode"];
-        }
-    }
+    CDVWebViewPreferences* prefs = [[CDVWebViewPreferences alloc] initWithWebView:webView];
+    [prefs updateSettings:self.settings];
 
     if ([self.startupPluginNames count] > 0) {
         [CDVTimer start:@"TotalPluginStartup"];
@@ -468,7 +322,7 @@
         [CDVUserAgentUtil setUserAgent:self.userAgent lockToken:lockToken];
         if (appURL) {
             NSURLRequest* appReq = [NSURLRequest requestWithURL:appURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:20.0];
-            [self.webView loadRequest:appReq];
+            [_webViewOperationsDelegate loadRequest:appReq];
         } else {
             NSString* loadErr = [NSString stringWithFormat:@"ERROR: Start Page at '%@/%@' was not found.", self.wwwFolderName, self.startPage];
             NSLog(@"%@", loadErr);
@@ -479,8 +333,8 @@
                 NSLog(@"%@", [errorUrl absoluteString]);
                 [self.webView loadRequest:[NSURLRequest requestWithURL:errorUrl]];
             } else {
-                NSString* html = [NSString stringWithFormat:@"<html><body> %@ </body></html>", loadErr];
-                [self.webView loadHTMLString:html baseURL:nil];
+            NSString* html = [NSString stringWithFormat:@"<html><body> %@ </body></html>", loadErr];
+            [_webViewOperationsDelegate loadHTMLString:html baseURL:nil];
             }
         }
     }];
@@ -545,20 +399,22 @@
     }
 }
 
-- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
+- (void)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation completionHandler:(void (^)(BOOL))completionHandler
 {
     // First, ask the webview via JS if it supports the new orientation
     NSString* jsCall = [NSString stringWithFormat:
         @"window.shouldRotateToOrientation && window.shouldRotateToOrientation(%ld);"
         , (long)[self mapIosOrientationToJsOrientation:interfaceOrientation]];
-    NSString* res = [webView stringByEvaluatingJavaScriptFromString:jsCall];
+    __weak CDVViewController* weakSelf = self;
 
-    if ([res length] > 0) {
-        return [res boolValue];
-    }
-
-    // if js did not handle the new orientation (no return value), use values from the plist (via supportedOrientations)
-    return [self supportsOrientation:interfaceOrientation];
+    [_webViewOperationsDelegate evaluateJavaScript:jsCall completionHandler:^(NSString* obj, NSError* error) {
+        if ([obj length] > 0) {
+            completionHandler([obj boolValue]);
+        } else {
+            // if js did not handle the new orientation (no return value), use values from the plist (via supportedOrientations)
+            completionHandler([weakSelf supportsOrientation:interfaceOrientation]);
+        }
+    }];
 }
 
 - (BOOL)shouldAutorotate
@@ -591,9 +447,37 @@
     return [self.supportedOrientations containsObject:[NSNumber numberWithInt:orientation]];
 }
 
-- (UIWebView*)newCordovaViewWithFrame:(CGRect)bounds
+- (UIView*)newCordovaViewWithFrame:(CGRect)bounds
 {
-    return [[UIWebView alloc] initWithFrame:bounds];
+    UIView* cordovaView = nil;
+    BOOL useWKWebView = NO;  // default value
+
+    if ([self settingForKey:@"UseWKWebView"]) {
+        useWKWebView = [(NSNumber*)[self settingForKey:@"UseWKWebView"] boolValue];
+    }
+
+    if (NSClassFromString(@"WKWebView") && useWKWebView) {
+#ifdef __IPHONE_8_0
+            WKUserContentController* userContentController = [[WKUserContentController alloc] init];
+
+            // scriptMessageHandler is the object that conforms to the WKScriptMessageHandler protocol
+            // see https://developer.apple.com/library/prerelease/ios/documentation/WebKit/Reference/WKScriptMessageHandler_Ref/index.html#//apple_ref/swift/intf/WKScriptMessageHandler
+            if ([_commandDelegate conformsToProtocol:@protocol(WKScriptMessageHandler)]) {
+                [userContentController addScriptMessageHandler:self name:@"cordova"];
+            }
+
+            WKWebViewConfiguration* configuration = [[WKWebViewConfiguration alloc] init];
+            configuration.userContentController = userContentController;
+
+            cordovaView = [[WKWebView alloc] initWithFrame:bounds configuration:configuration];
+            _webViewUIDelegate = [[CDVWebViewUIDelegate alloc] initWithTitle:[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleDisplayName"]];
+            ((WKWebView*)cordovaView).UIDelegate = _webViewUIDelegate;
+#endif
+    } else {
+        cordovaView = [[UIWebView alloc] initWithFrame:bounds];
+    }
+
+    return cordovaView;
 }
 
 - (NSString*)userAgent
@@ -619,6 +503,7 @@
 
     self.webView = [self newCordovaViewWithFrame:webViewBounds];
     self.webView.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight);
+    _webViewOperationsDelegate = [[CDVWebViewOperationsDelegate alloc] initWithWebView:self.webView];
 
     [self.view addSubview:self.webView];
     [self.view sendSubviewToBack:self.webView];
@@ -654,7 +539,9 @@
     // Release any retained subviews of the main view.
     // e.g. self.myOutlet = nil;
 
-    self.webView.delegate = nil;
+    if ([webView respondsToSelector:@selector(setDelegate:)]) {
+        [webView setValue:nil forKey:@"delegate"];
+    }
     self.webView = nil;
     [CDVUserAgentUtil releaseLock:&_userAgentLockToken];
 
@@ -1002,10 +889,25 @@
 {
     if (self.openURL) {
         [self processOpenUrl:self.openURL pageLoaded:YES];
+        NSString* jsString = [NSString stringWithFormat:@"handleOpenURL(\"%@\");", [self.openURL description]];
+        [_webViewOperationsDelegate evaluateJavaScript:jsString completionHandler:nil];
         self.openURL = nil;
     }
 }
 
+#pragma mark WKScriptMessageHandler implementation
+
+#ifdef __IPHONE_8_0
+    - (void)userContentController:(WKUserContentController*)userContentController didReceiveScriptMessage:(WKScriptMessage*)message
+    {
+        if (![message.name isEqualToString:@"cordova"]) {
+            return;
+        }
+
+        NSArray* jsonEntry = message.body; // NSString:callbackId, NSString:service, NSString:action, NSArray:args
+        CDVInvokedUrlCommand* command = [CDVInvokedUrlCommand commandFromJson:jsonEntry];
+        CDV_EXEC_LOG(@"Exec(%@): Calling %@.%@", command.callbackId, command.className, command.methodName);
+
 - (void)processOpenUrl:(NSURL*)url pageLoaded:(BOOL)pageLoaded
 {
     if (!pageLoaded) {
@@ -1015,16 +917,17 @@
     }
 
     if (pageLoaded) {
-        // calls into javascript global function 'handleOpenURL'
+                DLog(@"FAILED pluginJSON = %@", commandString);
         NSString* jsString = [NSString stringWithFormat:@"if (typeof handleOpenURL === 'function') { handleOpenURL(\"%@\");}", url];
-        [self.webView stringByEvaluatingJavaScriptFromString:jsString];
+    #endif
+        }
     } else {
         // save for when page has loaded
         self.openURL = url;
     }
 }
 
-- (void)processOpenUrl:(NSURL*)url
+#endif /* ifdef __IPHONE_8_0 */
 {
     [self processOpenUrl:url pageLoaded:NO];
 }
@@ -1036,7 +939,10 @@
     [CDVURLProtocol unregisterViewController:self];
     [[NSNotificationCenter defaultCenter] removeObserver:self];
 
-    self.webView.delegate = nil;
+    if ([webView respondsToSelector:@selector(setDelegate:)]) {
+        [webView setValue:nil forKey:@"delegate"];
+    }
+
     self.webView = nil;
     [CDVUserAgentUtil releaseLock:&_userAgentLockToken];
     [_commandQueue dispose];

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVWebViewOperationsDelegate.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVWebViewOperationsDelegate.h b/CordovaLib/Classes/CDVWebViewOperationsDelegate.h
new file mode 100644
index 0000000..34330a1
--- /dev/null
+++ b/CordovaLib/Classes/CDVWebViewOperationsDelegate.h
@@ -0,0 +1,39 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you 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 <Foundation/Foundation.h>
+#import <UIKit/UIKit.h>
+
+#ifdef __IPHONE_8_0
+#pragma message("For iOS 8 - Please add WebKit.framework into your 'Link Binary with Libraries' Build Phase Project Setting. This will be baked in once Xcode 6 is required.")
+#endif /* ifdef __IPHONE_8_0 */
+
+
+@interface CDVWebViewOperationsDelegate : NSObject {
+    @private
+    __weak UIView* _webView;
+}
+
+- (instancetype) initWithWebView:(UIView*)webView;
+
+- (void)loadRequest:(NSURLRequest*)request;
+- (void)loadHTMLString:(NSString*)string baseURL:(NSURL*)baseURL;
+- (void)evaluateJavaScript:(NSString*)javaScriptString completionHandler:(void (^)(id, NSError*))completionHandler;
+
+@end

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVWebViewOperationsDelegate.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVWebViewOperationsDelegate.m b/CordovaLib/Classes/CDVWebViewOperationsDelegate.m
new file mode 100644
index 0000000..d243aba
--- /dev/null
+++ b/CordovaLib/Classes/CDVWebViewOperationsDelegate.m
@@ -0,0 +1,83 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you 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 <objc/message.h>
+#import "CDVWebViewOperationsDelegate.h"
+
+@implementation CDVWebViewOperationsDelegate
+
+- (instancetype) initWithWebView:(UIView*)webView
+{
+    self = [super init];
+    if (self) {
+        Class wk_class = NSClassFromString(@"WKWebView");
+        if ( !([webView isKindOfClass:wk_class] || [webView isKindOfClass:[UIWebView class]] )) {
+            return nil;
+        }
+        _webView = webView;
+    }
+    
+    return self;
+}
+
+- (void)loadRequest:(NSURLRequest*)request
+{
+    SEL selector = NSSelectorFromString(@"loadRequest:");
+    if ([_webView respondsToSelector:selector]) {
+        // UIKit operations have to be on the main thread. and this method is synchronous
+        [_webView performSelectorOnMainThread:selector withObject:request waitUntilDone:YES];
+    }
+}
+
+- (void)loadHTMLString:(NSString*)string baseURL:(NSURL*)baseURL
+{
+    SEL selector = NSSelectorFromString(@"loadHTMLString:baseURL:");
+
+    dispatch_block_t invoke = ^(void) {
+        ((void (*)(id, SEL, id, id))objc_msgSend)(_webView, selector, string, baseURL);
+    };
+    
+    if ([_webView respondsToSelector:selector]) {
+        // UIKit operations have to be on the main thread.
+        // perform a synchronous invoke on the main thread without deadlocking
+        if ([NSThread isMainThread]) {
+            invoke();
+        } else {
+            dispatch_sync(dispatch_get_main_queue(), invoke);
+        }
+    }
+}
+
+- (void)evaluateJavaScript:(NSString*)javaScriptString completionHandler:(void (^)(id, NSError*))completionHandler
+{
+    SEL ui_sel = NSSelectorFromString(@"stringByEvaluatingJavaScriptFromString:");
+    SEL wk_sel = NSSelectorFromString(@"evaluateJavaScript:completionHandler:");
+
+    // UIKit operations have to be on the main thread. This method does not need to be synchronous
+    dispatch_async(dispatch_get_main_queue(), ^{
+        if ([_webView respondsToSelector:ui_sel]) {
+            NSString* ret = ((NSString* (*)(id, SEL, id))objc_msgSend)(_webView, ui_sel, javaScriptString);
+            completionHandler(ret, nil);
+        } else if ([_webView respondsToSelector:wk_sel]) {
+            ((void (*)(id, SEL, id, id))objc_msgSend)(_webView, wk_sel, javaScriptString, completionHandler);
+        }
+    });
+}
+
+@end

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVWebViewPreferences.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVWebViewPreferences.h b/CordovaLib/Classes/CDVWebViewPreferences.h
new file mode 100644
index 0000000..5058eef
--- /dev/null
+++ b/CordovaLib/Classes/CDVWebViewPreferences.h
@@ -0,0 +1,32 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you 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 <Foundation/Foundation.h>
+#import <UIKit/UIKit.h>
+
+@interface CDVWebViewPreferences: NSObject {
+    @private
+    __weak UIView* _webView;
+}
+
+- (instancetype) initWithWebView:(UIView*)webView;
+- (void) updateSettings:(NSDictionary*)settings;
+
+
+@end

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/Classes/CDVWebViewPreferences.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVWebViewPreferences.m b/CordovaLib/Classes/CDVWebViewPreferences.m
new file mode 100644
index 0000000..a42b3aa
--- /dev/null
+++ b/CordovaLib/Classes/CDVWebViewPreferences.m
@@ -0,0 +1,261 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you 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 "CDVWebViewPreferences.h"
+#import "CDVAvailability.h"
+#import <objc/message.h>
+
+#ifdef __IPHONE_8_0
+    #import <WebKit/WebKit.h>
+#endif /* ifdef __IPHONE_8_0 */
+
+@implementation CDVWebViewPreferences
+
+- (instancetype)initWithWebView:(UIView*)webView
+{
+    self = [super init];
+    if (self) {
+        Class wk_class = NSClassFromString(@"WKWebView");
+        if (!([webView isKindOfClass:wk_class] || [webView isKindOfClass:[UIWebView class]])) {
+            return nil;
+        }
+        _webView = webView;
+    }
+
+    return self;
+}
+
+- (void)updateSettings:(NSDictionary*)settings
+{
+    Class wk_class = NSClassFromString(@"WKWebView");
+    SEL ui_sel = NSSelectorFromString(@"updateUIWebView:settings:");
+    SEL wk_sel = NSSelectorFromString(@"updateWKWebView:settings:");
+
+    __weak id weakSelf = self;
+
+    dispatch_block_t invoke = ^(void) {
+        if ([_webView isKindOfClass:[UIWebView class]] && [weakSelf respondsToSelector:ui_sel]) {
+            ((void (*)(id, SEL, id, id))objc_msgSend)(weakSelf, ui_sel, _webView, settings);
+        } else if ([_webView isKindOfClass:wk_class] && [weakSelf respondsToSelector:wk_sel]) {
+            ((void (*)(id, SEL, id, id))objc_msgSend)(weakSelf, wk_sel, _webView, settings);
+        }
+    };
+
+    // UIKit operations have to be on the main thread.
+    // perform a synchronous invoke on the main thread without deadlocking
+    if ([NSThread isMainThread]) {
+        invoke();
+    } else {
+        dispatch_sync(dispatch_get_main_queue(), invoke);
+    }
+}
+
+- (id)cordovaSettings:(NSDictionary*)settings forKey:(NSString*)key
+{
+    return [settings objectForKey:[key lowercaseString]];
+}
+
+- (void)updateUIWebView:(UIWebView*)theWebView settings:(NSDictionary*)settings
+{
+    NSString* enableViewportScale = [self cordovaSettings:settings forKey:@"EnableViewportScale"];
+    NSNumber* allowInlineMediaPlayback = [self cordovaSettings:settings forKey:@"AllowInlineMediaPlayback"];
+    BOOL mediaPlaybackRequiresUserAction = YES;  // default value
+
+    if ([self cordovaSettings:settings forKey:@"MediaPlaybackRequiresUserAction"]) {
+        mediaPlaybackRequiresUserAction = [(NSNumber*)[self cordovaSettings:settings forKey:@"MediaPlaybackRequiresUserAction"] boolValue];
+    }
+
+    theWebView.scalesPageToFit = [enableViewportScale boolValue];
+
+    /*
+     * This is for iOS 4.x, where you can allow inline <video> and <audio>, and also autoplay them
+     */
+    if ([allowInlineMediaPlayback boolValue] && [theWebView respondsToSelector:@selector(allowsInlineMediaPlayback)]) {
+        theWebView.allowsInlineMediaPlayback = YES;
+    }
+    if ((mediaPlaybackRequiresUserAction == NO) && [theWebView respondsToSelector:@selector(mediaPlaybackRequiresUserAction)]) {
+        theWebView.mediaPlaybackRequiresUserAction = NO;
+    }
+
+    // By default, overscroll bouncing is allowed.
+    // UIWebViewBounce has been renamed to DisallowOverscroll, but both are checked.
+    BOOL bounceAllowed = YES;
+    NSNumber* disallowOverscroll = [self cordovaSettings:settings forKey:@"DisallowOverscroll"];
+    if (disallowOverscroll == nil) {
+        NSNumber* bouncePreference = [self cordovaSettings:settings forKey:@"UIWebViewBounce"];
+        bounceAllowed = (bouncePreference == nil || [bouncePreference boolValue]);
+    } else {
+        bounceAllowed = ![disallowOverscroll boolValue];
+    }
+
+    // prevent webView from bouncing
+    // based on the DisallowOverscroll/UIWebViewBounce key in config.xml
+    if (!bounceAllowed) {
+        if ([theWebView respondsToSelector:@selector(scrollView)]) {
+            ((UIScrollView*)[theWebView scrollView]).bounces = NO;
+        } else {
+            for (id subview in theWebView.subviews) {
+                if ([[subview class] isSubclassOfClass:[UIScrollView class]]) {
+                    ((UIScrollView*)subview).bounces = NO;
+                }
+            }
+        }
+    }
+
+    NSString* decelerationSetting = [self cordovaSettings:settings forKey:@"UIWebViewDecelerationSpeed"];
+    if (![@"fast" isEqualToString : decelerationSetting]) {
+        [theWebView.scrollView setDecelerationRate:UIScrollViewDecelerationRateNormal];
+    }
+
+    /*
+     * iOS 6.0 UIWebView properties
+     */
+    if (IsAtLeastiOSVersion(@"6.0")) {
+        BOOL keyboardDisplayRequiresUserAction = YES; // KeyboardDisplayRequiresUserAction - defaults to YES
+        if ([self cordovaSettings:settings forKey:@"KeyboardDisplayRequiresUserAction"] != nil) {
+            if ([self cordovaSettings:settings forKey:@"KeyboardDisplayRequiresUserAction"]) {
+                keyboardDisplayRequiresUserAction = [(NSNumber*)[self cordovaSettings:settings forKey:@"KeyboardDisplayRequiresUserAction"] boolValue];
+            }
+        }
+
+        // property check for compiling under iOS < 6
+        if ([theWebView respondsToSelector:@selector(setKeyboardDisplayRequiresUserAction:)]) {
+            [theWebView setValue:[NSNumber numberWithBool:keyboardDisplayRequiresUserAction] forKey:@"keyboardDisplayRequiresUserAction"];
+        }
+
+        BOOL suppressesIncrementalRendering = NO; // SuppressesIncrementalRendering - defaults to NO
+        if ([self cordovaSettings:settings forKey:@"SuppressesIncrementalRendering"] != nil) {
+            if ([self cordovaSettings:settings forKey:@"SuppressesIncrementalRendering"]) {
+                suppressesIncrementalRendering = [(NSNumber*)[self cordovaSettings:settings forKey:@"SuppressesIncrementalRendering"] boolValue];
+            }
+        }
+
+        // property check for compiling under iOS < 6
+        if ([theWebView respondsToSelector:@selector(setSuppressesIncrementalRendering:)]) {
+            [theWebView setValue:[NSNumber numberWithBool:suppressesIncrementalRendering] forKey:@"suppressesIncrementalRendering"];
+        }
+    }
+
+    /*
+     * iOS 7.0 UIWebView properties
+     */
+    if (IsAtLeastiOSVersion(@"7.0")) {
+        SEL ios7sel = nil;
+        id prefObj = nil;
+
+        CGFloat gapBetweenPages = 0.0; // default
+        prefObj = [self cordovaSettings:settings forKey:@"GapBetweenPages"];
+        if (prefObj != nil) {
+            gapBetweenPages = [prefObj floatValue];
+        }
+
+        // property check for compiling under iOS < 7
+        ios7sel = NSSelectorFromString(@"setGapBetweenPages:");
+        if ([theWebView respondsToSelector:ios7sel]) {
+            [theWebView setValue:[NSNumber numberWithFloat:gapBetweenPages] forKey:@"gapBetweenPages"];
+        }
+
+        CGFloat pageLength = 0.0; // default
+        prefObj = [self cordovaSettings:settings forKey:@"PageLength"];
+        if (prefObj != nil) {
+            pageLength = [[self cordovaSettings:settings forKey:@"PageLength"] floatValue];
+        }
+
+        // property check for compiling under iOS < 7
+        ios7sel = NSSelectorFromString(@"setPageLength:");
+        if ([theWebView respondsToSelector:ios7sel]) {
+            [theWebView setValue:[NSNumber numberWithBool:pageLength] forKey:@"pageLength"];
+        }
+
+        NSInteger paginationBreakingMode = 0; // default - UIWebPaginationBreakingModePage
+        prefObj = [self cordovaSettings:settings forKey:@"PaginationBreakingMode"];
+        if (prefObj != nil) {
+            NSArray* validValues = @[@"page", @"column"];
+            NSString* prefValue = [validValues objectAtIndex:0];
+
+            if ([prefObj isKindOfClass:[NSString class]]) {
+                prefValue = prefObj;
+            }
+
+            paginationBreakingMode = [validValues indexOfObject:[prefValue lowercaseString]];
+            if (paginationBreakingMode == NSNotFound) {
+                paginationBreakingMode = 0;
+            }
+        }
+
+        // property check for compiling under iOS < 7
+        ios7sel = NSSelectorFromString(@"setPaginationBreakingMode:");
+        if ([theWebView respondsToSelector:ios7sel]) {
+            [theWebView setValue:[NSNumber numberWithInteger:paginationBreakingMode] forKey:@"paginationBreakingMode"];
+        }
+
+        NSInteger paginationMode = 0; // default - UIWebPaginationModeUnpaginated
+        prefObj = [self cordovaSettings:settings forKey:@"PaginationMode"];
+        if (prefObj != nil) {
+            NSArray* validValues = @[@"unpaginated", @"lefttoright", @"toptobottom", @"bottomtotop", @"righttoleft"];
+            NSString* prefValue = [validValues objectAtIndex:0];
+
+            if ([prefObj isKindOfClass:[NSString class]]) {
+                prefValue = prefObj;
+            }
+
+            paginationMode = [validValues indexOfObject:[prefValue lowercaseString]];
+            if (paginationMode == NSNotFound) {
+                paginationMode = 0;
+            }
+        }
+
+        // property check for compiling under iOS < 7
+        ios7sel = NSSelectorFromString(@"setPaginationMode:");
+        if ([theWebView respondsToSelector:ios7sel]) {
+            [theWebView setValue:[NSNumber numberWithInteger:paginationMode] forKey:@"paginationMode"];
+        }
+    }
+}
+
+#ifdef __IPHONE_8_0
+
+    - (void)updateWKWebView:(WKWebView*)theWebView settings:(NSDictionary*)settings
+    {
+        id prefObj = nil;
+
+        CGFloat minimumFontSize = 0.0; // default
+
+        prefObj = [self cordovaSettings:settings forKey:@"MinimumFontSize"];
+        if (prefObj != nil) {
+            minimumFontSize = [[self cordovaSettings:settings forKey:@"MinimumFontSize"] floatValue];
+        }
+        theWebView.configuration.preferences.minimumFontSize = minimumFontSize;
+
+        /*
+        BOOL javaScriptEnabled = YES;  // default value
+        if ([self cordovaSettings:settings forKey:@"JavaScriptEnabled"]) {
+            javaScriptEnabled = [(NSNumber*)[self cordovaSettings:settings forKey:@"JavaScriptEnabled"] boolValue];
+        }
+        theWebView.configuration.preferences.javaScriptEnabled = javaScriptEnabled;
+
+        BOOL javaScriptCanOpenWindowsAutomatically = NO;  // default value
+        if ([self cordovaSettings:settings forKey:@"JavaScriptEnabled"]) {
+            javaScriptCanOpenWindowsAutomatically = [(NSNumber*)[self cordovaSettings:settings forKey:@"JavaScriptEnabled"] boolValue];
+        }
+        theWebView.configuration.preferences.javaScriptCanOpenWindowsAutomatically = javaScriptCanOpenWindowsAutomatically;
+         */
+    }
+#endif /* ifdef __IPHONE_8_0 */
+
+@end

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/CordovaLib.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --git a/CordovaLib/CordovaLib.xcodeproj/project.pbxproj b/CordovaLib/CordovaLib.xcodeproj/project.pbxproj
index 63c294c..941fa15 100644
--- a/CordovaLib/CordovaLib.xcodeproj/project.pbxproj
+++ b/CordovaLib/CordovaLib.xcodeproj/project.pbxproj
@@ -12,8 +12,10 @@
 		1F92F4A11314023E0046367C /* CDVPluginResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F92F49F1314023E0046367C /* CDVPluginResult.m */; };
 		301F2F2A14F3C9CA003FE9FC /* CDV.h in Headers */ = {isa = PBXBuildFile; fileRef = 301F2F2914F3C9CA003FE9FC /* CDV.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		302965BC13A94E9D007046C5 /* CDVDebug.h in Headers */ = {isa = PBXBuildFile; fileRef = 302965BB13A94E9D007046C5 /* CDVDebug.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		302D72FC19554BFC0028C99F /* CDVWebViewOperationsDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 302D72FA19554BFC0028C99F /* CDVWebViewOperationsDelegate.m */; };
 		3034979C1513D56A0090E688 /* CDVLocalStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = 3034979A1513D56A0090E688 /* CDVLocalStorage.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		3034979E1513D56A0090E688 /* CDVLocalStorage.m in Sources */ = {isa = PBXBuildFile; fileRef = 3034979B1513D56A0090E688 /* CDVLocalStorage.m */; };
+		303820731955603600C91592 /* CDVWebViewOperationsDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 302D72F919554BFC0028C99F /* CDVWebViewOperationsDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		30392E4E14F4FCAB00B9E0B8 /* CDVAvailability.h in Headers */ = {isa = PBXBuildFile; fileRef = 30392E4D14F4FCAB00B9E0B8 /* CDVAvailability.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		3062D120151D0EDB000D9128 /* UIDevice+Extensions.h in Headers */ = {isa = PBXBuildFile; fileRef = 3062D11E151D0EDB000D9128 /* UIDevice+Extensions.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		3062D122151D0EDB000D9128 /* UIDevice+Extensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 3062D11F151D0EDB000D9128 /* UIDevice+Extensions.m */; };
@@ -31,7 +33,11 @@
 		30F5EBAB14CA26E700987760 /* CDVCommandDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 30F5EBA914CA26E700987760 /* CDVCommandDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		7E14B5A81705050A0032169E /* CDVTimer.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E14B5A61705050A0032169E /* CDVTimer.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		7E14B5A91705050A0032169E /* CDVTimer.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E14B5A71705050A0032169E /* CDVTimer.m */; };
+		7E785B9A196F508900ABBDC8 /* CDVWebViewUIDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E785B98196F508900ABBDC8 /* CDVWebViewUIDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		7E785B9B196F508900ABBDC8 /* CDVWebViewUIDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E785B99196F508900ABBDC8 /* CDVWebViewUIDelegate.m */; };
+		7EE9ECF819525D24004CA6B9 /* CDVWebViewPreferences.h in Headers */ = {isa = PBXBuildFile; fileRef = 7EE9ECF619525D24004CA6B9 /* CDVWebViewPreferences.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		7E22B88519E4C0210026F95E /* CDVAvailabilityDeprecated.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E22B88419E4C0210026F95E /* CDVAvailabilityDeprecated.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		7EE9ECF919525D24004CA6B9 /* CDVWebViewPreferences.m in Sources */ = {isa = PBXBuildFile; fileRef = 7EE9ECF719525D24004CA6B9 /* CDVWebViewPreferences.m */; };
 		8852C43A14B65FD800F0E735 /* CDVViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 8852C43614B65FD800F0E735 /* CDVViewController.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		8852C43C14B65FD800F0E735 /* CDVViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8852C43714B65FD800F0E735 /* CDVViewController.m */; };
 		8887FD681090FBE7009987E8 /* NSDictionary+Extensions.h in Headers */ = {isa = PBXBuildFile; fileRef = 8887FD281090FBE7009987E8 /* NSDictionary+Extensions.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -60,6 +66,8 @@
 		1F92F49F1314023E0046367C /* CDVPluginResult.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CDVPluginResult.m; path = Classes/CDVPluginResult.m; sourceTree = "<group>"; };
 		301F2F2914F3C9CA003FE9FC /* CDV.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDV.h; path = Classes/CDV.h; sourceTree = "<group>"; };
 		302965BB13A94E9D007046C5 /* CDVDebug.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVDebug.h; path = Classes/CDVDebug.h; sourceTree = "<group>"; };
+		302D72F919554BFC0028C99F /* CDVWebViewOperationsDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVWebViewOperationsDelegate.h; path = Classes/CDVWebViewOperationsDelegate.h; sourceTree = "<group>"; };
+		302D72FA19554BFC0028C99F /* CDVWebViewOperationsDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CDVWebViewOperationsDelegate.m; path = Classes/CDVWebViewOperationsDelegate.m; sourceTree = "<group>"; };
 		30325A0B136B343700982B63 /* VERSION */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = VERSION; sourceTree = "<group>"; };
 		3034979A1513D56A0090E688 /* CDVLocalStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVLocalStorage.h; path = Classes/CDVLocalStorage.h; sourceTree = "<group>"; };
 		3034979B1513D56A0090E688 /* CDVLocalStorage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CDVLocalStorage.m; path = Classes/CDVLocalStorage.m; sourceTree = "<group>"; };
@@ -92,7 +100,11 @@
 		68A32D7414103017006B237C /* AddressBook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBook.framework; path = System/Library/Frameworks/AddressBook.framework; sourceTree = SDKROOT; };
 		7E14B5A61705050A0032169E /* CDVTimer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVTimer.h; path = Classes/CDVTimer.h; sourceTree = "<group>"; };
 		7E14B5A71705050A0032169E /* CDVTimer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CDVTimer.m; path = Classes/CDVTimer.m; sourceTree = "<group>"; };
+		7E785B98196F508900ABBDC8 /* CDVWebViewUIDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDVWebViewUIDelegate.h; sourceTree = "<group>"; };
+		7E785B99196F508900ABBDC8 /* CDVWebViewUIDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDVWebViewUIDelegate.m; sourceTree = "<group>"; };
+		7EE9ECF619525D24004CA6B9 /* CDVWebViewPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVWebViewPreferences.h; path = Classes/CDVWebViewPreferences.h; sourceTree = "<group>"; };
 		7E22B88419E4C0210026F95E /* CDVAvailabilityDeprecated.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVAvailabilityDeprecated.h; path = Classes/CDVAvailabilityDeprecated.h; sourceTree = "<group>"; };
+		7EE9ECF719525D24004CA6B9 /* CDVWebViewPreferences.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CDVWebViewPreferences.m; path = Classes/CDVWebViewPreferences.m; sourceTree = "<group>"; };
 		8220B5C316D5427E00EC3921 /* AssetsLibrary.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AssetsLibrary.framework; path = System/Library/Frameworks/AssetsLibrary.framework; sourceTree = SDKROOT; };
 		8852C43614B65FD800F0E735 /* CDVViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVViewController.h; path = Classes/CDVViewController.h; sourceTree = "<group>"; };
 		8852C43714B65FD800F0E735 /* CDVViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CDVViewController.m; path = Classes/CDVViewController.m; sourceTree = "<group>"; };
@@ -176,6 +188,12 @@
 				8852C43714B65FD800F0E735 /* CDVViewController.m */,
 				EB3B3545161CB44D003DBE7D /* CDVCommandQueue.h */,
 				EB3B3546161CB44D003DBE7D /* CDVCommandQueue.m */,
+				7EE9ECF619525D24004CA6B9 /* CDVWebViewPreferences.h */,
+				7EE9ECF719525D24004CA6B9 /* CDVWebViewPreferences.m */,
+				302D72F919554BFC0028C99F /* CDVWebViewOperationsDelegate.h */,
+				302D72FA19554BFC0028C99F /* CDVWebViewOperationsDelegate.m */,
+				7E785B98196F508900ABBDC8 /* CDVWebViewUIDelegate.h */,
+				7E785B99196F508900ABBDC8 /* CDVWebViewUIDelegate.m */,
 			);
 			name = Cleaver;
 			sourceTree = "<group>";
@@ -282,8 +300,11 @@
 				F858FBC6166009A8007DA594 /* CDVConfigParser.h in Headers */,
 				30F3930B169F839700B22307 /* CDVJSON.h in Headers */,
 				EBFF4DBD16D3FE2E008F452B /* CDVWebViewDelegate.h in Headers */,
+				7EE9ECF819525D24004CA6B9 /* CDVWebViewPreferences.h in Headers */,
 				EB96673B16A8970A00D86CDF /* CDVUserAgentUtil.h in Headers */,
 				7E14B5A81705050A0032169E /* CDVTimer.h in Headers */,
+				7E785B9A196F508900ABBDC8 /* CDVWebViewUIDelegate.h in Headers */,
+				303820731955603600C91592 /* CDVWebViewOperationsDelegate.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -345,6 +366,7 @@
 				8887FD751090FBE7009987E8 /* CDVInvokedUrlCommand.m in Sources */,
 				8887FD901090FBE7009987E8 /* NSData+Base64.m in Sources */,
 				1F92F4A11314023E0046367C /* CDVPluginResult.m in Sources */,
+				7EE9ECF919525D24004CA6B9 /* CDVWebViewPreferences.m in Sources */,
 				30E33AF313A7E24B00594D64 /* CDVPlugin.m in Sources */,
 				30E563D013E217EC00C949AA /* NSMutableArray+QueueAdditions.m in Sources */,
 				30C684821406CB38004C1A8E /* CDVWhitelist.m in Sources */,
@@ -357,9 +379,11 @@
 				EB3B357D161F2A45003DBE7D /* CDVCommandDelegateImpl.m in Sources */,
 				F858FBC7166009A8007DA594 /* CDVConfigParser.m in Sources */,
 				30F3930C169F839700B22307 /* CDVJSON.m in Sources */,
+				7E785B9B196F508900ABBDC8 /* CDVWebViewUIDelegate.m in Sources */,
 				EB96673C16A8970A00D86CDF /* CDVUserAgentUtil.m in Sources */,
 				EBFF4DBC16D3FE2E008F452B /* CDVWebViewDelegate.m in Sources */,
 				7E14B5A91705050A0032169E /* CDVTimer.m in Sources */,
+				302D72FC19554BFC0028C99F /* CDVWebViewOperationsDelegate.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -370,6 +394,7 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ENABLE_MODULES = YES;
 				CLANG_ENABLE_OBJC_ARC = YES;
 				COPY_PHASE_STRIP = NO;
 				DSTROOT = "/tmp/$(PROJECT_NAME).dst";
@@ -393,6 +418,7 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ENABLE_MODULES = YES;
 				CLANG_ENABLE_OBJC_ARC = YES;
 				DSTROOT = "/tmp/$(PROJECT_NAME).dst";
 				GCC_MODEL_TUNING = G5;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/CordovaLib/cordova.js
----------------------------------------------------------------------
diff --git a/CordovaLib/cordova.js b/CordovaLib/cordova.js
index 75729c1..36dfa1b 100644
--- a/CordovaLib/cordova.js
+++ b/CordovaLib/cordova.js
@@ -925,13 +925,17 @@ function convertMessageToArgsNativeToJs(message) {
 
 function iOSExec() {
     if (bridgeMode === undefined) {
+        if (navigator.userAgent) {
+            bridgeMode = navigator.userAgent.indexOf(' 5_') == -1 ? jsToNativeModes.IFRAME_NAV: jsToNativeModes.XHR_NO_PAYLOAD;
+		} else {
         bridgeMode = jsToNativeModes.IFRAME_NAV;
+        }
     }
 
     if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.cordova && window.webkit.messageHandlers.cordova.postMessage) {
         bridgeMode = jsToNativeModes.WK_WEBVIEW_BINDING;
     }
-
+    
     var successCallback, failCallback, service, action, actionArgs, splitCommand;
     var callbackId = null;
     if (typeof arguments[0] !== "string") {
@@ -1802,4 +1806,4 @@ window.cordova = require('cordova');
 
 require('cordova/init');
 
-})();
\ No newline at end of file
+})();

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/bin/templates/project/__CLI__.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --git a/bin/templates/project/__CLI__.xcodeproj/project.pbxproj b/bin/templates/project/__CLI__.xcodeproj/project.pbxproj
index 9edef21..100a9ea 100755
--- a/bin/templates/project/__CLI__.xcodeproj/project.pbxproj
+++ b/bin/templates/project/__CLI__.xcodeproj/project.pbxproj
@@ -99,6 +99,7 @@
 		7E7966DB1810823500FA85AD /* icon-76@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon-76@2x.png"; sourceTree = "<group>"; };
 		7E7966DC1810823500FA85AD /* icon-small.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon-small.png"; sourceTree = "<group>"; };
 		7E7966DD1810823500FA85AD /* icon-small@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon-small@2x.png"; sourceTree = "<group>"; };
+		7ED68E4519526A5A00B0A8AF /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; };
 		8D1107310486CEB800E47090 /* __PROJECT_NAME__-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "__PROJECT_NAME__-Info.plist"; path = "../__PROJECT_NAME__-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = "<group>"; };
 		D4A0D8751607E02300AEF8BB /* Default-568h@2x~iphone.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x~iphone.png"; sourceTree = "<group>"; };
 		EB87FDF21871DA7A0020F90C /* merges */ = {isa = PBXFileReference; lastKnownFileType = folder; name = merges; path = ../../merges; sourceTree = "<group>"; };
@@ -185,6 +186,7 @@
 		29B97323FDCFA39411CA2CEA /* Frameworks */ = {
 			isa = PBXGroup;
 			children = (
+				7ED68E4519526A5A00B0A8AF /* WebKit.framework */,
 				5B1594DC16A7569C00FEF299 /* AssetsLibrary.framework */,
 				288765FC0DF74451002DB57D /* CoreGraphics.framework */,
 				305D5FD0115AB8F900A74A75 /* MobileCoreServices.framework */,
@@ -405,6 +407,7 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ENABLE_MODULES = YES;
 				CLANG_ENABLE_OBJC_ARC = YES;
 				COPY_PHASE_STRIP = NO;
 				GCC_DYNAMIC_NO_PIC = NO;
@@ -436,6 +439,7 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ENABLE_MODULES = YES;
 				CLANG_ENABLE_OBJC_ARC = YES;
 				COPY_PHASE_STRIP = YES;
 				GCC_PRECOMPILE_PREFIX_HEADER = YES;
@@ -464,6 +468,7 @@
 		C01FCF4F08A954540054247B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
+				CLANG_ENABLE_MODULES = YES;
 				CLANG_ENABLE_OBJC_ARC = YES;
 				CLANG_WARN_BOOL_CONVERSION = YES;
 				CLANG_WARN_CONSTANT_CONVERSION = YES;
@@ -508,6 +513,7 @@
 		C01FCF5008A954540054247B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
+				CLANG_ENABLE_MODULES = YES;
 				CLANG_ENABLE_OBJC_ARC = YES;
 				CLANG_WARN_BOOL_CONVERSION = YES;
 				CLANG_WARN_CONSTANT_CONVERSION = YES;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/bin/templates/project/__NON-CLI__.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --git a/bin/templates/project/__NON-CLI__.xcodeproj/project.pbxproj b/bin/templates/project/__NON-CLI__.xcodeproj/project.pbxproj
index 47db3a2..c48f3ed 100755
--- a/bin/templates/project/__NON-CLI__.xcodeproj/project.pbxproj
+++ b/bin/templates/project/__NON-CLI__.xcodeproj/project.pbxproj
@@ -97,6 +97,7 @@
 		7E7966DB1810823500FA85AD /* icon-76@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon-76@2x.png"; sourceTree = "<group>"; };
 		7E7966DC1810823500FA85AD /* icon-small.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon-small.png"; sourceTree = "<group>"; };
 		7E7966DD1810823500FA85AD /* icon-small@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon-small@2x.png"; sourceTree = "<group>"; };
+		7EFADAF51952687D00F28308 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; };
 		8D1107310486CEB800E47090 /* __PROJECT_NAME__-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "__PROJECT_NAME__-Info.plist"; path = "../__PROJECT_NAME__-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = "<group>"; };
 		D4A0D8751607E02300AEF8BB /* Default-568h@2x~iphone.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x~iphone.png"; sourceTree = "<group>"; };
 		F840E1F0165FE0F500CFE078 /* config.xml */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = config.xml; path = "__PROJECT_NAME__/config.xml"; sourceTree = "<group>"; };
@@ -178,6 +179,7 @@
 		29B97323FDCFA39411CA2CEA /* Frameworks */ = {
 			isa = PBXGroup;
 			children = (
+				7EFADAF51952687D00F28308 /* WebKit.framework */,
 				5B1594DC16A7569C00FEF299 /* AssetsLibrary.framework */,
 				288765FC0DF74451002DB57D /* CoreGraphics.framework */,
 				305D5FD0115AB8F900A74A75 /* MobileCoreServices.framework */,
@@ -389,6 +391,7 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ENABLE_MODULES = YES;
 				CLANG_ENABLE_OBJC_ARC = YES;
 				COPY_PHASE_STRIP = NO;
 				GCC_DYNAMIC_NO_PIC = NO;
@@ -420,6 +423,7 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ENABLE_MODULES = YES;
 				CLANG_ENABLE_OBJC_ARC = YES;
 				COPY_PHASE_STRIP = YES;
 				GCC_PRECOMPILE_PREFIX_HEADER = YES;
@@ -448,6 +452,7 @@
 		C01FCF4F08A954540054247B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
+				CLANG_ENABLE_MODULES = YES;
 				CLANG_ENABLE_OBJC_ARC = YES;
 				CLANG_WARN_BOOL_CONVERSION = YES;
 				CLANG_WARN_CONSTANT_CONVERSION = YES;
@@ -492,6 +497,7 @@
 		C01FCF5008A954540054247B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
+				CLANG_ENABLE_MODULES = YES;
 				CLANG_ENABLE_OBJC_ARC = YES;
 				CLANG_WARN_BOOL_CONVERSION = YES;
 				CLANG_WARN_CONSTANT_CONVERSION = YES;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/bin/templates/project/__PROJECT_NAME__/config.xml
----------------------------------------------------------------------
diff --git a/bin/templates/project/__PROJECT_NAME__/config.xml b/bin/templates/project/__PROJECT_NAME__/config.xml
index 1fcc8d7..da6c067 100644
--- a/bin/templates/project/__PROJECT_NAME__/config.xml
+++ b/bin/templates/project/__PROJECT_NAME__/config.xml
@@ -36,6 +36,7 @@
     <content src="index.html" />
 
     <!-- Preferences for iOS -->
+    <preference name="UseWKWebView" value="false" />
     <preference name="AllowInlineMediaPlayback" value="false" />
     <preference name="BackupWebStorage" value="cloud" />
     <preference name="DisallowOverscroll" value="false" />

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1a759ac7/tests/CordovaLibTests/CordovaLibApp/config.xml
----------------------------------------------------------------------
diff --git a/tests/CordovaLibTests/CordovaLibApp/config.xml b/tests/CordovaLibTests/CordovaLibApp/config.xml
index 1fcc8d7..da6c067 100644
--- a/tests/CordovaLibTests/CordovaLibApp/config.xml
+++ b/tests/CordovaLibTests/CordovaLibApp/config.xml
@@ -36,6 +36,7 @@
     <content src="index.html" />
 
     <!-- Preferences for iOS -->
+    <preference name="UseWKWebView" value="false" />
     <preference name="AllowInlineMediaPlayback" value="false" />
     <preference name="BackupWebStorage" value="cloud" />
     <preference name="DisallowOverscroll" value="false" />


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[47/50] ios commit: Added logs to show if you are using a WKWebView or UIWebView.

Posted by sh...@apache.org.
Added logs to show if you are using a WKWebView or UIWebView.


Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/1c1e9c30
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/1c1e9c30
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/1c1e9c30

Branch: refs/heads/wkwebview
Commit: 1c1e9c30d7bed52d8d9dce93717e03f587df26c4
Parents: b3fbd85
Author: Shazron Abdullah <sh...@apache.org>
Authored: Wed Aug 13 23:29:25 2014 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Fri Oct 31 15:37:43 2014 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVViewController.m | 2 ++
 1 file changed, 2 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/1c1e9c30/CordovaLib/Classes/CDVViewController.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVViewController.m b/CordovaLib/Classes/CDVViewController.m
index 6730239..4f81e92 100644
--- a/CordovaLib/Classes/CDVViewController.m
+++ b/CordovaLib/Classes/CDVViewController.m
@@ -470,11 +470,13 @@
             configuration.userContentController = userContentController;
 
             cordovaView = [[WKWebView alloc] initWithFrame:bounds configuration:configuration];
+            NSLog(@"Using a WKWebView");
             _webViewUIDelegate = [[CDVWebViewUIDelegate alloc] initWithTitle:[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleDisplayName"]];
             ((WKWebView*)cordovaView).UIDelegate = _webViewUIDelegate;
 #endif
     } else {
         cordovaView = [[UIWebView alloc] initWithFrame:bounds];
+        NSLog(@"Using a UIWebView");
     }
 
     return cordovaView;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org