rhodes 3.4.2 → 3.5.1.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (705) hide show
  1. data/CHANGELOG +9 -0
  2. data/Rakefile +61 -9
  3. data/doc/build.txt +147 -38
  4. data/doc/configuration.txt +49 -33
  5. data/doc/connect-to-web-services.txt +32 -32
  6. data/doc/contributing.txt +1 -1
  7. data/doc/device-caps.txt +62 -311
  8. data/doc/extensions.txt +104 -5
  9. data/doc/install.txt +17 -61
  10. data/doc/linea.txt +11 -11
  11. data/doc/nfc.txt +3 -3
  12. data/doc/release.txt +4 -4
  13. data/doc/rhom.txt +7 -7
  14. data/doc/rhostudio-test-plan.txt +12 -12
  15. data/doc/simulator.txt +32 -19
  16. data/doc/syncengine-ajax-api.txt +1 -1
  17. data/doc/synchronization.txt +8 -2
  18. data/doc/test-log-debug.txt +34 -3
  19. data/doc/ui.txt +8 -3
  20. data/installer/icon.ico +0 -0
  21. data/lib/build/jake.rb +27 -6
  22. data/lib/extensions/audiocapture/audiocapture.rb +43 -0
  23. data/lib/extensions/audiocapture/ext.yml +5 -0
  24. data/lib/extensions/audiocapture/ext/audiocapture/platform/android/AndroidManifest.xml +10 -0
  25. data/lib/extensions/audiocapture/ext/audiocapture/platform/android/Rakefile +77 -0
  26. data/lib/extensions/audiocapture/ext/audiocapture/platform/android/ext_build.files +2 -0
  27. data/lib/extensions/audiocapture/ext/audiocapture/platform/android/jni/src/audiocapture.cpp +189 -0
  28. data/lib/extensions/audiocapture/ext/audiocapture/platform/android/src/com/audiocapture/Audiocapture.java +236 -0
  29. data/lib/extensions/audiocapture/ext/audiocapture/platform/android/src/com/audiocapture/ExtAudioRecorder.java +573 -0
  30. data/lib/extensions/audiocapture/ext/audiocapture/platform/bb/Audiocapture.files +1 -0
  31. data/lib/extensions/audiocapture/ext/audiocapture/platform/bb/Rakefile +97 -0
  32. data/lib/extensions/audiocapture/ext/audiocapture/platform/bb/audiocapture.jdp +48 -0
  33. data/lib/extensions/audiocapture/ext/audiocapture/platform/bb/src/com/audiocapture/Audiocapture.java +118 -0
  34. data/lib/extensions/audiocapture/ext/audiocapture/platform/iphone/Audiocapture.xcodeproj/project.pbxproj +314 -0
  35. data/lib/extensions/audiocapture/ext/audiocapture/platform/iphone/Audiocapture_Prefix.pch +7 -0
  36. data/lib/extensions/audiocapture/ext/audiocapture/platform/iphone/Classes/audioCapture.h +51 -0
  37. data/lib/extensions/audiocapture/ext/audiocapture/platform/iphone/Classes/audioCapture.m +418 -0
  38. data/lib/extensions/audiocapture/ext/audiocapture/platform/iphone/Rakefile +79 -0
  39. data/lib/extensions/audiocapture/ext/audiocapture/platform/wm/Audiocapture.sln +44 -0
  40. data/lib/extensions/audiocapture/ext/audiocapture/platform/wm/Audiocapture.vcproj +647 -0
  41. data/lib/extensions/audiocapture/ext/audiocapture/platform/wm/Audiocapture.vsprops +15 -0
  42. data/lib/extensions/audiocapture/ext/audiocapture/platform/wm/Rakefile +62 -0
  43. data/lib/extensions/audiocapture/ext/audiocapture/platform/wm/src/audiocapture_wm.cpp +40 -0
  44. data/lib/extensions/audiocapture/ext/audiocapture/platform/wm/src/audiocapture_wm.h +2 -0
  45. data/lib/extensions/audiocapture/ext/audiocapture/shared/ruby/audiocapture.i +29 -0
  46. data/lib/extensions/audiocapture/ext/audiocapture/shared/ruby/audiocapture_wrap.c +2310 -0
  47. data/lib/extensions/audiocapture/ext/audiocapture/shared/src/audiocapture.c +26 -0
  48. data/lib/extensions/audiocapture/ext/build +17 -0
  49. data/lib/extensions/audiocapture/ext/build.bat +36 -0
  50. data/lib/extensions/barcode/ext.yml +5 -3
  51. data/lib/extensions/barcode/ext/barcode/platform/android/src/com/rhomobile/barcode/Barcode.java +87 -87
  52. data/lib/extensions/digest-md5/ext/build +1 -1
  53. data/lib/extensions/digest-sha1/ext/build +1 -1
  54. data/lib/extensions/digest-sha2/ext/build +1 -1
  55. data/lib/extensions/digest/ext/build +1 -1
  56. data/lib/extensions/fcntl/ext/fcntl.c +5 -5
  57. data/lib/extensions/gcm-push/ext.yml +8 -0
  58. data/lib/extensions/gcm-push/ext/android/AndroidManifest.rb +5 -0
  59. data/lib/extensions/gcm-push/ext/android/ApplicationManifestAdds.erb +8 -0
  60. data/lib/extensions/gcm-push/ext/android/Rakefile +66 -0
  61. data/lib/extensions/gcm-push/ext/android/ext_build.files +3 -0
  62. data/lib/extensions/gcm-push/ext/android/jni/src/com_rhomobile_rhodes_gcm_GCMRhoListener.h +21 -0
  63. data/lib/extensions/gcm-push/ext/android/jni/src/gcmpushclient.cpp +173 -0
  64. data/lib/extensions/gcm-push/ext/android/jni/src/gcmpushclient.h +62 -0
  65. data/lib/extensions/gcm-push/ext/android/src/com/rhomobile/rhodes/gcm/GCMBroadcastReceiver.java +40 -0
  66. data/lib/extensions/gcm-push/ext/android/src/com/rhomobile/rhodes/gcm/GCMFacade.java +55 -0
  67. data/lib/extensions/gcm-push/ext/android/src/com/rhomobile/rhodes/gcm/GCMIntentService.java +60 -0
  68. data/lib/extensions/gcm-push/ext/build +12 -0
  69. data/lib/extensions/gcm-push/ext/build.bat +8 -0
  70. data/lib/extensions/net-http/net/http.rb +153 -119
  71. data/lib/extensions/net-http/net/https.rb +4 -38
  72. data/lib/extensions/nfc/ext.yml +6 -4
  73. data/lib/extensions/nfc/ext/nfc/platform/android/jni/src/nfc.cpp +2 -2
  74. data/lib/extensions/nfc/ext/nfc/platform/android/src/com/rhomobile/nfc/NfcTechActivity.java +0 -1
  75. data/lib/extensions/openssl/openssl/ssl-internal.rb +3 -1
  76. data/lib/extensions/rawsensors/ext.yml +4 -0
  77. data/lib/extensions/rawsensors/ext/build +17 -0
  78. data/lib/extensions/rawsensors/ext/build.bat +36 -0
  79. data/lib/extensions/rawsensors/ext/rawsensors/platform/android/Rakefile +77 -0
  80. data/lib/extensions/rawsensors/ext/rawsensors/platform/android/ext_build.files +1 -0
  81. data/lib/extensions/rawsensors/ext/rawsensors/platform/android/jni/src/rawsensors.cpp +180 -0
  82. data/lib/extensions/rawsensors/ext/rawsensors/platform/android/src/com/rawsensors/Rawsensors.java +355 -0
  83. data/lib/extensions/rawsensors/ext/rawsensors/platform/bb/Rakefile +97 -0
  84. data/lib/extensions/rawsensors/ext/rawsensors/platform/bb/Rawsensors.files +1 -0
  85. data/lib/extensions/rawsensors/ext/rawsensors/platform/bb/rawsensors.jdp +48 -0
  86. data/lib/extensions/rawsensors/ext/rawsensors/platform/bb/src/com/rawsensors/Rawsensors.java +118 -0
  87. data/lib/extensions/rawsensors/ext/rawsensors/platform/iphone/Classes/RawSensors.h +66 -0
  88. data/lib/extensions/rawsensors/ext/rawsensors/platform/iphone/Classes/RawSensors.m +351 -0
  89. data/lib/extensions/rawsensors/ext/rawsensors/platform/iphone/Rakefile +79 -0
  90. data/lib/extensions/rawsensors/ext/rawsensors/platform/iphone/Rawsensors.xcodeproj/project.pbxproj +316 -0
  91. data/lib/extensions/rawsensors/ext/rawsensors/platform/iphone/Rawsensors_Prefix.pch +7 -0
  92. data/lib/extensions/rawsensors/ext/rawsensors/platform/wm/Rakefile +62 -0
  93. data/lib/extensions/rawsensors/ext/rawsensors/platform/wm/Rawsensors.sln +44 -0
  94. data/lib/extensions/rawsensors/ext/rawsensors/platform/wm/Rawsensors.vcproj +647 -0
  95. data/lib/extensions/rawsensors/ext/rawsensors/platform/wm/Rawsensors.vsprops +15 -0
  96. data/lib/extensions/rawsensors/ext/rawsensors/platform/wm/src/rawsensors_wm.cpp +40 -0
  97. data/lib/extensions/rawsensors/ext/rawsensors/platform/wm/src/rawsensors_wm.h +2 -0
  98. data/lib/extensions/rawsensors/ext/rawsensors/shared/ruby/rawsensors.i +22 -0
  99. data/lib/extensions/rawsensors/ext/rawsensors/shared/ruby/rawsensors_wrap.c +2308 -0
  100. data/lib/extensions/rawsensors/ext/rawsensors/shared/src/rawsensors.c +25 -0
  101. data/lib/extensions/rawsensors/rawsensors.rb +36 -0
  102. data/lib/framework/autocomplete/AddressBar.rb +19 -0
  103. data/lib/framework/autocomplete/Alarm.rb +23 -0
  104. data/lib/framework/autocomplete/Alert.rb +19 -0
  105. data/lib/framework/autocomplete/AppApplication.rb +17 -0
  106. data/lib/framework/autocomplete/AppSwitcher.rb +13 -0
  107. data/lib/framework/autocomplete/Application.rb +23 -0
  108. data/lib/framework/autocomplete/AudioCapture.rb +31 -0
  109. data/lib/framework/autocomplete/BackButton.rb +25 -0
  110. data/lib/framework/autocomplete/Backlight.rb +21 -0
  111. data/lib/framework/autocomplete/Barcode.rb +29 -0
  112. data/lib/framework/autocomplete/BasicSocket.rb +87 -0
  113. data/lib/framework/autocomplete/Battery.rb +33 -0
  114. data/lib/framework/autocomplete/BottomCommandArea.rb +19 -0
  115. data/lib/framework/autocomplete/BrowserHelper.rb +19 -0
  116. data/lib/framework/autocomplete/Bsearch.rb +11 -0
  117. data/lib/framework/autocomplete/Camera.rb +17 -0
  118. data/lib/framework/autocomplete/CardReader.rb +29 -0
  119. data/lib/framework/autocomplete/Comm.rb +45 -0
  120. data/lib/framework/autocomplete/Cradle.rb +15 -0
  121. data/lib/framework/autocomplete/Date.rb +50 -0
  122. data/lib/framework/autocomplete/DateTime.rb +24 -0
  123. data/lib/framework/autocomplete/DateTimePicker.rb +15 -0
  124. data/lib/framework/autocomplete/Device.rb +19 -0
  125. data/lib/framework/autocomplete/Digest.rb +28 -0
  126. data/lib/framework/autocomplete/Dir.rb +63 -0
  127. data/lib/framework/autocomplete/Eink.rb +19 -0
  128. data/lib/framework/autocomplete/EmmlProfile.rb +19 -0
  129. data/lib/framework/autocomplete/File.rb +301 -0
  130. data/lib/framework/autocomplete/FileTransfer.rb +27 -0
  131. data/lib/framework/autocomplete/ForwardButton.rb +25 -0
  132. data/lib/framework/autocomplete/GeneratorController.rb +15 -0
  133. data/lib/framework/autocomplete/GeoLocation.rb +27 -0
  134. data/lib/framework/autocomplete/Gesture.rb +71 -0
  135. data/lib/framework/autocomplete/GoButton.rb +25 -0
  136. data/lib/framework/autocomplete/HashWithIndifferentAccess.rb +51 -0
  137. data/lib/framework/autocomplete/History.rb +11 -0
  138. data/lib/framework/autocomplete/HomeButton.rb +25 -0
  139. data/lib/framework/autocomplete/Hourglass.rb +17 -0
  140. data/lib/framework/autocomplete/IPSocket.rb +65 -0
  141. data/lib/framework/autocomplete/Imager.rb +53 -0
  142. data/lib/framework/autocomplete/IoAnalog.rb +73 -0
  143. data/lib/framework/autocomplete/IoDigital.rb +93 -0
  144. data/lib/framework/autocomplete/IoSystem.rb +21 -0
  145. data/lib/framework/autocomplete/JSON.rb +142 -0
  146. data/lib/framework/autocomplete/KeyCapture.rb +25 -0
  147. data/lib/framework/autocomplete/KeyState.rb +23 -0
  148. data/lib/framework/autocomplete/Keylight.rb +17 -0
  149. data/lib/framework/autocomplete/Lightsensor.rb +19 -0
  150. data/lib/framework/autocomplete/LocalizationSimplified.rb +33 -0
  151. data/lib/framework/autocomplete/MapView.rb +23 -0
  152. data/lib/framework/autocomplete/MediaPlayer.rb +19 -0
  153. data/lib/framework/autocomplete/Memory.rb +17 -0
  154. data/lib/framework/autocomplete/MinimizeButton.rb +25 -0
  155. data/lib/framework/autocomplete/NativeBar.rb +31 -0
  156. data/lib/framework/autocomplete/NavBar.rb +15 -0
  157. data/lib/framework/autocomplete/Network.rb +31 -0
  158. data/lib/framework/autocomplete/Notification.rb +35 -0
  159. data/lib/framework/autocomplete/OpenSSL.rb +440 -0
  160. data/lib/framework/autocomplete/Phonebook.rb +39 -0
  161. data/lib/framework/autocomplete/PowerOn.rb +13 -0
  162. data/lib/framework/autocomplete/Push.rb +27 -0
  163. data/lib/framework/autocomplete/QuitButton.rb +25 -0
  164. data/lib/framework/autocomplete/RHO_APPS_DIR.rb +8 -0
  165. data/lib/framework/autocomplete/RHO_ERB_EXT.rb +8 -0
  166. data/lib/framework/autocomplete/RHO_FRAMEWORK.rb +0 -0
  167. data/lib/framework/autocomplete/RHO_RB_EXT.rb +8 -0
  168. data/lib/framework/autocomplete/RawSensors.rb +53 -0
  169. data/lib/framework/autocomplete/Reboot.rb +13 -0
  170. data/lib/framework/autocomplete/Registry.rb +25 -0
  171. data/lib/framework/autocomplete/ReloadButton.rb +25 -0
  172. data/lib/framework/autocomplete/Rfid.rb +173 -0
  173. data/lib/framework/autocomplete/Rho.rb +496 -0
  174. data/lib/framework/autocomplete/RhoBluetooth.rb +41 -0
  175. data/lib/framework/autocomplete/RhoConf.rb +23 -0
  176. data/lib/framework/autocomplete/RhoElementsExt.rb +11 -0
  177. data/lib/framework/autocomplete/RhoLog.rb +13 -0
  178. data/lib/framework/autocomplete/RhoProfiler.rb +21 -0
  179. data/lib/framework/autocomplete/RhoStdout.rb +19 -0
  180. data/lib/framework/autocomplete/Rhodes.rb +13 -0
  181. data/lib/framework/autocomplete/RhodesNativeViewManager.rb +15 -0
  182. data/lib/framework/autocomplete/Rhom.rb +198 -0
  183. data/lib/framework/autocomplete/Rsm.rb +135 -0
  184. data/lib/framework/autocomplete/SQLite3.rb +36 -0
  185. data/lib/framework/autocomplete/SWIG.rb +24 -0
  186. data/lib/framework/autocomplete/ScanError.rb +9 -0
  187. data/lib/framework/autocomplete/Scanner.rb +379 -0
  188. data/lib/framework/autocomplete/ScreenOrientation.rb +23 -0
  189. data/lib/framework/autocomplete/SignatureCapture.rb +47 -0
  190. data/lib/framework/autocomplete/SignatureTool.rb +11 -0
  191. data/lib/framework/autocomplete/Sip.rb +19 -0
  192. data/lib/framework/autocomplete/SipButton.rb +25 -0
  193. data/lib/framework/autocomplete/Sntp.rb +13 -0
  194. data/lib/framework/autocomplete/Socket.rb +356 -0
  195. data/lib/framework/autocomplete/SocketError.rb +9 -0
  196. data/lib/framework/autocomplete/StopButton.rb +25 -0
  197. data/lib/framework/autocomplete/StringIO.rb +139 -0
  198. data/lib/framework/autocomplete/StringScanner.rb +102 -0
  199. data/lib/framework/autocomplete/Stylus.rb +15 -0
  200. data/lib/framework/autocomplete/SyncEngine.rb +77 -0
  201. data/lib/framework/autocomplete/System.rb +79 -0
  202. data/lib/framework/autocomplete/SystemTime.rb +17 -0
  203. data/lib/framework/autocomplete/TCPServer.rb +65 -0
  204. data/lib/framework/autocomplete/TCPSocket.rb +59 -0
  205. data/lib/framework/autocomplete/Telemetry.rb +23 -0
  206. data/lib/framework/autocomplete/Thread.rb +85 -0
  207. data/lib/framework/autocomplete/Time.rb +167 -0
  208. data/lib/framework/autocomplete/Timer.rb +19 -0
  209. data/lib/framework/autocomplete/TopCommandArea.rb +19 -0
  210. data/lib/framework/autocomplete/UDPSocket.rb +65 -0
  211. data/lib/framework/autocomplete/VideoCapture.rb +29 -0
  212. data/lib/framework/autocomplete/Volume.rb +13 -0
  213. data/lib/framework/autocomplete/Wake.rb +15 -0
  214. data/lib/framework/autocomplete/WebView.rb +31 -0
  215. data/lib/framework/autocomplete/Wlan.rb +87 -0
  216. data/lib/framework/autocomplete/Zoom.rb +15 -0
  217. data/lib/framework/autocomplete/ZoomInPageButton.rb +25 -0
  218. data/lib/framework/autocomplete/ZoomOutPageButton.rb +25 -0
  219. data/lib/framework/autocomplete/ZoomTextButton.rb +25 -0
  220. data/lib/framework/rho/render.rb +15 -4
  221. data/lib/framework/rho/rho.rb +17 -8
  222. data/lib/framework/rho/rhoapplication.rb +25 -3
  223. data/lib/framework/rho/rhocontact.rb +13 -0
  224. data/lib/framework/rho/rhoevent.rb +15 -0
  225. data/lib/framework/rho/rhonativeviewmanager.rb +3 -3
  226. data/lib/framework/rhodes.rb +1 -1
  227. data/lib/framework/rhom/rhom.rb +5 -0
  228. data/lib/framework/rhomotoapi.rb +2 -1
  229. data/lib/framework/version.rb +1 -1
  230. data/lib/rhodes.rb +1 -1
  231. data/platform/android/Rhodes/AndroidManifest.xml +4 -3
  232. data/platform/android/Rhodes/AndroidManifest.xml.erb +7 -7
  233. data/platform/android/Rhodes/jni/include/rhodes/JNIRhodes.h +22 -0
  234. data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_RhodesService.h +1 -9
  235. data/platform/android/Rhodes/jni/src/callbacks.cpp +2 -0
  236. data/platform/android/Rhodes/jni/src/camera.cpp +5 -0
  237. data/platform/android/Rhodes/jni/src/event.cpp +10 -0
  238. data/platform/android/Rhodes/jni/src/geolocation.cpp +10 -0
  239. data/platform/android/Rhodes/jni/src/logger.cpp +3 -1
  240. data/platform/android/Rhodes/jni/src/phonebook.cpp +11 -0
  241. data/platform/android/Rhodes/jni/src/rhodes.cpp +1 -1
  242. data/platform/android/Rhodes/jni/src/rhodesapp.cpp +41 -25
  243. data/platform/android/Rhodes/jni/src/signature.cpp +7 -6
  244. data/platform/android/Rhodes/jni/src/webview.cpp +29 -0
  245. data/platform/android/Rhodes/project.properties +1 -1
  246. data/platform/android/Rhodes/res/drawable/icon.png +0 -0
  247. data/platform/android/Rhodes/src/com/rhomobile/rhodes/ConnectionChangeReceiver.java +28 -0
  248. data/platform/android/Rhodes/src/com/rhomobile/rhodes/NativeBar.java +1 -1
  249. data/platform/android/Rhodes/src/com/rhomobile/rhodes/PushContract.java +102 -0
  250. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivity.java +20 -56
  251. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesApplication.java +9 -124
  252. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java +114 -126
  253. data/platform/android/Rhodes/src/com/rhomobile/rhodes/WebView.java +26 -0
  254. data/platform/android/Rhodes/src/com/rhomobile/rhodes/alert/PopupActivity.java +3 -5
  255. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/Camera.java +31 -13
  256. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCapture.java +2 -0
  257. data/platform/android/Rhodes/src/com/rhomobile/rhodes/datetime/DateTimePicker.java +3 -7
  258. data/platform/android/Rhodes/src/com/rhomobile/rhodes/event/CalendarIDsProvider.java +19 -0
  259. data/platform/android/Rhodes/src/com/rhomobile/rhodes/event/CalendarIDsProviderFroyo.java +5 -0
  260. data/platform/android/Rhodes/src/com/rhomobile/rhodes/event/CalendarIDsProviderICS.java +22 -0
  261. data/platform/android/Rhodes/src/com/rhomobile/rhodes/event/EventStore.java +32 -22
  262. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/AbstractRhoExtension.java +5 -0
  263. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/AbstractRhoListener.java +34 -0
  264. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/IRhoExtManager.java +11 -2
  265. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/IRhoExtension.java +1 -0
  266. data/platform/android/Rhodes/src/com/rhomobile/rhodes/{webview → extmanager}/IRhoWebView.java +5 -1
  267. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhoExtManagerImpl.java +605 -492
  268. data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocation.java +16 -0
  269. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/MainView.java +9 -2
  270. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SimpleMainView.java +43 -14
  271. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SplashScreen.java +82 -64
  272. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/TabbedMainView.java +28 -13
  273. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/GoogleMapView.java +4 -4
  274. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapView.java +0 -1
  275. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality.java +4 -0
  276. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality01.java +6 -0
  277. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality08.java +7 -0
  278. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality12.java +6 -0
  279. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality13.java +6 -0
  280. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality14.java +12 -0
  281. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionalityManager.java +10 -1
  282. data/platform/android/Rhodes/src/com/rhomobile/rhodes/signature/Signature.java +3 -6
  283. data/platform/android/Rhodes/src/com/rhomobile/rhodes/socket/RhoSocketImpl.java +1 -1
  284. data/platform/android/Rhodes/src/com/rhomobile/rhodes/uri/LocalFileHandler.java +1 -1
  285. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/GoogleWebView.java +43 -0
  286. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebChromeClient.java +5 -0
  287. data/platform/android/build/RhodesSRC_build.files +10 -4
  288. data/platform/android/build/android.rake +46 -193
  289. data/platform/android/build/android_tools.rb +181 -13
  290. data/platform/bb/Hsqldb/src/org/hsqldb/CompiledStatementExecutor.java +3 -3
  291. data/platform/bb/Hsqldb/src/org/hsqldb/Expression.java +4 -2
  292. data/platform/bb/RubyVM/src/com/rho/IRhoRubyHelper.java +2 -0
  293. data/platform/bb/RubyVM/src/com/rho/RhoRuby.java +6 -0
  294. data/platform/bb/RubyVM/src/com/rho/ThreadQueue.java +13 -8
  295. data/platform/bb/RubyVM/src/com/rho/db/DBAdapter.java +103 -1
  296. data/platform/bb/RubyVM/src/com/rho/db/DBAttrManager.java +18 -0
  297. data/platform/bb/RubyVM/src/com/rho/net/NetRequest.java +9 -2
  298. data/platform/bb/RubyVM/src/com/rho/net/RhoConnection.java +16 -11
  299. data/platform/bb/RubyVM/src/com/rho/sync/ClientRegister.java +25 -3
  300. data/platform/bb/RubyVM/src/com/rho/sync/ISyncProtocol.java +1 -1
  301. data/platform/bb/RubyVM/src/com/rho/sync/SyncEngine.java +122 -32
  302. data/platform/bb/RubyVM/src/com/rho/sync/SyncNotify.java +44 -14
  303. data/platform/bb/RubyVM/src/com/rho/sync/SyncProtocol_3.java +3 -2
  304. data/platform/bb/RubyVM/src/com/rho/sync/SyncSource.java +340 -88
  305. data/platform/bb/RubyVM/src/com/rho/sync/SyncThread.java +62 -15
  306. data/platform/bb/RubyVM/src/com/xruby/runtime/builtin/AttrReader.java +1 -1
  307. data/platform/bb/RubyVM/src/com/xruby/runtime/builtin/RubyFixnum.java +3 -1
  308. data/platform/bb/RubyVM/src/com/xruby/runtime/builtin/RubyHash.java +1 -1
  309. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RubyAPI.java +19 -1
  310. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RubyBasic.java +9 -0
  311. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RubyBinding.java +4 -4
  312. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RubyModule.java +13 -1
  313. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RubyObject.java +16 -1
  314. data/platform/bb/build/bb.rake +3 -1
  315. data/platform/bb/build/rhodes_build.files +0 -1
  316. data/platform/bb/rhodes/platform/4.7/com/rho/rubyext/SignatureCapture.java +13 -18
  317. data/platform/bb/rhodes/platform/5.0/com/rho/BrowserAdapter5.java +13 -3
  318. data/platform/bb/rhodes/platform/5.0/com/rho/RhodesApplicationPlatform.java +1 -1
  319. data/platform/bb/rhodes/platform/common/com/rho/rubyext/SignatureCapture.java +13 -18
  320. data/platform/bb/rhodes/resources/icon.png +0 -0
  321. data/platform/bb/rhodes/src/com/rho/BrowserAdapter.java +10 -0
  322. data/platform/bb/rhodes/src/com/rho/BrowserAdapter5.java +13 -3
  323. data/platform/bb/rhodes/src/com/rho/RhoRubyHelper.java +5 -0
  324. data/platform/bb/rhodes/src/com/rho/RhodesApplicationPlatform.java +1 -1
  325. data/platform/bb/rhodes/src/com/rho/file/Jsr75File.java +6 -1
  326. data/platform/bb/rhodes/src/com/rho/file/Jsr75RAFileImpl.java +6 -1
  327. data/platform/bb/rhodes/src/com/rho/rubyext/GeoLocation.java +38 -9
  328. data/platform/bb/rhodes/src/com/rho/rubyext/SignatureCapture.java +13 -18
  329. data/platform/bb/rhodes/src/com/rho/rubyext/WebView.java +16 -1
  330. data/platform/bb/rhodes/src/rhomobile/PushListeningThread.java +0 -20
  331. data/platform/bb/rhodes/src/rhomobile/RhodesApplication.java +1 -10
  332. data/platform/bb/rhodes/src/rhomobile/camera/CameraScreen.java +40 -35
  333. data/platform/iphone/Classes/AppManager/AppManager.h +1 -1
  334. data/platform/iphone/Classes/AppManager/AppManager.m +46 -29
  335. data/platform/iphone/Classes/Camera/PickImageDelegate.m +9 -0
  336. data/platform/iphone/Classes/Event/Event.h +6 -1
  337. data/platform/iphone/Classes/Event/Event.m +67 -1
  338. data/platform/iphone/Classes/GeoLocation/LocationController.h +2 -1
  339. data/platform/iphone/Classes/GeoLocation/LocationController.m +17 -1
  340. data/platform/iphone/Classes/NetworkStatusMonitor.h +17 -0
  341. data/platform/iphone/Classes/NetworkStatusMonitor.mm +58 -0
  342. data/platform/iphone/Classes/Phonebook/phonebook.h +6 -0
  343. data/platform/iphone/Classes/Phonebook/phonebook.m +62 -6
  344. data/platform/iphone/Classes/Reachability.h +31 -0
  345. data/platform/iphone/Classes/Reachability.m +223 -0
  346. data/platform/iphone/Classes/RhoMainView.h +1 -0
  347. data/platform/iphone/Classes/RhoViewController.m +16 -0
  348. data/platform/iphone/Classes/Rhodes.h +2 -0
  349. data/platform/iphone/Classes/Rhodes.m +89 -10
  350. data/platform/iphone/Classes/Signature/SignatureDelegate.m +4 -7
  351. data/platform/iphone/Classes/SimpleMainView.m +16 -0
  352. data/platform/iphone/Classes/SplashViewController.m +11 -1
  353. data/platform/iphone/Classes/SplitView/RightViewController.m +6 -0
  354. data/platform/iphone/Classes/SplitView/SplittedMainView.m +5 -0
  355. data/platform/iphone/Classes/TabbedMainView.m +4 -0
  356. data/platform/iphone/Classes/WebView.m +14 -0
  357. data/platform/iphone/Info.plist +1 -6
  358. data/platform/iphone/iTunesArtwork.jpg +0 -0
  359. data/platform/iphone/icon.png +0 -0
  360. data/platform/iphone/icon114.png +0 -0
  361. data/platform/iphone/icon57.png +0 -0
  362. data/platform/iphone/icon72.png +0 -0
  363. data/platform/iphone/rbuild/iphone.rake +8 -11
  364. data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +20 -4
  365. data/platform/osx/Rhodes Launcher/rhorunner.app/icon.png +0 -0
  366. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtCore.framework/Versions/4/QtCore +0 -0
  367. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtGui.framework/Versions/4/QtGui +0 -0
  368. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtNetwork.framework/Versions/4/QtNetwork +0 -0
  369. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtWebKit.framework/Versions/4/QtWebKit +0 -0
  370. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Info.plist +1 -1
  371. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/MacOS/RhoSimulator +0 -0
  372. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/accessible/libqtaccessiblewidgets.dylib +0 -0
  373. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/bearer/libqcorewlanbearer.dylib +0 -0
  374. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/bearer/libqgenericbearer.dylib +0 -0
  375. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqcncodecs.dylib +0 -0
  376. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqjpcodecs.dylib +0 -0
  377. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqkrcodecs.dylib +0 -0
  378. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqtwcodecs.dylib +0 -0
  379. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/graphicssystems/libqtracegraphicssystem.dylib +0 -0
  380. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqgif.dylib +0 -0
  381. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqico.dylib +0 -0
  382. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqjpeg.dylib +0 -0
  383. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqmng.dylib +0 -0
  384. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqtga.dylib +0 -0
  385. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqtiff.dylib +0 -0
  386. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/qmltooling/libqmldbg_inspector.dylib +0 -0
  387. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/qmltooling/libqmldbg_tcp.dylib +0 -0
  388. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Resources/rho.icns +0 -0
  389. data/platform/shared/common/ExtManager.h +8 -0
  390. data/platform/shared/common/RhoDefs.h +3 -2
  391. data/platform/shared/common/RhoFile.cpp +14 -1
  392. data/platform/shared/common/RhoMutexLock.h +4 -0
  393. data/platform/shared/common/RhoPort.h +5 -1
  394. data/platform/shared/common/RhoStd.h +12 -0
  395. data/platform/shared/common/RhoThread.cpp +1 -2
  396. data/platform/shared/common/RhoTime.h +4 -0
  397. data/platform/shared/common/RhodesApp.cpp +189 -65
  398. data/platform/shared/common/RhodesApp.h +60 -7
  399. data/platform/shared/common/RhodesAppBase.cpp +2 -8
  400. data/platform/shared/common/RhodesAppBase.h +1 -0
  401. data/platform/shared/common/ThreadQueue.cpp +2 -2
  402. data/platform/shared/common/app_build_configs.c +3 -1
  403. data/platform/shared/common/map/MapEngine.cpp +39 -3
  404. data/platform/shared/common/push/IRhoPushClient.h +3 -3
  405. data/platform/shared/common/push/RhoPushManager.cpp +31 -53
  406. data/platform/shared/common/push/RhoPushManager.h +12 -26
  407. data/platform/shared/curl/lib/curl_config.h +1 -1
  408. data/platform/shared/json/RJSONTokener.c +3 -1
  409. data/platform/shared/json/config.h +4 -4
  410. data/platform/shared/json/json_tokener.c +1 -1
  411. data/platform/shared/logging/RhoLog.cpp +5 -5
  412. data/platform/shared/logging/RhoLogConf.cpp +4 -6
  413. data/platform/shared/logging/RhoLogConf.h +2 -2
  414. data/platform/shared/logging/RhoLogSink.cpp +2 -0
  415. data/platform/shared/net/HttpServer.cpp +54 -7
  416. data/platform/shared/net/HttpServer.h +2 -0
  417. data/platform/shared/qt/rhodes/QtMainWindow.cpp +22 -0
  418. data/platform/shared/qt/rhodes/QtMainWindow.h +1 -0
  419. data/platform/shared/qt/rhodes/impl/CalendarImpl.cpp +4 -0
  420. data/platform/shared/qt/rhodes/impl/CameraImpl.cpp +4 -0
  421. data/platform/shared/qt/rhodes/impl/GeoLocationImpl.cpp +6 -0
  422. data/platform/shared/qt/rhodes/impl/MainWindowImpl.cpp +7 -0
  423. data/platform/shared/qt/rhodes/impl/MainWindowImpl.h +2 -0
  424. data/platform/shared/qt/rhodes/impl/PhonebookImpl.cpp +4 -0
  425. data/platform/shared/qt/rhodes/impl/SystemImpl.cpp +5 -0
  426. data/platform/shared/qt/rhodes/impl/WebViewImpl.cpp +12 -0
  427. data/platform/shared/qt/rhodes/main.cpp +0 -7
  428. data/platform/shared/qt/rhodes/resources/rho.icns +0 -0
  429. data/platform/shared/qt/rhodes/resources/rho.ico +0 -0
  430. data/platform/shared/qt/rhodes/resources/rho.png +0 -0
  431. data/platform/shared/ruby/encoding.c +4 -0
  432. data/platform/shared/ruby/ext/calendar/calendar.i +3 -0
  433. data/platform/shared/ruby/ext/calendar/calendar_wrap.c +19 -0
  434. data/platform/shared/ruby/ext/camera/camera.i +2 -0
  435. data/platform/shared/ruby/ext/camera/camera_wrap.c +43 -2
  436. data/platform/shared/ruby/ext/geolocation/geolocation.i +4 -0
  437. data/platform/shared/ruby/ext/geolocation/geolocation_wrap.c +24 -4
  438. data/platform/shared/ruby/ext/phonebook/phonebook.i +4 -0
  439. data/platform/shared/ruby/ext/phonebook/phonebook_wrap.c +44 -0
  440. data/platform/shared/ruby/ext/rho/extensions.c +0 -2
  441. data/platform/shared/ruby/ext/rho/rhoruby.c +2 -0
  442. data/platform/shared/ruby/ext/rho/rhosupport.c +8 -0
  443. data/platform/shared/ruby/ext/sqlite3_api/sqlite3_api_wrap.c +1 -1
  444. data/platform/shared/ruby/ext/syncengine/syncengine.i +6 -2
  445. data/platform/shared/ruby/ext/syncengine/syncengine_wrap.c +19 -6
  446. data/platform/shared/ruby/ext/system/system.i +22 -0
  447. data/platform/shared/ruby/ext/system/system_wrap.c +158 -86
  448. data/platform/shared/ruby/ext/webview/webview.i +13 -8
  449. data/platform/shared/ruby/ext/webview/webview_wrap.c +88 -2
  450. data/platform/shared/ruby/include/ruby/win32.h +3 -1
  451. data/platform/shared/ruby/iphone/ruby/config.h +3 -3
  452. data/platform/shared/ruby/missing/hypot.c +4 -0
  453. data/platform/shared/ruby/random.c +6 -2
  454. data/platform/shared/ruby/thread_win32.c +8 -3
  455. data/platform/shared/ruby/win32/ruby/config.h +0 -3
  456. data/platform/shared/ruby/win32/win32.c +4 -0
  457. data/platform/shared/ruby/wp8/assert.c +12 -0
  458. data/platform/shared/ruby/wp8/assert.h +18 -0
  459. data/platform/shared/ruby/wp8/errno.c +11 -0
  460. data/platform/shared/ruby/wp8/errno.h +59 -0
  461. data/platform/shared/ruby/wp8/missing_wp8.h +74 -0
  462. data/platform/shared/ruby/wp8/signal.h +71 -0
  463. data/platform/shared/ruby/wp8/signal_wp8.c +26 -0
  464. data/platform/shared/ruby/wp8/stdio.c +36 -0
  465. data/platform/shared/ruby/wp8/stdlib.c +61 -0
  466. data/platform/shared/ruby/wp8/string_wp8.c +89 -0
  467. data/platform/shared/ruby/wp8/sys/stat.c +183 -0
  468. data/platform/shared/ruby/wp8/sys/stat.h +70 -0
  469. data/platform/shared/ruby/wp8/sys/timeb.c +31 -0
  470. data/platform/shared/ruby/wp8/sys/timeb.h +27 -0
  471. data/platform/shared/ruby/wp8/sys/types.h +62 -0
  472. data/platform/shared/ruby/wp8/sys/utime.c +44 -0
  473. data/platform/shared/ruby/wp8/sys/utime.h +27 -0
  474. data/platform/shared/ruby/wp8/time_wp8.c +256 -0
  475. data/platform/shared/ruby/wp8/varargs.h +34 -0
  476. data/platform/shared/ruby/wp8/win32/win32.c +5783 -0
  477. data/platform/shared/ruby/wp8/winsock_wp8.c +26 -0
  478. data/platform/shared/ruby/wp8/winsock_wp8.h +23 -0
  479. data/platform/shared/ruby/wp8/wp8.c +516 -0
  480. data/platform/shared/ruby/wp8/wp8.h +274 -0
  481. data/platform/shared/ruby/wp8/wp8main.c +18 -0
  482. data/platform/shared/rubyext/GeoLocation.cpp +1 -1
  483. data/platform/shared/rubyext/System.cpp +18 -4
  484. data/platform/shared/rubyext/ZipFiles.cpp +1 -1
  485. data/platform/shared/sync/ClientRegister.cpp +113 -23
  486. data/platform/shared/sync/ClientRegister.h +27 -16
  487. data/platform/shared/sync/ILoginListener.h +44 -0
  488. data/platform/shared/sync/SyncEngine.cpp +50 -24
  489. data/platform/shared/sync/SyncEngine.h +11 -5
  490. data/platform/shared/sync/SyncSource.cpp +87 -61
  491. data/platform/shared/sync/SyncSource.h +6 -3
  492. data/platform/shared/sync/SyncThread.cpp +8 -15
  493. data/platform/shared/sync/SyncThread.h +13 -7
  494. data/platform/shared/unzip/unzip.cpp +1 -1
  495. data/platform/shared/unzip/zip.h +8 -1
  496. data/platform/shared/xruby/src/com/xruby/runtime/builtin/AttrReader.java +13 -0
  497. data/platform/shared/xruby/src/com/xruby/runtime/builtin/RubyFixnum.java +3 -1
  498. data/platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java +9 -0
  499. data/platform/shared/xruby/src/com/xruby/runtime/lang/RubyBasic.java +9 -0
  500. data/platform/shared/xruby/src/com/xruby/runtime/lang/RubyBinding.java +17 -0
  501. data/platform/shared/xruby/src/com/xruby/runtime/lang/RubyMethod.java +22 -2
  502. data/platform/shared/xruby/src/com/xruby/runtime/lang/RubyModule.java +25 -0
  503. data/platform/shared/xruby/src/com/xruby/runtime/lang/RubyObject.java +21 -0
  504. data/platform/shared/xruby/src/com/xruby/runtime/lang/RubyValue.java +8 -0
  505. data/platform/symbian/rhodes/src/phonebook/ruby_phonebook.cpp +6 -0
  506. data/platform/win32/RhoSimulator/Microsoft.VC90.CRT.manifest +12 -5
  507. data/platform/win32/RhoSimulator/Microsoft.VC90.OpenMP.manifest +12 -5
  508. data/platform/win32/RhoSimulator/QtCore4.dll +0 -0
  509. data/platform/win32/RhoSimulator/QtGui4.dll +0 -0
  510. data/platform/win32/RhoSimulator/QtNetwork4.dll +0 -0
  511. data/platform/win32/RhoSimulator/QtWebKit4.dll +0 -0
  512. data/platform/win32/RhoSimulator/RhoSimulator.exe +0 -0
  513. data/platform/win32/RhoSimulator/imageformats/qgif4.dll +0 -0
  514. data/platform/win32/RhoSimulator/imageformats/qico4.dll +0 -0
  515. data/platform/win32/RhoSimulator/imageformats/qjpeg4.dll +0 -0
  516. data/platform/win32/RhoSimulator/imageformats/qmng4.dll +0 -0
  517. data/platform/win32/RhoSimulator/imageformats/qsvg4.dll +0 -0
  518. data/platform/win32/RhoSimulator/imageformats/qtiff4.dll +0 -0
  519. data/platform/win32/RhoSimulator/msvcm90.dll +0 -0
  520. data/platform/win32/RhoSimulator/msvcp90.dll +0 -0
  521. data/platform/win32/RhoSimulator/msvcr90.dll +0 -0
  522. data/platform/win32/RhoSimulator/phonon4.dll +0 -0
  523. data/platform/win32/RhoSimulator/vcomp90.dll +0 -0
  524. data/platform/wm/build/wm.rake +67 -22
  525. data/platform/wm/rhodes.sln +485 -493
  526. data/platform/wm/rhodes/IEBrowserEngine.cpp +2 -6
  527. data/platform/wm/rhodes/MainWindow.cpp +86 -35
  528. data/platform/wm/rhodes/MainWindow.h +33 -0
  529. data/platform/wm/rhodes/Rhodes.cpp +288 -215
  530. data/platform/wm/rhodes/bluetooth/Bluetooth.cpp +22 -17
  531. data/platform/wm/rhodes/bluetooth/Bluetooth.h +3 -3
  532. data/platform/wm/rhodes/camera/Camera.cpp +4 -0
  533. data/platform/wm/rhodes/camera/Camera.h +1 -0
  534. data/platform/wm/rhodes/phonebook/phonebook.cpp +9 -0
  535. data/platform/wm/rhodes/phonebook/phonebook.h +2 -0
  536. data/platform/wm/rhodes/resources/icon.ico +0 -0
  537. data/platform/wm/rhodes/rho/common/ExtManager.cpp +5 -1
  538. data/platform/wm/rhodes/rho/common/RhoClassFactory.cpp +1 -11
  539. data/platform/wm/rhodes/rho/rubyext/GeoLocationImpl.cpp +5 -0
  540. data/platform/wm/rhodes/rho/rubyext/SystemImpl.cpp +21 -2
  541. data/platform/wm/rhodes/rho/rubyext/WebView.cpp +12 -0
  542. data/platform/wm/rhodes/rho/rubyext/calendar.cpp +9 -0
  543. data/platform/wm/rhodes/rhodes.vcproj +60 -60
  544. data/platform/wm/rhodes/simulator/MainWindowQt.cpp +91 -6
  545. data/platform/wm/rhodes/simulator/MainWindowQt.h +6 -0
  546. data/platform/wm/rhoelements.sln +624 -623
  547. data/platform/wm/tcmalloc/tcmalloc.vcproj +1230 -1070
  548. data/platform/wp7/RhoRubyLib/rubyext/RhoCamera.cs +6 -3
  549. data/platform/wp7/rhodes/Properties/WMAppManifest.xml +5 -0
  550. data/platform/wp7/rhodes/icon.png +0 -0
  551. data/platform/wp8/RhoAppRunner/Program.cs +99 -0
  552. data/platform/wp8/RhoAppRunner/Properties/AssemblyInfo.cs +36 -0
  553. data/platform/wp8/RhoAppRunner/RhoAppRunner.csproj +69 -0
  554. data/platform/wp8/build/wp.rake +486 -0
  555. data/platform/wp8/rhodes.sln +154 -0
  556. data/platform/wp8/rhodes/App.xaml +20 -0
  557. data/platform/wp8/rhodes/App.xaml.cs +189 -0
  558. data/platform/wp8/rhodes/Assets/ApplicationIcon.png +0 -0
  559. data/platform/wp8/rhodes/Assets/Tiles/FlipCycleTileMedium.png +0 -0
  560. data/platform/wp8/rhodes/Assets/Tiles/FlipCycleTileSmall.png +0 -0
  561. data/platform/wp8/rhodes/LocalizedStrings.cs +37 -0
  562. data/platform/wp8/rhodes/MainPage.xaml +21 -0
  563. data/platform/wp8/rhodes/MainPage.xaml.cs +339 -0
  564. data/platform/wp8/rhodes/Properties/AppManifest.xml +6 -0
  565. data/platform/wp8/rhodes/Properties/AssemblyInfo.cs +37 -0
  566. data/platform/wp8/rhodes/Properties/WMAppManifest.xml +47 -0
  567. data/platform/wp8/rhodes/Resources/AppResources.Designer.cs +127 -0
  568. data/platform/wp8/rhodes/Resources/AppResources.resx +135 -0
  569. data/platform/wp8/rhodes/common/IInputStream.cs +47 -0
  570. data/platform/wp8/rhodes/common/RhoFile.cs +374 -0
  571. data/platform/wp8/rhodes/common/RhoFilePath.cs +115 -0
  572. data/platform/wp8/rhodes/common/RhoResourceMap.cs +92 -0
  573. data/platform/wp8/rhodes/common/RhoStd.cs +237 -0
  574. data/platform/wp8/rhodes/icon.png +0 -0
  575. data/platform/wp8/rhodes/rhodes.csproj +198 -0
  576. data/platform/wp8/rholib/rholib.vcxproj +240 -0
  577. data/platform/wp8/rholib/rholib.vcxproj.filters +289 -0
  578. data/platform/wp8/rhoruntime/FakeDefs.cpp +134 -0
  579. data/platform/wp8/rhoruntime/common/ExtManager.cpp +449 -0
  580. data/platform/wp8/rhoruntime/common/RhoClassFactory.cpp +58 -0
  581. data/platform/wp8/rhoruntime/common/RhoClassFactory.h +60 -0
  582. data/platform/wp8/rhoruntime/common/RhoCryptImpl.cpp +274 -0
  583. data/platform/wp8/rhoruntime/common/RhoCryptImpl.h +78 -0
  584. data/platform/wp8/rhoruntime/common/RhoThreadImpl.cpp +109 -0
  585. data/platform/wp8/rhoruntime/common/RhoThreadImpl.h +56 -0
  586. data/platform/wp8/rhoruntime/pch_rhoruntime.cpp +27 -0
  587. data/platform/wp8/rhoruntime/pch_rhoruntime.h +30 -0
  588. data/platform/wp8/rhoruntime/rhoruntime.cpp +93 -0
  589. data/platform/wp8/rhoruntime/rhoruntime.h +114 -0
  590. data/platform/wp8/rhoruntime/rhoruntime.vcxproj +175 -0
  591. data/platform/wp8/rhoruntime/rhoruntime.vcxproj.filters +44 -0
  592. data/platform/wp8/rubylib/file.c +5459 -0
  593. data/platform/wp8/rubylib/rubylib.vcxproj +286 -0
  594. data/platform/wp8/rubylib/rubylib.vcxproj.filters +307 -0
  595. data/platform/wp8/sqlite3/crypto.c +933 -0
  596. data/platform/wp8/sqlite3/sqlite3.c +136332 -0
  597. data/platform/wp8/sqlite3/sqlite3.vcxproj +149 -0
  598. data/platform/wp8/sqlite3/sqlite3.vcxproj.filters +16 -0
  599. data/platform/wp8/syncengine/syncengine.vcxproj +199 -0
  600. data/platform/wp8/syncengine/syncengine.vcxproj.filters +155 -0
  601. data/rakefile.rb +61 -9
  602. data/res/build-tools/RhoAppRunnerWP8.exe +0 -0
  603. data/res/build-tools/license_rc.dll +0 -0
  604. data/res/build-tools/win32/license_rc.dll +0 -0
  605. data/res/build-tools/xruby-0.3.3.jar +0 -0
  606. data/res/generators/rhogen.rb +36 -0
  607. data/res/generators/templates/application/app/loading-568h@2x.png +0 -0
  608. data/res/generators/templates/application/app/loading-Landscape.png +0 -0
  609. data/res/generators/templates/application/app/loading-LandscapeLeft.png +0 -0
  610. data/res/generators/templates/application/app/loading-LandscapeRight.png +0 -0
  611. data/res/generators/templates/application/app/loading-Portrait.png +0 -0
  612. data/res/generators/templates/application/app/loading-PortraitUpsideDown.png +0 -0
  613. data/res/generators/templates/application/app/loading.png +0 -0
  614. data/res/generators/templates/application/app/loading@2x.png +0 -0
  615. data/res/generators/templates/application/icon/icon.ico +0 -0
  616. data/res/generators/templates/application/icon/icon.png +0 -0
  617. data/res/generators/templates/application/icon/icon114.png +0 -0
  618. data/res/generators/templates/application/icon/icon57.png +0 -0
  619. data/res/generators/templates/application/icon/icon72.png +0 -0
  620. data/res/generators/templates/application/public/css/android.css +1 -1
  621. data/res/generators/templates/application/public/jqmobile/images/icon-search-black.png +0 -0
  622. data/res/generators/templates/application/rhoconfig.txt +3 -1
  623. data/res/generators/templates/model/model.rb +1 -1
  624. data/res/icons/rho.icns +0 -0
  625. data/res/icons/rho.ico +0 -0
  626. data/res/icons/rho.png +0 -0
  627. data/res/icons/rhodes.icns +0 -0
  628. data/res/icons/rhodes.ico +0 -0
  629. data/res/icons/rhodes.png +0 -0
  630. data/res/icons/rhosim.icns +0 -0
  631. data/res/icons/rhosim.ico +0 -0
  632. data/res/icons/rhosim.png +0 -0
  633. data/res/libs/motorolalicence/android/MotorolaLicence.h +2 -1
  634. data/res/libs/motorolalicence/android/libMotorolaLicence.a +0 -0
  635. data/res/libs/motorolalicence/iphone/MotorolaLicence.h +2 -1
  636. data/res/libs/motorolalicence/iphone/libMotorolaLicence.a +0 -0
  637. data/spec/autocomplete_generator/Rakefile +37 -0
  638. data/spec/autocomplete_generator/app/Generator/controller.rb +40 -0
  639. data/spec/autocomplete_generator/app/Generator/generator.rb +236 -0
  640. data/spec/autocomplete_generator/app/Generator/index.erb +21 -0
  641. data/spec/autocomplete_generator/app/Settings/controller.rb +117 -0
  642. data/spec/autocomplete_generator/app/Settings/err_sync.erb +11 -0
  643. data/spec/autocomplete_generator/app/Settings/home.bb.erb +18 -0
  644. data/spec/autocomplete_generator/app/Settings/home.erb +19 -0
  645. data/spec/autocomplete_generator/app/Settings/index.bb.erb +31 -0
  646. data/spec/autocomplete_generator/app/Settings/index.erb +31 -0
  647. data/spec/autocomplete_generator/app/Settings/login.bb.erb +29 -0
  648. data/spec/autocomplete_generator/app/Settings/login.erb +25 -0
  649. data/spec/autocomplete_generator/app/Settings/reset.bb.erb +16 -0
  650. data/spec/autocomplete_generator/app/Settings/reset.erb +14 -0
  651. data/spec/autocomplete_generator/app/Settings/wait.bb.erb +10 -0
  652. data/spec/autocomplete_generator/app/Settings/wait.erb +10 -0
  653. data/spec/autocomplete_generator/app/application.rb +16 -0
  654. data/spec/autocomplete_generator/app/helpers/application_helper.rb +129 -0
  655. data/spec/autocomplete_generator/app/helpers/browser_helper.rb +22 -0
  656. data/spec/autocomplete_generator/app/index.bb.erb +21 -0
  657. data/spec/autocomplete_generator/app/index.erb +24 -0
  658. data/spec/autocomplete_generator/app/layout.erb +94 -0
  659. data/spec/autocomplete_generator/app/loading.html +11 -0
  660. data/spec/autocomplete_generator/build.yml +41 -0
  661. data/spec/autocomplete_generator/icon/icon.ico +0 -0
  662. data/spec/autocomplete_generator/icon/icon.png +0 -0
  663. data/spec/autocomplete_generator/icon/icon.svg +5334 -0
  664. data/spec/autocomplete_generator/icon/icon114.png +0 -0
  665. data/spec/autocomplete_generator/icon/icon57.png +0 -0
  666. data/spec/autocomplete_generator/icon/icon72.png +0 -0
  667. data/spec/autocomplete_generator/readme.txt +1 -0
  668. data/spec/autocomplete_generator/rhoconfig.txt +88 -0
  669. data/spec/autocomplete_generator/rhosimulator/Databases/Databases.db +0 -0
  670. data/spec/autocomplete_generator/rhosimulator/WebpageIcons.db +0 -0
  671. data/spec/autocomplete_generator/rhosimulator/db/syncdbuser.sqlite +0 -0
  672. data/spec/autocomplete_generator/rhosimulator/db/syncdbuser.sqlite.version +1 -0
  673. data/spec/autocomplete_generator/rhosimulator/rholog.txt_pos +1 -0
  674. data/spec/autocomplete_generator/rhosimulator/rhosimconfig.txt +8 -0
  675. data/spec/framework_spec/app/spec/rhomobile/NetHttp_spec.rb +22 -0
  676. data/spec/framework_spec/app/spec_runner.rb +12 -0
  677. data/spec/framework_spec/icon/icon.ico +0 -0
  678. data/spec/framework_spec/icon/icon.png +0 -0
  679. data/spec/perfomance_spec/icon/icon.ico +0 -0
  680. data/spec/perfomance_spec/icon/icon.png +0 -0
  681. data/spec/phone_spec/app/BlobBulkTest/blob_bulk_test.png +0 -0
  682. data/spec/phone_spec/app/BlobBulkTest_s/blob_bulk_test_s.png +0 -0
  683. data/spec/phone_spec/app/PartialTest/_index_partial.erb +5 -0
  684. data/spec/phone_spec/app/PartialTest/_index_partial_nested.erb +2 -0
  685. data/spec/phone_spec/app/PartialTest/index.erb +6 -0
  686. data/spec/phone_spec/app/spec/blob_bulksync_spec.rb +5 -3
  687. data/spec/phone_spec/app/spec/bulksync_spec.rb +33 -41
  688. data/spec/phone_spec/app/spec/database_spec.rb +5 -0
  689. data/spec/phone_spec/app/spec/json_spec.rb +50 -50
  690. data/spec/phone_spec/app/spec/rho_controller_spec.rb +29 -0
  691. data/spec/phone_spec/app/spec/syncengine_spec.rb +184 -47
  692. data/spec/phone_spec/app/spec_runner.rb +3 -2
  693. data/spec/phone_spec/icon/icon.ico +0 -0
  694. data/spec/phone_spec/icon/icon.png +0 -0
  695. data/spec/phone_spec/rhoconfig.txt +2 -0
  696. data/version +1 -1
  697. metadata +339 -47
  698. data/platform/android/Rhodes/PushReceiver.erb +0 -14
  699. data/platform/android/Rhodes/src/com/rhomobile/rhodes/PushReceiver.java +0 -126
  700. data/platform/android/Rhodes/src/com/rhomobile/rhodes/PushService.java +0 -83
  701. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/Config.java +0 -246
  702. data/platform/bb/rhodes/src/com/rho/rubyext/PNGEncoder.java +0 -613
  703. data/res/icons/rho.psd +0 -0
  704. data/res/icons/rhodes.psd +0 -0
  705. data/res/icons/rhosim.psd +0 -0
data/CHANGELOG CHANGED
@@ -1,3 +1,12 @@
1
+ ## 3.4.2
2
+ * iPhone: support iOS 6 and XCode 4.5
3
+ * Fix several Windows Phone 7 issues
4
+ * Add System.zip_file and System.zip_files methods to iPhone, Android and Windows
5
+ * Support zlib library extension for iPhone, Android and Windows
6
+ * Support openssl, digest-sha2 and ezcrypto libraries for iPhone, Android and Windows
7
+ * Fix Blackberry 4.6 build
8
+ * Fix several issues in RhoConnect client related to bulk and blob synchronization
9
+
1
10
  ## 3.3.3
2
11
  * Support freezed models (FixedSchema and PropertyBag)
3
12
  * Detect available network types
data/Rakefile CHANGED
@@ -62,6 +62,7 @@ load File.join(pwd, 'platform/iphone/rbuild/iphone.rake')
62
62
  load File.join(pwd, 'platform/wm/build/wm.rake')
63
63
  load File.join(pwd, 'platform/linux/tasks/linux.rake')
64
64
  load File.join(pwd, 'platform/wp7/build/wp.rake')
65
+ load File.join(pwd, 'platform/wp8/build/wp.rake')
65
66
  load File.join(pwd, 'platform/symbian/build/symbian.rake')
66
67
  load File.join(pwd, 'platform/osx/build/osx.rake')
67
68
 
@@ -94,7 +95,7 @@ namespace "framework" do
94
95
  end
95
96
 
96
97
 
97
- $application_build_configs_keys = ['security_token', 'encrypt_database', 'android_title', 'iphone_db_in_approot', 'iphone_set_approot', 'iphone_userpath_in_approot', "motorola_license", "motorola_license_company"]
98
+ $application_build_configs_keys = ['security_token', 'encrypt_database', 'android_title', 'iphone_db_in_approot', 'iphone_set_approot', 'iphone_userpath_in_approot', "motorola_license", "motorola_license_company","name"]
98
99
 
99
100
  def make_application_build_config_header_file
100
101
  f = StringIO.new("", "w+")
@@ -217,6 +218,7 @@ end
217
218
 
218
219
  def update_rhoprofiler_java_file
219
220
  use_profiler = $app_config['profiler'] || ($app_config[$current_platform] && $app_config[$current_platform]['profiler'])
221
+ use_profiler = use_profiler && use_profiler.to_i() != 0 ? true : false
220
222
 
221
223
  content = ""
222
224
  File.open( File.join( $startdir, "platform/bb/RubyVM/src/com/rho/RhoProfiler.java" ), 'rb' ){ |f| content = f.read() }
@@ -237,6 +239,7 @@ end
237
239
 
238
240
  def update_rhodefs_header_file
239
241
  use_profiler = $app_config['profiler'] || ($app_config[$current_platform] && $app_config[$current_platform]['profiler'])
242
+ use_profiler = use_profiler && use_profiler.to_i() != 0 ? true : false
240
243
 
241
244
  content = ""
242
245
  File.open( File.join( $startdir, "platform/shared/common/RhoDefs.h" ), 'rb' ){ |f| content = f.read() }
@@ -378,6 +381,20 @@ namespace "config" do
378
381
  end
379
382
  end
380
383
 
384
+ # add rawsensors extension for rhoelements app
385
+ if $current_platform == "iphone" || $current_platform == "android"
386
+ if $app_config["app_type"] == 'rhoelements'
387
+ if !$app_config['extensions'].index('rhoelementsext')
388
+ $app_config["extensions"] += ["rawsensors"] unless $app_config['extensions'].index('rawsensors')
389
+ $app_config["extensions"] += ["audiocapture"] unless $app_config['extensions'].index('audiocapture')
390
+ end
391
+ end
392
+ end
393
+ if $app_config['extensions'].index('rhoelementsext')
394
+ $app_config["extensions"].delete("rawsensors")
395
+ $app_config["extensions"].delete("audiocapture")
396
+ end
397
+
381
398
  $hidden_app = $app_config["hidden_app"].nil?() ? "0" : $app_config["hidden_app"]
382
399
 
383
400
  #application build configs
@@ -404,6 +421,14 @@ namespace "config" do
404
421
  #$app_config['extensions'].delete('nfc')
405
422
  $rhoelements_features += "- NFC extension\n"
406
423
  end
424
+ if $app_config['extensions'].index('rawsensors')
425
+ #$app_config['extensions'].delete('rawsensors')
426
+ $rhoelements_features += "- Raw Sensors\n"
427
+ end
428
+ if $app_config['extensions'].index('audiocapture')
429
+ #$app_config['extensions'].delete('audiocapture')
430
+ $rhoelements_features += "- Audio Capture\n"
431
+ end
407
432
 
408
433
  if $current_platform == "wm"
409
434
  $rhoelements_features += "- Windows Mobile/Windows CE platform support\n"
@@ -426,6 +451,10 @@ namespace "config" do
426
451
  $rhoelements_features += "- Motorola WebKit Browser\n"
427
452
  end
428
453
 
454
+ if $app_config['extensions'].index('rho-javascript')
455
+ $rhoelements_features += "- Javascript API for device capabilities\n"
456
+ end
457
+
429
458
  if File.exist?(File.join($app_path, "license.yml"))
430
459
  license_config = Jake.config(File.open(File.join($app_path, "license.yml")))
431
460
 
@@ -462,6 +491,15 @@ namespace "config" do
462
491
  if $app_config['extensions'].index('nfc')
463
492
  $app_config['extensions'].delete('nfc')
464
493
  end
494
+ if $app_config['extensions'].index('rawsensors')
495
+ $app_config['extensions'].delete('rawsensors')
496
+ end
497
+ if $app_config['extensions'].index('audiocapture')
498
+ $app_config['extensions'].delete('audiocapture')
499
+ end
500
+ if $app_config['extensions'].index('rho-javascript')
501
+ $app_config['extensions'].delete('rho-javascript')
502
+ end
465
503
 
466
504
  if $application_build_configs['encrypt_database'] && $application_build_configs['encrypt_database'].to_s == '1'
467
505
  $application_build_configs.delete('encrypt_database')
@@ -598,8 +636,18 @@ def add_extension(path,dest)
598
636
  start = pwd
599
637
  chdir path if File.directory?(path)
600
638
 
601
- Dir.glob("*").each { |f| cp_r f,dest unless f =~ /^ext(\/|(\.yml)?$)/ }
639
+ Dir.glob("*").each do |f|
640
+ cp_r f,dest unless f =~ /^ext(\/|(\.yml)?$)/ || f =~ /^app/ || f =~ /^public/
641
+ end
602
642
 
643
+ if $current_platform == "bb"
644
+ cp_r 'app', File.join( dest, "apps/app" ) if File.exist? 'app'
645
+ cp_r 'public', File.join( dest, "apps/public" ) if File.exist? 'public'
646
+ else
647
+ cp_r 'app', File.join( File.dirname(dest), "apps/app" ) if File.exist? 'app'
648
+ cp_r 'public', File.join( File.dirname(dest), "apps/public" ) if File.exist? 'public'
649
+ end
650
+
603
651
  chdir start
604
652
  end
605
653
 
@@ -622,13 +670,10 @@ def init_extensions(startdir, dest)
622
670
  end
623
671
  end
624
672
 
625
- puts '1'
626
-
627
673
  if extpath.nil?
628
674
  begin
629
675
  $rhodes_extensions = nil
630
676
  require extname
631
- puts '1-2'
632
677
  if $rhodes_extensions
633
678
  extpath = $rhodes_extensions[0]
634
679
  $app_config["extpaths"] << extpath
@@ -819,7 +864,13 @@ def common_bundle_start(startdir, dest)
819
864
  start = pwd
820
865
  chdir rhodeslib
821
866
 
822
- Dir.glob("*").each { |f| cp_r f,dest, :preserve => true }
867
+ Dir.glob("*").each { |f|
868
+ if f.to_s == "autocomplete"
869
+ next
870
+ end
871
+
872
+ cp_r f,dest, :preserve => true
873
+ }
823
874
 
824
875
  chdir dest
825
876
  Dir.glob("**/rhodes-framework.rb").each {|f| rm f}
@@ -876,7 +927,7 @@ def common_bundle_start(startdir, dest)
876
927
 
877
928
  replace_platform = $config['platform']
878
929
  replace_platform = "bb6" if $bb6
879
- replace_platform = "wm" if replace_platform == 'win32'
930
+ #replace_platform = "wm" if replace_platform == 'win32'
880
931
 
881
932
  [File.join($srcdir,'apps'), ($current_platform == "bb" ? File.join($srcdir,'res') : File.join($srcdir,'lib/res'))].each do |folder|
882
933
  chdir folder
@@ -888,7 +939,8 @@ def common_bundle_start(startdir, dest)
888
939
  end
889
940
 
890
941
  Dir.glob("**/*.wm.*").each { |f| rm f }
891
- Dir.glob("**/*.wp7.*").each { |f| rm f }
942
+ Dir.glob("**/*.wp7.*").each { |f| rm f }
943
+ Dir.glob("**/*.wp8.*").each { |f| rm f }
892
944
  Dir.glob("**/*.iphone.*").each { |f| rm f }
893
945
  Dir.glob("**/*.bb.*").each { |f| rm f }
894
946
  Dir.glob("**/*.bb6.*").each { |f| rm f }
@@ -912,7 +964,7 @@ def process_exclude_folders
912
964
 
913
965
  exclude_platform = $config['platform']
914
966
  exclude_platform = "bb6" if $bb6
915
- exclude_platform = "wm" if exclude_platform == 'win32'
967
+ #exclude_platform = "wm" if exclude_platform == 'win32'
916
968
 
917
969
  if $app_config["excludedirs"]
918
970
  excl += $app_config["excludedirs"]['all'] if $app_config["excludedirs"]['all']
@@ -226,12 +226,12 @@ The default build.yml settings generated for iphone are:
226
226
  * emulatortarget: device family for simulator (iphone/ipad)
227
227
  * BundleIdentifier: bundle identifier - used in provisioning profile
228
228
  * BundleURLScheme: bundle URL scheme of your app (used for opening your application from another application by using custom URL scheme)
229
- * entitlements_file: path of your custom Entitlements.plist (if you want use own instead of default) - you also can just put Entitlements.plist file into root folder of your application and it will be automaticallly used during build
229
+ * entitlements_file: path of your custom Entitlements.plist (if you want use own instead of default) - you also can just put Entitlements.plist file into root folder of your application and it will be automatically used during build
230
230
  * production: section used only for Ad Hoc distribution, contain some specific options for prepare .plist and *.ipa files etc.
231
231
  * app_plist_title: title in plist file (application name by default)
232
232
  * app_plist_subtitle: subtitle in plist file (application name by default)
233
- * app_plist_icon_url: icon url writed in plist file
234
- * app_plist_ipa_url: IPA file url writed in plist file
233
+ * app_plist_icon_url: icon url written in plist file
234
+ * app_plist_ipa_url: IPA file url written in plist file
235
235
  * ipa_itunesartwork_image: path to iTunesArtwork image included into IPA file (must be 512x512 JPG image)
236
236
 
237
237
 
@@ -277,6 +277,8 @@ Use <b>iTunes</b> for installing your application package (your_application_name
277
277
 
278
278
  ## Build for Android
279
279
 
280
+ **NOTE: To build for Android it is required JDK 1.6 (JDK 1.7 is not supported).**
281
+
280
282
  ### Setting Up the Android SDK and NDK
281
283
 
282
284
  Check that your [OS is compatible with the Android SDK](http://developer.android.com/sdk/requirements.html).
@@ -294,7 +296,7 @@ Download and unzip the [Android NDK](http://developer.android.com/sdk/ndk/index.
294
296
 
295
297
  ** NOTE: You need to update Android SDK platforms and Android NDK to latest ones as you update to new rhodes **
296
298
 
297
- In RhoStudio -> Preferences on the Macintosh or Winndows -> Preferences on Windows, open Rhomobile->Android and set the paths to your Android SDK and NDK installations.
299
+ In RhoStudio -> Preferences on the Macintosh or Windows -> Preferences on Windows, open Rhomobile->Android and set the paths to your Android SDK and NDK installations.
298
300
 
299
301
  <img src="http://rhodocs.s3.amazonaws.com/rhostudio-tutorial/preferences-android-sdk.png"/>
300
302
 
@@ -309,7 +311,7 @@ In case you are planning to work with native geo mapping (the MapView interface)
309
311
  android:
310
312
  apikey: "GOOGLE-API-KEY-FOR-ANDROID"
311
313
 
312
- * Enable 'mapping' in your application's `build.yml` (or in `<rhodes-root>/rhobuild.yml`). In RhoStudio, you can double-click on your application's build.yml and edit from the text editor; otherwise, you can edit rhobuil.yml or build.yml from another text editor.
314
+ * Enable 'mapping' in your application's `build.yml` (or in `<rhodes-root>/rhobuild.yml`). In RhoStudio, you can double-click on your application's build.yml and edit from the text editor; otherwise, you can edit rhobuild.yml or build.yml from another text editor.
313
315
 
314
316
  android:
315
317
  mapping: yes
@@ -333,13 +335,13 @@ Otherwise your css files will not be loaded in Android 1.5 (and higher).
333
335
 
334
336
  ### Device capabilities settings in build.yml
335
337
 
336
- On Android, you must specify your device capabilities the your application will use. By default, these capabiliteis are NOT enabled.
338
+ On Android, you must specify your device capabilities the your application will use. By default, these capabilities are NOT enabled.
337
339
 
338
340
  In RhoStudio, you can double-click on your application's build.yml file, then click the Rhobuild setting tab, then click the Capabilities: Add button. You will see a list of capabilities you can check to activate for your application.
339
341
 
340
342
  <img src="http://rhodocs.s3.amazonaws.com/rhostudio-tutorial/select-capabilities.png"/>
341
343
 
342
- You can also edit the build.yml file directly with a text editor. Here is a list of capabilites you can add to the capabilities section in your application build.yml file.
344
+ You can also edit the build.yml file directly with a text editor. Here is a list of capabilities you can add to the capabilities section in your application build.yml file.
343
345
 
344
346
  audio
345
347
  camera
@@ -362,6 +364,13 @@ You can set a greater minimal API level in build.yml. For example, the following
362
364
  android:
363
365
  minSDK: 11
364
366
 
367
+ ### Customizing application's AndroidManifest.xml
368
+
369
+ If you have an urgent need to put changes in AndroidManifest.xml that are not supported by build settings, you may edit a manifest template located at <Rhodes>/platform/android/Rhodes/AndroidManifest.xml.erb.
370
+ Please note that this template does not relate to a particular application: it is used for every Android application build.
371
+
372
+ ** NOTE: To see how to change AndroidManifest.xml at extension build, see [Extending the Rhodes Framework](extensions#rewriting-the-generated-native-extension-source-code-for-android). **
373
+
365
374
  ### Building and Running Your Android Application with RhoStudio
366
375
 
367
376
  To start the build process, create a Run Configuration: select your project in the Project Explorer, and either:
@@ -392,7 +401,7 @@ In the Run Configurations window, select Android in Platform, and Device in Simu
392
401
 
393
402
  #### Reading the Log File with RhoStudio
394
403
 
395
- After you run your applciation in RhoStudio, your application log file, rholog.txt, is stored in your application directory. You can open and read rholog.txt in RhoStudio by double-clicking on it in the Project Explorer.
404
+ After you run your application in RhoStudio, your application log file, rholog.txt, is stored in your application directory. You can open and read rholog.txt in RhoStudio by double-clicking on it in the Project Explorer.
396
405
 
397
406
  ### Building and Running Your Android Application from the Command Line
398
407
 
@@ -516,7 +525,7 @@ Now you are ready to install your application on your device and/or emulator.
516
525
 
517
526
  In case of troubles in Eclipse while setting up the Android SDK and target, try "Rhodes project context menu" > "Android Tools" > "Fix Project Properties".
518
527
 
519
- It is possible your application has stopped unexpectedly just after the first build. In this case try to copy autogenerated java source files from the application folder <app>/bin/tmp to the Rhodes project.
528
+ It is possible your application has stopped unexpectedly just after the first build. In this case try to copy auto-generated java source files from the application folder <app>/bin/tmp to the Rhodes project.
520
529
 
521
530
  ### Getting application log from device or emulator
522
531
 
@@ -563,7 +572,7 @@ Before you build edit build.yml from the application directory. Set the bbver to
563
572
  bbver: 5.0
564
573
 
565
574
  #### To build and run using Blackberry simulator 5.0 and higher
566
- Starting from Blackberry JDE 5.0, simulator supports loading application cod-files to simulator without restart. This feature greatly improve Blackberry development perfomance.
575
+ Starting from Blackberry JDE 5.0, simulator supports loading application cod-files to simulator without restart. This feature greatly improve Blackberry development performance.
567
576
  There are 2 possible scenarios available:
568
577
 
569
578
  * Load application cod-file manually using Simulator menu: 'File\Load Blackberry application or theme...':
@@ -723,7 +732,7 @@ The log.txt file is the extracted log and should appear on the `C:\` drive.
723
732
 
724
733
  * Run eclipse and choose rhodes\platform\bb as a workspace directory. Do not create workspace!
725
734
  * Open menu Window\Preferences
726
- * Blackberry java plug-in\Warnings - check all 3 chekboxes to suppress all warnings
735
+ * Blackberry java plug-in\Warnings - check all 3 checkboxes to suppress all warnings
727
736
  * Java\Compiler - set Compiler compliance level to 1.4
728
737
  * Go to File\Import... menu. Select `General\Existing projects into Workspace` workspace node. Press Next.
729
738
  * Browse for `<rhodes>\platform\bb\RubyVM`. Press Finish. The project will be automatically build.
@@ -792,7 +801,7 @@ You can find installation files in QT SDK folder like below:
792
801
  For Symbian 9.4
793
802
 
794
803
  QT - C:/QtSDK/Symbian/sis/Symbian1/Qt/4.7.3/qt.sis
795
- (install it only on disc C:, before install pls close all opened applications)
804
+ (install it only on disc C:, before install please close all open applications)
796
805
 
797
806
  QT WebKit - C:/QtSDK/Symbian/sis/Symbian1/Qt/4.7.3/qtwebkit.sis
798
807
  QT Mobility - C:/QtSDK/Symbian/sis/Symbian1/QtMobility/1.1.3/qtmobility.sis
@@ -817,7 +826,7 @@ NOTE: You have to install Rhodes on the same local disk with QtSDK!
817
826
 
818
827
  ### Build application from the command line
819
828
 
820
- Add pathes to Qt SDK and MS Visual Studio 2005 to rhobuild.yml in the Rhodes folder:
829
+ Add paths to Qt SDK and MS Visual Studio 2005 to rhobuild.yml in the Rhodes folder:
821
830
 
822
831
  env:
823
832
  paths:
@@ -859,7 +868,9 @@ Follow [All Platforms Prerequisites](#all-platforms-prerequisites).
859
868
  Make sure you have installed the following software.
860
869
 
861
870
  * .NET Compact Framework
862
- * Windows Mobile 6 Professional SDK(s)
871
+ * For Windows Mobile 6: Windows Mobile 6 Professional SDK Refresh
872
+ * For Windows Mobile 6.5.3: Windows Mobile 6.5.3 Professional DTK
873
+ * For Windows CE 5.0: MC3000c50b PSDK from [Motorola Support Central](http://support.symbol.com/support/supportcentral/supportcentral.do?id=m1)
863
874
  * Microsoft Active Sync 4.5 for Windows XP; Windows Mobile Device Center for Windows Vista or higher
864
875
  * Microsoft Device Emulator 3.0 for Windows Vista or higher
865
876
  * Visual Studio 2008.
@@ -937,6 +948,8 @@ To start the build process, create a Run Configuration: select your project in t
937
948
 
938
949
  The Run Configurations window appears.
939
950
 
951
+ **NOTE: In the RhoStudio Run Configurations window, when you choose the Windows Mobile platform and any of the platform types (such as 6.0, 6.5.3, CE5.0), this platform setting overrides the SDK settings for Windows Mobile in the application build.yml file. This override does NOT affect RhoMobile Production Build, or using rake (without RhoStudio) to build and run a Windows Mobile app; these options use the Windows Mobile SDK settings in the build.yml file.**
952
+
940
953
  #### Running on the Windows Mobile Simulator in RhoStudio
941
954
 
942
955
  To run on the Windows Mobile simulator, select Windows Mobile in Platform and Simulator in Simulator type. Then click the Run button.
@@ -1052,9 +1065,24 @@ NOTE: If your application uses HTTPS protocol, then you need to build Qt librari
1052
1065
 
1053
1066
  ### Build application from the command line
1054
1067
 
1055
- Make sure that path to vcbuild.exe (something like `C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages`) is in your PATH env variable. The list of paths which should be in PATH env variable:
1068
+ Make sure that path to vcbuild.exe (something like `C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages`) is in your PATH env variable.
1069
+
1070
+ The list of paths which should be in PATH env variable:
1071
+ <i>C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE;C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN;C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools;C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\bin;C:\Program Files\Microsoft Visual Studio 9.0\VC\PlatformSDK\bin;C:\Program Files\Microsoft Visual Studio 9.0\SDK\v3.5\bin</i>
1072
+
1073
+ Also check that the vcbuild path is shown in the rhobuild.yml file. The rhobuild.yml file is located in the Rhodes folder (example location: `C:/RhoStudio/ruby/lib/ruby/gems/1.8/gems/rhodes-3.1.1`).
1074
+
1075
+ If you use Visual Studio 2008 :
1076
+
1077
+ env:
1078
+ paths:
1079
+ vcbuild: C:/Program Files/Microsoft Visual Studio 9.0/VC/vcpackages/vcbuild.exe
1080
+
1081
+ If you use Visual Studio 2008 on 64-bit installations:
1056
1082
 
1057
- <i>C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE;C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN;C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools;C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\bin;C:\Program Files\Microsoft Visual Studio 9.0\VC\PlatformSDK\bin;C:\Program Files\Microsoft Visual Studio 9.0\SDK\v2.0\bin</i>
1083
+ env:
1084
+ paths:
1085
+ vcbuild: C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/vcpackages/vcbuild.exe
1058
1086
 
1059
1087
  If you use Visual Studio 2010 : add path to `msbuild` to `rhobuild.yml` in rhodes folder:
1060
1088
 
@@ -1067,7 +1095,7 @@ To build and run the application issue command:
1067
1095
  :::term
1068
1096
  $ rake run:win32
1069
1097
 
1070
- *NOTE: If you use HTTPS, add to the `PATH` variable: `<path-to-rhodes>\lib\extensions\openssl.so\ext\win32\bin`
1098
+ *NOTE: To use `rake run:win32` command, add to the `PATH` variable: `<path-to-rhodes>\lib\extensions\openssl.so\ext\win32\bin`
1071
1099
 
1072
1100
  To clean all temporary and binary files execute command:
1073
1101
 
@@ -1097,7 +1125,7 @@ On 64-bit platform:
1097
1125
  * Application Readme file can be provided by application developer. If file with README.html name exists in the root of application folder when Installer will display show readme at the final page of the Installer
1098
1126
  * Application Icon should be used for Installer and application exe
1099
1127
 
1100
- To build intaller bundle use command:
1128
+ To build installer bundle use command:
1101
1129
 
1102
1130
  :::term
1103
1131
  $ rake device:win32:production
@@ -1251,7 +1279,10 @@ In the build.yml in your application folder there is an entry "name". This is th
1251
1279
  name: My Own App
1252
1280
 
1253
1281
  ### Application Icon
1254
- Place your image to use as an icon in a folder called `icon` in your application. If you created an app called `testapp` then the folder would be `testapp/icon`. The icon should be named `icon.png` and `icon.ico` for Windows Mobile. Starting from iOS 4.0, Apple require three icons for application: 57x57, 72x72 and 114x114 pixels. Prepare such files, name them as `icon57.png`, `icon72.png` and `icon114.png` and place into `icon` folder
1282
+ Place your image to use as an icon into the folder called `icon` in your application. If you created an app called `testapp` then the folder would be `testapp/icon`.
1283
+
1284
+ * Windows Mobile and Windows: You can add an icon in two formats: `icon.png` and `icon.ico`.
1285
+ * iOS 4.0: Apple require three icons for application: 57x57, 72x72 and 114x114 pixels. Prepare such files, name them as `icon57.png`, `icon72.png` and `icon114.png` and place into `icon` folder
1255
1286
 
1256
1287
  testapp/
1257
1288
  build.yml
@@ -1270,40 +1301,47 @@ Place your image to use as an icon in a folder called `icon` in your application
1270
1301
  * rhodes\platform\iphone\icon.png, icon57.png, icon72.png, icon114.png - change to your icons
1271
1302
  * check rhodes\platform\iphone\Info.plist it should contain BundleName=${PRODUCT_NAME}
1272
1303
 
1304
+ ### Android
1305
+ You can change the icon for your Android application by replacing icon.png, which is in your application icon folder, with a new icon.png.
1306
+
1273
1307
  ### Windows Mobile
1274
- Windows Mobile Shell program caches program icons. This cache is cleared only when device or simulator is restarted.
1275
- So if you change icon of application, you have to restart device/simulator(uninstall/install is not enough).
1308
+ Windows Mobile Shell program caches program icons. This cache is cleared only when the device or the simulator is restarted. If you change the icon of your application, you have to restart the device or simulator: uninstall/install is not enough.
1276
1309
 
1277
1310
  ### Symbian
1278
- You can change icon for your Symbian application replacing icon.svg which is in your application icon folder with a new one.
1311
+ You can change the icon for your Symbian application by replacing icon.svg, which is in your application icon folder, with a new icon.svg.
1312
+
1313
+ ## Upgrade Application
1314
+
1315
+ Rhodes 3.3 supports application code upgrade for iPhone (non AppStore distribution), Android, and Windows Mobile. You can do a total upgrade or partial upgrade.
1316
+
1317
+ ### Total Upgrade
1279
1318
 
1280
- ## Upgrade application
1281
- Rhodes 3.3 support application code upgrade for iPhone(non AppStore distribution), Android and Windows Mobile.
1319
+ You can replace the total application bundle with a new bundle packed in an update bundle archive file.
1282
1320
 
1283
- ### Prepare application package
1321
+ #### Prepare Total Application Package
1284
1322
 
1285
- To prepare upgrade package for iPhone run in application folder:
1323
+ To prepare the upgrade package for iPhone, run this command in your application folder:
1286
1324
 
1287
1325
  :::term
1288
1326
  $ rake build:iphone:upgrade_package
1289
1327
 
1290
- Application package will be placed to <app_root>/bin/target/iphone
1328
+ The application package will be placed in `<app_root>/bin/target/iphone`.
1291
1329
 
1292
- To prepare upgrade package for Android run in application folder:
1330
+ To prepare the upgrade package for Android, run this command in your application folder:
1293
1331
 
1294
1332
  :::term
1295
1333
  $ rake build:android:upgrade_package
1296
1334
 
1297
- Application package will be placed to <app_root>/bin/target/android
1335
+ The application package will be placed in `<app_root>/bin/target/android`.
1298
1336
 
1299
- To prepare upgrade package for Windows Mobile run in application folder:
1337
+ To prepare the upgrade package for Windows Mobile, run this command in your application folder:
1300
1338
 
1301
1339
  :::term
1302
1340
  $ rake build:wm:upgrade_package
1303
1341
 
1304
- Application package will be placed to <app_root>/bin/target/wmp6
1342
+ The application package will be placed in `<app_root>/bin/target/wmp6`.
1305
1343
 
1306
- ### Upgrade package from running application
1344
+ #### Download Bundle Package and Replace Application Current Bundle
1307
1345
 
1308
1346
  Download package:
1309
1347
  :::ruby
@@ -1322,13 +1360,84 @@ Unzip and replace package:
1322
1360
  WebView.navigate url_for :action => :error
1323
1361
  end
1324
1362
 
1325
- Application will restart automatically.
1363
+ The application will restart automatically.
1326
1364
 
1327
- NOTE: On iPhone and Android application has to be started manually.
1365
+ NOTE: On iPhone and Android, the application has to be started manually.
1328
1366
 
1329
- NOTE: When using Rho::RhoSupport.rhobundle_download method on a network that has proxies, you may need to configure a proxy exception on the device, if your HTTP server is also on that same network. Ex: local network has an IP subnet of 192.168 and it uses a proxy. On the Windows Mobile device go into System >> Settings >> Connections >>Advanced and add 192.168.* to the proxy exception list.
1367
+ NOTE: When using Rho::RhoSupport.rhobundle_download method on a network that has proxies, you may need to configure a proxy exception on the device, if your HTTP server is also on that same network. Example: local network has an IP subnet of 192.168 and it uses a proxy. On the Windows Mobile device, go into System >> Settings >> Connections >> Advanced and add 192.168.* to the proxy exception list.
1368
+
1369
+ NOTE: The URL parameter for rhobundle_download must be a HTTP URL - FTP is not supported.
1370
+
1371
+ ### Partial Upgrade
1372
+
1373
+ You can add new files or replace old files with new ones and create an updated bundle packed in an update bundle archive file.
1374
+
1375
+ #### Prepare Partial Application Package
1376
+
1377
+ To add new files or replace old files with new ones in your current application's bundle content, make a list of the files in a file named `upgrade_package_add_files.txt`. Here is an example of upgrade_package_add_files.txt.
1378
+
1379
+ app/index.erb
1380
+ app/Bundle/controller.rb
1381
+ app/Bundle/error.erb
1382
+
1383
+ In the same way, you can also remove files with an `upgrade_package_remove_files.txt` file. Here is an example of upgrade_package_remove_files.txt.
1384
+
1385
+ app/Bundle/wait.erb
1386
+ app/Model2
1387
+
1388
+ Execute the rake commands in your application folder to perform the partial upgrade.
1389
+
1390
+ To prepare partial upgrade package for iPhone run in application folder:
1391
+
1392
+ :::term
1393
+ $ rake build:iphone:upgrade_package_partial
1394
+
1395
+ Application package will be placed to /bin/target/iphone
1396
+
1397
+ To prepare partial upgrade package for Android run in application folder:
1398
+
1399
+ :::term
1400
+ $ rake build:android:upgrade_package_partial
1401
+
1402
+ Application package will be placed to /bin/target/android
1403
+
1404
+ To prepare partial upgrade package for Windows Mobile run in application folder:
1405
+
1406
+ :::term
1407
+ $ rake build:wm:upgrade_package_partial
1408
+
1409
+ Application package will be placed to /bin/target/wmp6.
1410
+
1411
+ #### Download Bundle Package and Replace Application Current Bundle
1412
+
1413
+ You then unzip, upload and replace the application package.
1414
+
1415
+ Download package:
1416
+ :::ruby
1417
+ if !::Rho::RhoSupport.rhobundle_download(url_to_package, url_for(:action => :httpdownload_callback))
1418
+ render :action =>:error
1419
+ else
1420
+ render :action => :wait_download, :back => '/app'
1421
+ end
1422
+
1423
+ Upload and Replace Package:
1424
+ :::ruby
1425
+ if System.unzip_file(::Rho::RhoSupport.rhobundle_getfilename())==0
1426
+ System.replace_current_bundle( File.dirname(::Rho::RhoSupport.rhobundle_getfilename()), { :callback => url_for(:action => :update_finished_callback), :do_not_restart_app => true } )
1427
+ render :action => :wait_replace, :back => '/app'
1428
+ else
1429
+ WebView.navigate url_for :action => :error
1430
+ end
1431
+
1432
+ With the System.replace_current_bundle method, you can supply a params hash with the following options.
1433
+
1434
+ `:callback` - url with callback. Called when upgrade bundle procedure is finished.
1435
+ `:do_not_restart_app` - bool, if true your application will not automatically restart after the procedure is finished.
1436
+
1437
+ One of the callback parameters should be `status`: `"ok"` or `"error"`.
1438
+
1439
+ NOTE: Use :do_not_restart_app very carefully. You can disable the restart of your application after a bundle update only if you change only images, JavaScript, and other similar types of files, but if you change files such as Ruby code, models, etc. In general, we recommend you do not use this parameter if you do not understand how your application works on your particular platform. Restarting your application after an update is safe.
1440
+
1441
+ ### Sample Upgrade Bundle Package
1330
1442
 
1331
- NOTE: The URL parameter for rhobundle_download must be a HTTP URL - FTP is not supported
1332
-
1333
- ### Sample
1334
1443
  See [Reload bundle demo](http://github.com/rhomobile/ReloadBundleDemo) for more information.