rhodes 3.3.3.beta.4 → 3.3.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (497) hide show
  1. data/CHANGELOG +7 -5
  2. data/CREDITS +2215 -0
  3. data/Rakefile +225 -59
  4. data/bin/c2dm.rb +0 -0
  5. data/bin/get-rhodes-info.bat +0 -0
  6. data/bin/migrate-rhodes-app +0 -0
  7. data/bin/migrate-rhodes-app.bat +0 -0
  8. data/bin/rhodes +0 -0
  9. data/bin/rhodes-setup +0 -0
  10. data/bin/rhodes-setup.bat +0 -0
  11. data/bin/rhogen +0 -0
  12. data/bin/rhogen.bat +0 -0
  13. data/bin/set-rhodes-sdk +0 -0
  14. data/bin/set-rhodes-sdk.bat +0 -0
  15. data/bin/upgrade-rhodes-app +0 -0
  16. data/bin/upgrade-rhodes-app.bat +0 -0
  17. data/doc/build.txt +20 -9
  18. data/doc/configuration.txt +8 -8
  19. data/doc/connect-to-web-services.txt +1 -1
  20. data/doc/device-caps.txt +63 -26
  21. data/doc/extensions.txt +14 -2
  22. data/doc/install.txt +28 -19
  23. data/doc/introduction.txt +6 -3
  24. data/doc/jqt-jqm-transition.txt +10 -9
  25. data/doc/release.txt +5 -1
  26. data/doc/rhodes-command-line.txt +130 -0
  27. data/doc/rhom.txt +16 -11
  28. data/doc/rhostudio-eclipse.txt +3 -3
  29. data/doc/simulator.txt +28 -31
  30. data/doc/syncengine-ajax-api.txt +246 -0
  31. data/doc/synchronization.txt +21 -3
  32. data/doc/test-log-debug.txt +3 -1
  33. data/doc/ui.txt +16 -16
  34. data/ext/extconf.rb +8 -0
  35. data/lib/build/jake.rb +5 -5
  36. data/lib/extensions/barcode/ext/barcode/platform/android/Rakefile +9 -9
  37. data/lib/extensions/barcode/ext/barcode/platform/android/jni/src/barcode.cpp +81 -1
  38. data/lib/extensions/barcode/ext/barcode/platform/android/src/com/google/zxing/client/android/CaptureActivityHandler.java +6 -13
  39. data/lib/extensions/barcode/ext/barcode/platform/android/src/com/google/zxing/client/android/DecodeHandler.java +2 -6
  40. data/lib/extensions/barcode/ext/barcode/platform/android/src/com/rhomobile/barcode/Barcode.java +12 -1
  41. data/lib/extensions/barcode/ext/barcode/platform/bb/run.bat +0 -0
  42. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeCallbackHelper.h +2 -0
  43. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeCallbackHelper.mm +36 -0
  44. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewController.h +0 -0
  45. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewController.m +15 -5
  46. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/barcode.m +64 -1
  47. data/lib/extensions/barcode/ext/barcode/shared/ruby/barcode.i +35 -1
  48. data/lib/extensions/barcode/ext/barcode/shared/ruby/barcode_wrap.c +126 -2
  49. data/lib/extensions/barcode/ext/barcode/shared/src/zbar.c +18 -1
  50. data/lib/extensions/barcode/ext/build +0 -0
  51. data/lib/extensions/barcode/ext/build.bat +0 -0
  52. data/lib/extensions/digest-md5/ext/Rakefile +12 -10
  53. data/lib/extensions/digest-md5/ext/build +0 -0
  54. data/lib/extensions/digest-md5/ext/build.bat +0 -0
  55. data/lib/extensions/digest-md5/ext/digest-md5.sln +2 -2
  56. data/lib/extensions/digest-md5/ext/digest-md5.vcproj +41 -28
  57. data/lib/extensions/digest-sha1/ext/Rakefile +11 -10
  58. data/lib/extensions/digest-sha1/ext/build +0 -0
  59. data/lib/extensions/digest-sha1/ext/build.bat +0 -0
  60. data/lib/extensions/digest-sha1/ext/digest-sha1.sln +2 -2
  61. data/lib/extensions/digest-sha1/ext/digest-sha1.vcproj +41 -28
  62. data/lib/extensions/digest/ext/Rakefile +12 -11
  63. data/lib/extensions/digest/ext/build +0 -0
  64. data/lib/extensions/digest/ext/build.bat +0 -0
  65. data/lib/extensions/digest/ext/digest.sln +44 -0
  66. data/lib/extensions/digest/ext/digest.vcproj +40 -27
  67. data/lib/extensions/esri/ext/build +0 -0
  68. data/lib/extensions/esri/ext/build.bat +0 -0
  69. data/lib/extensions/fcntl/ext/Rakefile +10 -9
  70. data/lib/extensions/fcntl/ext/build +0 -0
  71. data/lib/extensions/fcntl/ext/build.bat +0 -0
  72. data/lib/extensions/fcntl/ext/fcntl.vcproj +1 -1
  73. data/lib/extensions/nfc/ext/build +0 -0
  74. data/lib/extensions/nfc/ext/build.bat +0 -0
  75. data/lib/extensions/nfc/ext/nfc/platform/android/Rakefile +11 -11
  76. data/lib/extensions/nfc/ext/nfc/platform/android/jni/src/nfc.cpp +0 -0
  77. data/lib/extensions/nfc/ext/nfc/platform/android/src/com/rhomobile/nfc/Nfc.java +12 -10
  78. data/lib/extensions/nfc/ext/nfc/shared/ruby/nfc_wrap.c +16 -9
  79. data/lib/extensions/pdf-writer/color.rb +145 -0
  80. data/lib/extensions/pdf-writer/color/cmyk.rb +279 -0
  81. data/lib/extensions/pdf-writer/color/css.rb +28 -0
  82. data/lib/extensions/pdf-writer/color/grayscale.rb +212 -0
  83. data/lib/extensions/pdf-writer/color/hsl.rb +221 -0
  84. data/lib/extensions/pdf-writer/color/palette.rb +16 -0
  85. data/lib/extensions/pdf-writer/color/palette/adobecolor.rb +272 -0
  86. data/lib/extensions/pdf-writer/color/palette/gimp.rb +116 -0
  87. data/lib/extensions/pdf-writer/color/palette/monocontrast.rb +180 -0
  88. data/lib/extensions/pdf-writer/color/rgb-colors.rb +355 -0
  89. data/lib/extensions/pdf-writer/color/rgb.rb +453 -0
  90. data/lib/extensions/pdf-writer/color/rgb/metallic.rb +43 -0
  91. data/lib/extensions/pdf-writer/color/yiq.rb +84 -0
  92. data/lib/extensions/pdf-writer/ext/LICENSES/color/Licence.txt +27 -0
  93. data/lib/extensions/pdf-writer/ext/LICENSES/color/README.txt +32 -0
  94. data/lib/extensions/pdf-writer/ext/LICENSES/pdf-writer/LICENCE +131 -0
  95. data/lib/extensions/pdf-writer/ext/LICENSES/pdf-writer/README +33 -0
  96. data/lib/extensions/pdf-writer/ext/LICENSES/transaction-simple/Licence.txt +25 -0
  97. data/lib/extensions/pdf-writer/ext/LICENSES/transaction-simple/Readme.txt +204 -0
  98. data/lib/extensions/pdf-writer/pdf/charts.rb +13 -0
  99. data/lib/extensions/pdf-writer/pdf/charts/stddev.rb +430 -0
  100. data/lib/extensions/pdf-writer/pdf/math.rb +108 -0
  101. data/lib/extensions/pdf-writer/pdf/quickref.rb +332 -0
  102. data/lib/extensions/pdf-writer/pdf/simpletable.rb +947 -0
  103. data/lib/extensions/pdf-writer/pdf/techbook.rb +901 -0
  104. data/lib/extensions/pdf-writer/pdf/writer.rb +2729 -0
  105. data/lib/extensions/pdf-writer/pdf/writer/arc4.rb +63 -0
  106. data/lib/extensions/pdf-writer/pdf/writer/fontmetrics.rb +203 -0
  107. data/lib/extensions/pdf-writer/pdf/writer/fonts/Courier-Bold.afm +342 -0
  108. data/lib/extensions/pdf-writer/pdf/writer/fonts/Courier-BoldOblique.afm +342 -0
  109. data/lib/extensions/pdf-writer/pdf/writer/fonts/Courier-Oblique.afm +342 -0
  110. data/lib/extensions/pdf-writer/pdf/writer/fonts/Courier.afm +342 -0
  111. data/lib/extensions/pdf-writer/pdf/writer/fonts/Helvetica-Bold.afm +2827 -0
  112. data/lib/extensions/pdf-writer/pdf/writer/fonts/Helvetica-BoldOblique.afm +2827 -0
  113. data/lib/extensions/pdf-writer/pdf/writer/fonts/Helvetica-Oblique.afm +3051 -0
  114. data/lib/extensions/pdf-writer/pdf/writer/fonts/Helvetica.afm +3051 -0
  115. data/lib/extensions/pdf-writer/pdf/writer/fonts/MustRead.html +19 -0
  116. data/lib/extensions/pdf-writer/pdf/writer/fonts/Symbol.afm +213 -0
  117. data/lib/extensions/pdf-writer/pdf/writer/fonts/Times-Bold.afm +2588 -0
  118. data/lib/extensions/pdf-writer/pdf/writer/fonts/Times-BoldItalic.afm +2384 -0
  119. data/lib/extensions/pdf-writer/pdf/writer/fonts/Times-Italic.afm +2667 -0
  120. data/lib/extensions/pdf-writer/pdf/writer/fonts/Times-Roman.afm +2419 -0
  121. data/lib/extensions/pdf-writer/pdf/writer/fonts/ZapfDingbats.afm +225 -0
  122. data/lib/extensions/pdf-writer/pdf/writer/graphics.rb +813 -0
  123. data/lib/extensions/pdf-writer/pdf/writer/graphics/imageinfo.rb +365 -0
  124. data/lib/extensions/pdf-writer/pdf/writer/lang.rb +43 -0
  125. data/lib/extensions/pdf-writer/pdf/writer/lang/en.rb +99 -0
  126. data/lib/extensions/pdf-writer/pdf/writer/object.rb +23 -0
  127. data/lib/extensions/pdf-writer/pdf/writer/object/action.rb +35 -0
  128. data/lib/extensions/pdf-writer/pdf/writer/object/annotation.rb +42 -0
  129. data/lib/extensions/pdf-writer/pdf/writer/object/catalog.rb +39 -0
  130. data/lib/extensions/pdf-writer/pdf/writer/object/contents.rb +65 -0
  131. data/lib/extensions/pdf-writer/pdf/writer/object/destination.rb +40 -0
  132. data/lib/extensions/pdf-writer/pdf/writer/object/encryption.rb +53 -0
  133. data/lib/extensions/pdf-writer/pdf/writer/object/font.rb +72 -0
  134. data/lib/extensions/pdf-writer/pdf/writer/object/fontdescriptor.rb +34 -0
  135. data/lib/extensions/pdf-writer/pdf/writer/object/fontencoding.rb +40 -0
  136. data/lib/extensions/pdf-writer/pdf/writer/object/image.rb +304 -0
  137. data/lib/extensions/pdf-writer/pdf/writer/object/info.rb +51 -0
  138. data/lib/extensions/pdf-writer/pdf/writer/object/outline.rb +30 -0
  139. data/lib/extensions/pdf-writer/pdf/writer/object/outlines.rb +30 -0
  140. data/lib/extensions/pdf-writer/pdf/writer/object/page.rb +195 -0
  141. data/lib/extensions/pdf-writer/pdf/writer/object/pages.rb +115 -0
  142. data/lib/extensions/pdf-writer/pdf/writer/object/procset.rb +46 -0
  143. data/lib/extensions/pdf-writer/pdf/writer/object/viewerpreferences.rb +74 -0
  144. data/lib/extensions/pdf-writer/pdf/writer/ohash.rb +58 -0
  145. data/lib/extensions/pdf-writer/pdf/writer/oreader.rb +25 -0
  146. data/lib/extensions/pdf-writer/pdf/writer/state.rb +48 -0
  147. data/lib/extensions/pdf-writer/pdf/writer/strokestyle.rb +138 -0
  148. data/lib/extensions/pdf-writer/transaction/simple.rb +486 -0
  149. data/lib/extensions/pdf-writer/transaction/simple/group.rb +146 -0
  150. data/lib/extensions/pdf-writer/transaction/simple/threadsafe.rb +68 -0
  151. data/lib/extensions/pdf-writer/transaction/simple/threadsafe/group.rb +36 -0
  152. data/lib/framework/builtinME.rb +0 -0
  153. data/lib/framework/dateOrig.rb +8 -2
  154. data/lib/framework/rational.rb +0 -0
  155. data/lib/framework/res/esri.wm.png +0 -0
  156. data/lib/framework/rho/rho.rb +6 -0
  157. data/lib/framework/rho/rhobluetooth.rb +0 -0
  158. data/lib/framework/rho/rhofsconnector.rb +0 -0
  159. data/lib/framework/rho/rhonativeviewmanager.rb +0 -0
  160. data/lib/framework/rhofsconnector.rb +0 -0
  161. data/lib/framework/rhom/rhom_object_factory.rb +8 -0
  162. data/lib/framework/rhomotoapi.rb +3 -2
  163. data/platform/android/Rhodes/jni/include/rhodes/JNIRhodes.h +9 -1
  164. data/platform/android/Rhodes/jni/include/rhodes/details/rhojava.inc +1 -0
  165. data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_file_RhoFileApi.h +26 -2
  166. data/platform/android/Rhodes/jni/src/callbacks.cpp +0 -5
  167. data/platform/android/Rhodes/jni/src/camera.cpp +1 -1
  168. data/platform/android/Rhodes/jni/src/fileapi.cpp +39 -19
  169. data/platform/android/Rhodes/jni/src/geolocation.cpp +3 -3
  170. data/platform/android/Rhodes/jni/src/mapview.cpp +206 -64
  171. data/platform/android/Rhodes/jni/src/nativeview.cpp +1 -1
  172. data/platform/android/Rhodes/jni/src/rhodes.cpp +13 -0
  173. data/platform/android/Rhodes/jni/src/rhodesapp.cpp +20 -0
  174. data/platform/android/Rhodes/jni/src/rhodessystem.cpp +36 -3
  175. data/platform/android/Rhodes/jni/src/signature.cpp +22 -2
  176. data/platform/android/Rhodes/res/drawable/alert_info.png +0 -0
  177. data/platform/android/Rhodes/res/drawable/esri.png +0 -0
  178. data/platform/android/Rhodes/src/com/rhomobile/rhodes/Capabilities.java +17 -16
  179. data/platform/android/Rhodes/src/com/rhomobile/rhodes/Logger.java +4 -1
  180. data/platform/android/Rhodes/src/com/rhomobile/rhodes/MemoryInfoCollector.java +67 -0
  181. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivity.java +139 -114
  182. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesApplication.java +106 -13
  183. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java +11 -3
  184. data/platform/android/Rhodes/src/com/rhomobile/rhodes/WebView.java +71 -16
  185. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraNewService.java +4 -1
  186. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraSemiService.java +4 -1
  187. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/AbstractRhoExtension.java +22 -1
  188. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/Config.java +243 -0
  189. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/IRhoExtManager.java +19 -1
  190. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/IRhoExtension.java +9 -1
  191. data/platform/android/Rhodes/src/com/rhomobile/rhodes/{RhodesActivityListener.java → extmanager/IRhoListener.java} +16 -12
  192. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhoExtManager.java +63 -1
  193. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhoExtManagerImpl.java +239 -14
  194. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhodesStartupListeners.java +9 -0
  195. data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/WebkitExtension.java +53 -0
  196. data/platform/android/Rhodes/src/com/rhomobile/rhodes/file/RhoFileApi.java +27 -12
  197. data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocation.java +124 -62
  198. data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocationImpl.java +49 -137
  199. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SimpleMainView.java +84 -114
  200. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SplashScreen.java +75 -82
  201. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/TabbedMainView.java +3 -2
  202. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/Callout.java +4 -0
  203. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapBitmapManager.java +124 -0
  204. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapView.java +232 -43
  205. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/Request.java +193 -0
  206. data/platform/android/Rhodes/src/com/rhomobile/rhodes/nativeview/IRhoCustomView.java +13 -0
  207. data/platform/android/Rhodes/src/com/rhomobile/rhodes/nativeview/RhoNativeViewManager.java +32 -23
  208. data/platform/android/Rhodes/src/com/rhomobile/rhodes/nativeview/RhoVideoView.java +74 -0
  209. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality.java +6 -7
  210. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality01.java +37 -0
  211. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality03.java +14 -1
  212. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality05.java +51 -38
  213. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality07.java +9 -1
  214. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality08.java +48 -31
  215. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionalityManager.java +15 -16
  216. data/platform/android/Rhodes/src/com/rhomobile/rhodes/signature/Signature.java +52 -15
  217. data/platform/android/Rhodes/src/com/rhomobile/rhodes/uri/LocalFileHandler.java +20 -2
  218. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/ChromeClientOld.java +1 -0
  219. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/GoogleWebView.java +77 -34
  220. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/IRhoWebView.java +9 -0
  221. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebChromeClient.java +105 -0
  222. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebViewClient.java +1 -1
  223. data/platform/android/build/RhodesSRC_build.files +8 -7
  224. data/platform/android/build/android.rake +326 -216
  225. data/platform/android/build/androidcommon.rb +27 -13
  226. data/platform/bb/RubyVM/src/com/rho/file/SimpleFile.java +27 -1
  227. data/platform/bb/RubyVM/src/j2me/io/File.java +104 -38
  228. data/platform/bb/build/bb.rake +1 -0
  229. data/platform/bb/build/runRAPC.bat +0 -0
  230. data/platform/bb/rhodes/resources/background.png +0 -0
  231. data/platform/bb/rhodes/resources/esri.png +0 -0
  232. data/platform/bb/rhodes/resources/mappin.png +0 -0
  233. data/platform/bb/rhodes/src/com/rho/rubyext/System.java +5 -1
  234. data/platform/bb/rhodes/src/rhomobile/PushListeningThread.java +2 -2
  235. data/platform/bb/rhodes/src/rhomobile/mapview/ESRIMapField.java +0 -0
  236. data/platform/bb/rhodes/src/rhomobile/mapview/ESRIMapProvider.java +0 -0
  237. data/platform/bb/rhodes/src/rhomobile/mapview/GeoCoding.java +0 -0
  238. data/platform/bb/rhodes/src/rhomobile/mapview/GoogleGeoCoding.java +0 -0
  239. data/platform/bb/rhodes/src/rhomobile/mapview/MapTools.java +0 -0
  240. data/platform/iphone/Classes/AppManager/AppManager.m +7 -1
  241. data/platform/iphone/Classes/Camera/PickImageDelegate.h +9 -0
  242. data/platform/iphone/Classes/Camera/PickImageDelegate.m +75 -4
  243. data/platform/iphone/Classes/GeoLocation/LocationController.h +8 -2
  244. data/platform/iphone/Classes/GeoLocation/LocationController.m +74 -76
  245. data/platform/iphone/Classes/InitMemoryInfoCollector.h +33 -0
  246. data/platform/iphone/Classes/InitMemoryInfoCollector.mm +52 -0
  247. data/platform/iphone/Classes/NativeView/NVViewController.h +0 -0
  248. data/platform/iphone/Classes/NativeView/NVViewController.m +34 -2
  249. data/platform/iphone/Classes/Rhodes.m +22 -2
  250. data/platform/iphone/Classes/Signature/SignatureDelegate.m +19 -0
  251. data/platform/iphone/Classes/Signature/SignatureViewController.h +0 -0
  252. data/platform/iphone/Classes/Signature/SignatureViewController.m +0 -0
  253. data/platform/iphone/Classes/SimpleMainView.h +0 -0
  254. data/platform/iphone/Classes/SimpleMainView.m +3 -3
  255. data/platform/iphone/ESRI/BluePushpin.png +0 -0
  256. data/platform/iphone/ESRI/BluePushpin@2x.png +0 -0
  257. data/platform/iphone/ESRI/esri.png +0 -0
  258. data/platform/iphone/ESRI/esri@2x.png +0 -0
  259. data/platform/iphone/rbuild/iphone.rake +75 -7
  260. data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +13 -4
  261. data/platform/linux/target/compiler/rubylinux +0 -0
  262. data/platform/mac/target/compiler/RubyMac +0 -0
  263. data/platform/osx/Rhodes Launcher/rhorunner.app/rhorunner b/data/platform/osx/Rhodes → Launcher/rhorunner.app/rhorunner +0 -0
  264. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtCore.framework/Versions/4/QtCore +0 -0
  265. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtGui.framework/Resources/qt_menu.nib/keyedobjects.nib +0 -0
  266. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtGui.framework/Versions/4/QtGui +0 -0
  267. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtNetwork.framework/Versions/4/QtNetwork +0 -0
  268. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/QtWebKit.framework/Versions/4/QtWebKit +0 -0
  269. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Info.plist +1 -1
  270. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/MacOS/RhoSimulator +0 -0
  271. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/accessible/libqtaccessiblewidgets.dylib +0 -0
  272. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/bearer/libqcorewlanbearer.dylib +0 -0
  273. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/bearer/libqgenericbearer.dylib +0 -0
  274. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqcncodecs.dylib +0 -0
  275. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqjpcodecs.dylib +0 -0
  276. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqkrcodecs.dylib +0 -0
  277. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/codecs/libqtwcodecs.dylib +0 -0
  278. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/graphicssystems/libqtracegraphicssystem.dylib +0 -0
  279. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqgif.dylib +0 -0
  280. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqico.dylib +0 -0
  281. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqjpeg.dylib +0 -0
  282. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqmng.dylib +0 -0
  283. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqtga.dylib +0 -0
  284. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/imageformats/libqtiff.dylib +0 -0
  285. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/qmltooling/libqmldbg_inspector.dylib +0 -0
  286. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/qmltooling/libqmldbg_tcp.dylib +0 -0
  287. data/platform/osx/build/osx.rake +6 -8
  288. data/platform/shared/RhoConnectClient/RhoConnectClient.cpp +165 -33
  289. data/platform/shared/RhoConnectClient/RhoConnectClient.h +10 -1
  290. data/platform/shared/common/BundleManager.cpp +27 -16
  291. data/platform/shared/common/ExtManager.h +15 -2
  292. data/platform/shared/common/RhoConf.cpp +17 -2
  293. data/platform/shared/common/RhoConf.h +3 -1
  294. data/platform/shared/common/RhoDefs.h +6 -6
  295. data/platform/shared/common/RhoFatalError.h +1 -1
  296. data/platform/shared/common/RhoFile.cpp +9 -9
  297. data/platform/shared/common/RhoFilePath.h +7 -3
  298. data/platform/shared/common/RhoPort.h +3 -3
  299. data/platform/shared/common/RhoSystem.h +1 -1
  300. data/platform/shared/common/RhodesApp.cpp +426 -26
  301. data/platform/shared/common/RhodesApp.h +11 -3
  302. data/platform/shared/common/RhodesAppBase.cpp +4 -1
  303. data/platform/shared/common/StringConverter.h +3 -3
  304. data/platform/shared/common/app_build_capabilities.h +8 -0
  305. data/platform/shared/common/map/BaseMapEngine.cpp +302 -21
  306. data/platform/shared/common/map/BaseMapEngine.h +132 -6
  307. data/platform/shared/common/map/ESRIMapEngine.cpp +2 -1
  308. data/platform/shared/common/map/GeocodingMapEngine.cpp +22 -4
  309. data/platform/shared/common/map/GeocodingMapEngine.h +40 -0
  310. data/platform/shared/common/map/GoogleMapEngine.cpp +13 -1
  311. data/platform/shared/common/map/MapEngine.h +7 -0
  312. data/platform/shared/common/map/OSMMapEngine.cpp +12 -1
  313. data/platform/shared/json/JSONIterator.cpp +1 -1
  314. data/platform/shared/json/RJSONTokener.c +2 -0
  315. data/platform/shared/json/config.h +3 -3
  316. data/platform/shared/logging/RhoLog.cpp +12 -3
  317. data/platform/shared/logging/RhoLog.h +2 -1
  318. data/platform/shared/logging/RhoLogConf.cpp +147 -11
  319. data/platform/shared/logging/RhoLogConf.h +39 -1
  320. data/platform/shared/logging/RhoLogSink.cpp +1 -1
  321. data/platform/shared/net/HttpServer.cpp +8 -4
  322. data/platform/shared/net/INetRequest.cpp +7 -0
  323. data/platform/shared/net/INetRequest.h +2 -0
  324. data/platform/shared/net/RawSocket.cpp +1 -1
  325. data/platform/shared/qt/pbxproj2pro.pl +0 -0
  326. data/platform/shared/qt/pro_vcproj_diff.pl +0 -0
  327. data/platform/shared/qt/rhodes/QtMainWindow.cpp +1 -1
  328. data/platform/shared/qt/rhodes/impl/RhoClassFactoryImpl.h +2 -2
  329. data/platform/shared/qt/rhodes/impl/RhoThreadImpl.cpp +2 -2
  330. data/platform/shared/qt/rhodes/impl/SystemImpl.cpp +11 -1
  331. data/platform/shared/qt/rhodes/main.cpp +5 -5
  332. data/platform/shared/ruby/ext/alert/alert_wrap.c +8 -8
  333. data/platform/shared/ruby/ext/bluetooth/bluetooth.i +0 -0
  334. data/platform/shared/ruby/ext/bluetooth/bluetooth_wrap.c +16 -9
  335. data/platform/shared/ruby/ext/camera/camera.i +2 -2
  336. data/platform/shared/ruby/ext/camera/camera_wrap.c +18 -3
  337. data/platform/shared/ruby/ext/datetimepicker/datetimepicker_wrap.c +37 -8
  338. data/platform/shared/ruby/ext/geolocation/geolocation_wrap.c +8 -8
  339. data/platform/shared/ruby/ext/mapview/mapview_wrap.c +16 -9
  340. data/platform/shared/ruby/ext/nativebar/nativebar_wrap.c +16 -9
  341. data/platform/shared/ruby/ext/nativeviewmanager/nativeviewmanager.i +0 -0
  342. data/platform/shared/ruby/ext/nativeviewmanager/nativeviewmanager_wrap.c +16 -9
  343. data/platform/shared/ruby/ext/phonebook/phonebook_wrap.c +8 -1
  344. data/platform/shared/ruby/ext/rho/rhoruby.c +7 -1
  345. data/platform/shared/ruby/ext/rho/rhoruby.h +1 -0
  346. data/platform/shared/ruby/ext/rhoconf/rhoconf_wrap.c +16 -9
  347. data/platform/shared/ruby/ext/signature/signature.i +0 -0
  348. data/platform/shared/ruby/ext/signature/signature_wrap.c +9 -9
  349. data/platform/shared/ruby/ext/syncengine/syncengine_wrap.c +16 -9
  350. data/platform/shared/ruby/ext/system/system_wrap.c +16 -9
  351. data/platform/shared/ruby/ext/webview/webview_wrap.c +16 -9
  352. data/platform/shared/ruby/gc.c +1 -0
  353. data/platform/shared/ruby/regint.h +6 -4
  354. data/platform/shared/ruby/vm.c +1 -0
  355. data/platform/shared/ruby/wince/wince.h +1 -1
  356. data/platform/shared/rubyext/System.cpp +1 -1
  357. data/platform/shared/shttpd/src/rdispatcher.c +3 -3
  358. data/platform/shared/shttpd/src/std_includes.h +1 -1
  359. data/platform/shared/sqlite/sqlite3.c +1 -0
  360. data/platform/shared/statistic/test/TestProfiling.cpp +1 -1
  361. data/platform/shared/stlport/build/lib/configure +0 -0
  362. data/platform/shared/stlport/build/lib/configure.bat +0 -0
  363. data/platform/shared/sync/SyncEngine.cpp +9 -12
  364. data/platform/shared/sync/SyncNotify.cpp +36 -3
  365. data/platform/shared/sync/SyncNotify.h +11 -4
  366. data/platform/shared/sync/SyncSource.cpp +32 -16
  367. data/platform/shared/sync/SyncSource.h +2 -3
  368. data/platform/shared/sync/SyncThread.cpp +13 -4
  369. data/platform/shared/sync/SyncThread.h +4 -0
  370. data/platform/shared/tcmalloc/page_heap.h +1 -1
  371. data/platform/shared/tcmalloc/rhomem.h +1 -1
  372. data/platform/shared/tcmalloc/windows/port.cpp +12 -3
  373. data/platform/shared/test/Tests.cpp +4 -4
  374. data/platform/shared/test/test_helper.cpp +4 -4
  375. data/platform/symbian/sqlite3/src/sqlite3.h +1 -1
  376. data/platform/win32/RhoSimulator/Microsoft.VC90.CRT.manifest +6 -0
  377. data/platform/win32/RhoSimulator/Microsoft.VC90.OpenMP.manifest +6 -0
  378. data/platform/win32/RhoSimulator/QtCore4.dll +0 -0
  379. data/platform/win32/RhoSimulator/QtGui4.dll +0 -0
  380. data/platform/win32/RhoSimulator/QtNetwork4.dll +0 -0
  381. data/platform/win32/RhoSimulator/QtWebKit4.dll +0 -0
  382. data/platform/win32/RhoSimulator/RhoSimulator.exe +0 -0
  383. data/platform/win32/RhoSimulator/imageformats/qgif4.dll +0 -0
  384. data/platform/win32/RhoSimulator/imageformats/qico4.dll +0 -0
  385. data/platform/win32/RhoSimulator/imageformats/qjpeg4.dll +0 -0
  386. data/platform/win32/RhoSimulator/imageformats/qmng4.dll +0 -0
  387. data/platform/win32/RhoSimulator/imageformats/qsvg4.dll +0 -0
  388. data/platform/win32/RhoSimulator/imageformats/qtiff4.dll +0 -0
  389. data/platform/win32/RhoSimulator/libeay32.dll +0 -0
  390. data/platform/win32/RhoSimulator/msvcm90.dll +0 -0
  391. data/platform/win32/RhoSimulator/msvcp90.dll +0 -0
  392. data/platform/win32/RhoSimulator/msvcr90.dll +0 -0
  393. data/platform/win32/RhoSimulator/phonon4.dll +0 -0
  394. data/platform/win32/RhoSimulator/ssleay32.dll +0 -0
  395. data/platform/win32/RhoSimulator/vcomp90.dll +0 -0
  396. data/platform/win32/target/replaceicon/replaceicon.exe +0 -0
  397. data/platform/win32/target/updateresstring/updateresstring.exe +0 -0
  398. data/platform/wm/RhoLib/RhoLib.vcproj +394 -69
  399. data/platform/wm/build/build_inf.js +83 -23
  400. data/platform/wm/build/wm.rake +127 -81
  401. data/platform/wm/rhodes.sln +6 -6
  402. data/platform/wm/rhodes/DateTimePicker.h +2 -2
  403. data/platform/wm/rhodes/IBrowserEngine.h +3 -0
  404. data/platform/wm/rhodes/IEBrowserEngine.cpp +34 -2
  405. data/platform/wm/rhodes/IEBrowserEngine.h +4 -1
  406. data/platform/wm/rhodes/LicenseStub.cpp +73 -0
  407. data/platform/{android/Rhodes/src/com/rhomobile/rhodes/webview/ChromeClientNew.java → wm/rhodes/LogMemory.cpp} +32 -20
  408. data/platform/{android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettings.java → wm/rhodes/LogMemory.h} +11 -8
  409. data/platform/wm/rhodes/LogOptionsDlg.h +1 -1
  410. data/platform/wm/rhodes/LogView.cpp +10 -10
  411. data/platform/wm/rhodes/LogView.h +10 -10
  412. data/platform/wm/rhodes/MainWindow.cpp +431 -173
  413. data/platform/wm/rhodes/MainWindow.h +37 -19
  414. data/platform/wm/rhodes/MapView/MapViewManager.h +1 -1
  415. data/platform/wm/rhodes/OkCancelModalDialog.h +1 -1
  416. data/platform/wm/rhodes/Rhodes.cpp +210 -47
  417. data/platform/wm/rhodes/Rhodes.rc +38 -0
  418. data/platform/wm/rhodes/bluetooth/Bluetooth.cpp +2 -2
  419. data/platform/wm/rhodes/bluetooth/Bluetooth.h +3 -3
  420. data/platform/wm/rhodes/camera/Camera.cpp +2 -1
  421. data/platform/wm/rhodes/camera/Camera.h +1 -1
  422. data/platform/wm/rhodes/resource.h +1 -1
  423. data/platform/wm/rhodes/rho/common/ExtManager.cpp +93 -5
  424. data/platform/wm/rhodes/rho/net/NetRequestImpl.cpp +2 -2
  425. data/platform/wm/rhodes/rho/rubyext/NativeToolbar.cpp +2 -2
  426. data/platform/wm/rhodes/rho/rubyext/SystemImpl.cpp +13 -7
  427. data/platform/wm/rhodes/rhodes.vcproj +1409 -1008
  428. data/platform/wm/rhodes/simulator/MainWindowQt.h +1 -1
  429. data/platform/wm/rhodes/stdafx.h +2 -2
  430. data/platform/wm/rhoelements.sln +7 -9
  431. data/platform/wm/rubylib/rubylib.vcproj +62 -1
  432. data/platform/wm/sqlite3/sqlite3.vcproj +62 -1
  433. data/platform/wm/syncengine/syncengine.vcproj +62 -1
  434. data/platform/wm/tcmalloc/tcmalloc.vcproj +72 -53
  435. data/platform/wm/tools/detool/detool.cpp +1435 -1357
  436. data/platform/wp7/RhoRubyExtGen/GenerateInitializers.cmd +0 -0
  437. data/platform/wp7/RhoRubyLib/common/RhoLicense.cs +105 -0
  438. data/platform/wp7/RhoRubyLib/common/RhodesApp.cs +23 -5
  439. data/platform/wp7/RhoRubyLib/sync/SyncNotify.cs +5 -0
  440. data/platform/wp7/RhoRubyLib/views/RhoView.xaml.cs +22 -3
  441. data/platform/wp7/build/wp.rake +1 -0
  442. data/platform/wp7/rhodes/MainPage.xaml.cs +11 -0
  443. data/rakefile.rb +225 -59
  444. data/res/build-tools/7za.exe +0 -0
  445. data/res/build-tools/RhoAppRunner.exe +0 -0
  446. data/res/build-tools/RhoLogServer.exe +0 -0
  447. data/res/build-tools/RhoRuby.exe +0 -0
  448. data/res/build-tools/RubyMac +0 -0
  449. data/res/build-tools/detool.exe +0 -0
  450. data/res/build-tools/iphonesim/Source/iPhoneSimulator.m +1 -1
  451. data/res/build-tools/iphonesim/build/Release/iphonesim +0 -0
  452. data/res/build-tools/iphonesim/build/Release/iphonesim_43 +0 -0
  453. data/res/build-tools/license_rc.dll +0 -0
  454. data/res/build-tools/make.exe +0 -0
  455. data/res/build-tools/rubylinux +0 -0
  456. data/res/build-tools/swig_patch/Lib/typemaps/fragments.swg +235 -0
  457. data/res/build-tools/wmdc_connect.exe +0 -0
  458. data/res/build-tools/wp7explorer.exe +0 -0
  459. data/res/generators/rhogen.rb +2 -2
  460. data/res/generators/templates/application/app/Settings/controller.rb +1 -1
  461. data/res/generators/templates/application/app/layout.erb +1 -1
  462. data/res/generators/templates/application/app/loading.png +0 -0
  463. data/res/generators/templates/application/public/css/re_webkit.css +736 -0
  464. data/res/generators/templates/application/public/css/windows_mobile.css +0 -0
  465. data/res/generators/templates/application/public/images/listArrow.png +0 -0
  466. data/res/generators/templates/application/public/jqmobile/images/ajax-loader.png +0 -0
  467. data/res/generators/templates/application/public/jqmobile/images/icons-18-black.png +0 -0
  468. data/res/generators/templates/application/public/jqmobile/images/icons-18-white.png +0 -0
  469. data/res/generators/templates/application/public/jqmobile/images/icons-36-black.png +0 -0
  470. data/res/generators/templates/application/public/jqmobile/images/icons-36-white.png +0 -0
  471. data/res/generators/templates/application/public/js/syncengine.js +409 -52
  472. data/res/generators/templates/extension/extensions/montana/ext/build +0 -0
  473. data/res/generators/templates/extension/extensions/montana/ext/build.bat +0 -0
  474. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/android/Rakefile +10 -10
  475. data/res/generators/templates/spec/app/SpecRunner/controller.rb +2 -0
  476. data/res/libs/motorolalicence/android/MotorolaLicence.h +13 -0
  477. data/res/libs/motorolalicence/android/libMotorolaLicence.a +0 -0
  478. data/res/libs/motorolalicence/iphone/MotorolaLicence.h +13 -0
  479. data/res/libs/motorolalicence/iphone/libMotorolaLicence.a +0 -0
  480. data/rhodes.gemspec +1 -1
  481. data/spec/framework_spec/app/SpecRunner/controller.rb +2 -0
  482. data/spec/phone_spec/app/SpecRunner/controller.rb +2 -0
  483. data/version +1 -1
  484. metadata +487 -412
  485. data/Manifest.txt +0 -7960
  486. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivityStartupListeners.java +0 -12
  487. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettingsNew.java +0 -52
  488. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettingsOld.java +0 -62
  489. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/Frameworks/phonon.framework/Versions/4/phonon +0 -0
  490. data/platform/osx/bin/RhoSimulator/RhoSimulator.app/Contents/PlugIns/phonon_backend/libphonon_qt7.dylib +0 -0
  491. data/platform/win32/RhoSimulator/Microsoft.VC80.CRT.manifest +0 -8
  492. data/platform/win32/RhoSimulator/Microsoft.VC80.OpenMP.manifest +0 -7
  493. data/platform/win32/RhoSimulator/msvcm80.dll +0 -0
  494. data/platform/win32/RhoSimulator/msvcp80.dll +0 -0
  495. data/platform/win32/RhoSimulator/msvcr80.dll +0 -0
  496. data/platform/win32/RhoSimulator/vcomp.dll +0 -0
  497. data/rhomobile-debug-1.0.6.gem +0 -0
@@ -44,13 +44,12 @@
44
44
  #include "IBrowserEngine.h"
45
45
  #include "common/app_build_capabilities.h"
46
46
 
47
- #if defined(OS_WINDOWS)
47
+ #if defined(OS_WINDOWS_DESKTOP)
48
48
  #include "menubar.h"
49
49
  #endif
50
50
 
51
51
  #include "LogView.h"
52
52
 
53
- #ifdef APP_BUILD_CAPABILITY_WEBKIT_BROWSER
54
53
  #define PB_NAVIGATETAB WM_USER + 1
55
54
  #define PB_GEN_ACTIVEX WM_USER + 2
56
55
  #define PB_GEN_QUIT WM_USER + 3
@@ -64,6 +63,8 @@
64
63
  #define PB_SCREEN_ORIENTATION_CHANGED WM_USER + 11
65
64
  #define PB_NEWGPSDATA WM_USER + 12
66
65
 
66
+ #ifdef APP_BUILD_CAPABILITY_WEBKIT_BROWSER
67
+
67
68
  extern UINT WM_BROWSER_ONDOCUMENTCOMPLETE;
68
69
  extern UINT WM_BROWSER_ONNAVIGATECOMPLETE;
69
70
  extern UINT WM_BROWSER_ONTITLECHANGE;
@@ -72,6 +73,8 @@ extern UINT WM_BROWSER_ONNAVIGATIONTIMEOUT;
72
73
  extern UINT WM_BROWSER_ONNAVIGATIONERROR;
73
74
  extern UINT WM_BROWSER_ONSETSIPSTATE;
74
75
  extern UINT WM_BROWSER_ONALERTPOPUP;
76
+ extern UINT WM_BROWSER_ONAUTHENTICATIONREQUEST;
77
+ //extern UINT WM_BROWSER_ONGPSDATA;
75
78
 
76
79
  #else
77
80
  #if defined (_WIN32_WCE) && !defined( OS_PLATFORM_MOTCE )
@@ -100,6 +103,7 @@ static UINT WM_BLUETOOTH_DISCOVERED = ::RegisterWindowMessage(L"RHODES_WM_BLU
100
103
  static UINT WM_BLUETOOTH_CALLBACK = ::RegisterWindowMessage(L"RHODES_WM_BLUETOOTH_CALLBACK");
101
104
  static UINT WM_EXECUTE_COMMAND = ::RegisterWindowMessage(L"RHODES_WM_EXECUTE_COMMAND");
102
105
  static UINT WM_EXECUTE_RUNNABLE = ::RegisterWindowMessage(L"RHODES_WM_EXECUTE_RUNNABLE");
106
+ extern UINT WM_LICENSE_SCREEN;
103
107
 
104
108
  typedef struct _TCookieData {
105
109
  char* url;
@@ -109,7 +113,7 @@ typedef struct _TCookieData {
109
113
  class CMainWindow :
110
114
  #if defined(_WIN32_WCE)&& !defined( OS_PLATFORM_MOTCE )
111
115
  public CFrameWindowImpl<CMainWindow>,
112
- public CFullScreenFrame<CMainWindow>
116
+ public CFullScreenFrame<CMainWindow, false>
113
117
  #else
114
118
  public CWindowImpl<CMainWindow, CWindow, CWinTraits<WS_BORDER | WS_SYSMENU | WS_MINIMIZEBOX | WS_CLIPCHILDREN | WS_CLIPSIBLINGS> >
115
119
  #endif
@@ -129,14 +133,16 @@ public:
129
133
  CNativeToolbar& getToolbar(){ return m_toolbar; }
130
134
  void performOnUiThread(rho::common::IRhoRunnable* pTask);
131
135
 
132
- LRESULT InitMainWindow();
136
+ void calculateMainWindowRect(RECT& rcMainWindow);
137
+ void initBrowserWindow();
138
+ void resizeWindow( int xSize, int ySize);
133
139
 
134
140
  // Required to forward messages to the PIEWebBrowser control
135
141
  BOOL TranslateAccelerator(MSG* pMsg);
136
142
 
137
- #if defined( OS_PLATFORM_MOTCE )
138
- void SetFullScreen(bool bFull);
143
+ #if defined(OS_WINCE)
139
144
  bool m_bFullScreen;
145
+ void RhoSetFullScreen(bool bFull, bool bDestroy = false);
140
146
  #endif
141
147
 
142
148
  void openNativeView( NativeViewFactory* nativeViewFactory,
@@ -145,7 +151,7 @@ public:
145
151
  void closeNativeView();
146
152
  rho::IBrowserEngine* getWebKitEngine(){return m_pBrowserEng; }
147
153
 
148
- #if defined(OS_WINDOWS)
154
+ #if defined(OS_WINDOWS_DESKTOP)
149
155
  DECLARE_WND_CLASS(TEXT("Rhodes.MainWindow"))
150
156
  #else
151
157
  static ATL::CWndClassInfo& GetWndClassInfo()
@@ -184,11 +190,11 @@ public:
184
190
  COMMAND_ID_HANDLER(ID_SETCOOKIE, OnSetCookieCommand)
185
191
  COMMAND_RANGE_HANDLER(ID_CUSTOM_MENU_ITEM_FIRST, ID_CUSTOM_MENU_ITEM_LAST, OnCustomMenuItemCommand)
186
192
  COMMAND_RANGE_HANDLER(ID_CUSTOM_TOOLBAR_ITEM_FIRST, ID_CUSTOM_TOOLBAR_ITEM_LAST, OnCustomToolbarItemCommand)
187
- #if defined(OS_WINDOWS) || defined( OS_PLATFORM_MOTCE )
193
+ #if defined(OS_WINDOWS_DESKTOP) || defined( OS_PLATFORM_MOTCE )
188
194
  COMMAND_ID_HANDLER(IDM_POPUP_MENU, OnPopupMenuCommand)
189
195
  #endif
190
196
 
191
- #if defined(OS_WINDOWS)
197
+ #if defined(OS_WINDOWS_DESKTOP)
192
198
  MESSAGE_HANDLER(WM_WINDOWPOSCHANGED, OnPosChanged)
193
199
  #endif
194
200
  MESSAGE_HANDLER(WM_TAKEPICTURE, OnTakePicture)
@@ -204,6 +210,9 @@ public:
204
210
  MESSAGE_HANDLER(WM_BLUETOOTH_CALLBACK, OnBluetoothCallback);
205
211
  MESSAGE_HANDLER(WM_EXECUTE_COMMAND, OnExecuteCommand);
206
212
  MESSAGE_HANDLER(WM_EXECUTE_RUNNABLE, OnExecuteRunnable);
213
+ MESSAGE_HANDLER(WM_LICENSE_SCREEN, OnLicenseScreen);
214
+ MESSAGE_HANDLER(WM_SETFOCUS, OnSetFocus);
215
+ MESSAGE_HANDLER(WM_HOTKEY, OnHotKey);
207
216
  #ifdef APP_BUILD_CAPABILITY_WEBKIT_BROWSER
208
217
  MESSAGE_HANDLER(WM_BROWSER_ONDOCUMENTCOMPLETE, OnBrowserDocumentComplete);
209
218
  MESSAGE_HANDLER(WM_BROWSER_ONNAVIGATECOMPLETE, OnNavigateComplete);
@@ -213,9 +222,11 @@ public:
213
222
  MESSAGE_HANDLER(WM_BROWSER_ONNAVIGATIONERROR, OnNavigateError);
214
223
  MESSAGE_HANDLER(WM_BROWSER_ONSETSIPSTATE, OnSetSIPState);
215
224
  MESSAGE_HANDLER(WM_BROWSER_ONALERTPOPUP, OnAlertPopup);
225
+ MESSAGE_HANDLER(WM_BROWSER_ONAUTHENTICATIONREQUEST, OnAuthenticationRequest);
226
+ // MESSAGE_HANDLER(WM_BROWSER_ONGPSDATA, OnGeolocationData);
227
+ #endif
216
228
 
217
229
  MESSAGE_RANGE_HANDLER(PB_NAVIGATETAB, PB_NEWGPSDATA, OnWebKitMessages)
218
- #endif
219
230
 
220
231
  END_MSG_MAP()
221
232
 
@@ -247,11 +258,11 @@ private:
247
258
  LRESULT OnCustomMenuItemCommand (WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
248
259
  LRESULT OnCustomToolbarItemCommand (WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
249
260
 
250
- #if defined(OS_WINDOWS) || defined( OS_PLATFORM_MOTCE )
261
+ #if defined(OS_WINDOWS_DESKTOP) || defined( OS_PLATFORM_MOTCE )
251
262
  LRESULT OnPopupMenuCommand(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
252
263
  #endif
253
264
 
254
- #if defined(OS_WINDOWS)
265
+ #if defined(OS_WINDOWS_DESKTOP)
255
266
  LRESULT OnPosChanged(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
256
267
  #endif
257
268
 
@@ -268,16 +279,23 @@ private:
268
279
  LRESULT OnBluetoothCallback (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
269
280
  LRESULT OnExecuteCommand (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
270
281
  LRESULT OnExecuteRunnable (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
282
+ LRESULT OnLicenseScreen (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
283
+ LRESULT OnSetFocus (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
284
+ LRESULT OnHotKey (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
285
+
286
+ LRESULT OnWebKitMessages (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
287
+
271
288
  #ifdef APP_BUILD_CAPABILITY_WEBKIT_BROWSER
272
289
  LRESULT OnBrowserDocumentComplete (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
273
290
  LRESULT OnNavigateComplete (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
274
291
  LRESULT OnTitleChange (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
275
- LRESULT OnWebKitMessages (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
276
- LRESULT OnBeforeNavigate (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
277
- LRESULT OnNavigateTimeout (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
278
- LRESULT OnNavigateError (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
279
- LRESULT OnSetSIPState (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
280
- LRESULT OnAlertPopup (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
292
+ LRESULT OnBeforeNavigate (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
293
+ LRESULT OnNavigateTimeout (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
294
+ LRESULT OnNavigateError (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
295
+ LRESULT OnSetSIPState (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
296
+ LRESULT OnAlertPopup (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
297
+ LRESULT OnAuthenticationRequest (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
298
+ // LRESULT OnGeolocationData (UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
281
299
  #endif
282
300
 
283
301
  public:
@@ -336,7 +354,7 @@ private:
336
354
  #if defined(_WIN32_WCE)
337
355
  // main menu bar for application
338
356
  CWindow m_menuBar;
339
- #elif defined (OS_WINDOWS)
357
+ #elif defined (OS_WINDOWS_DESKTOP)
340
358
  CMenuBar m_menuBar;
341
359
  // int m_menuBarHeight;
342
360
  CLogView m_logView;
@@ -124,7 +124,7 @@ public:
124
124
  */
125
125
 
126
126
  class CRhoMapViewDlg : public //CDialog
127
- #if defined(OS_WINDOWS)
127
+ #if defined(OS_WINDOWS_DESKTOP)
128
128
  CDialogImpl<CRhoMapViewDlg>
129
129
  #else
130
130
  CDialogImpl <CRhoMapViewDlg>
@@ -26,7 +26,7 @@
26
26
 
27
27
  #pragma once
28
28
 
29
- #if defined(OS_WINDOWS) || defined(OS_PLATFORM_MOTCE)
29
+ #if defined(OS_WINDOWS_DESKTOP) || defined(OS_PLATFORM_MOTCE)
30
30
 
31
31
  template <class T> class COkCancelModalDialog : public CDialogImpl<T>
32
32
  {
@@ -27,6 +27,9 @@
27
27
  #include "stdafx.h"
28
28
  #include "MainWindow.h"
29
29
  #include "IEBrowserEngine.h"
30
+ //#if !defined(RHODES_EMULATOR) && !defined(OS_WINDOWS_DESKTOP)
31
+ #include "LogMemory.h"
32
+ //#endif
30
33
 
31
34
  #include "common/RhodesApp.h"
32
35
  #include "common/StringConverter.h"
@@ -37,8 +40,7 @@
37
40
  #include "sync/ClientRegister.h"
38
41
  #include "common/RhoFilePath.h"
39
42
  #include "common/app_build_capabilities.h"
40
-
41
- #include <algorithm>
43
+ #include "common/app_build_configs.h"
42
44
 
43
45
  using namespace rho;
44
46
  using namespace rho::common;
@@ -50,28 +52,58 @@ typedef unsigned long VALUE;
50
52
  #endif //!RUBY_RUBY_H
51
53
 
52
54
  char* parseToken( const char* start, int len );
53
-
54
55
  extern "C" void rho_ringtone_manager_stop();
55
56
  extern "C" void rho_sysimpl_sethas_network(int nValue);
56
57
  extern "C" void rho_sysimpl_sethas_cellnetwork(int nValue);
57
58
  extern "C" HINSTANCE rho_wmimpl_get_appinstance();
58
59
  extern "C" int rho_sys_check_rollback_bundle(const char* szRhoPath);
60
+ extern "C" void registerRhoExtension();
61
+ extern "C" void rho_webview_navigate(const char* url, int index);
59
62
 
60
63
  #ifdef APP_BUILD_CAPABILITY_WEBKIT_BROWSER
61
64
  class CEng;
62
- class CConfig;
63
- extern "C" CEng* rho_wmimpl_get_webkitbrowser(HWND hParentWnd, HINSTANCE hInstance);
64
- extern "C" CConfig* rho_wmimpl_get_webkitconfig();
65
65
  extern rho::IBrowserEngine* rho_wmimpl_get_webkitBrowserEngine(HWND hwndParent, HINSTANCE rhoAppInstance);
66
- extern "C" WCHAR* rho_wmimpl_get_configfilepath();
67
- extern "C" void rho_wmimpl_set_configfilepath(const char* path);
68
- extern "C" TCHAR* rho_wmimpl_get_startpage();
69
- extern "C" void rho_wmimpl_set_startpage(const char* path);
70
- extern "C" void rho_wmimpl_set_logpath(const TCHAR* path);
71
- extern "C" const char* rho_wmimpl_get_logpath();
72
- extern "C" const char* rho_wmimpl_get_logurl();
66
+ extern "C" CEng* rho_wmimpl_get_webkitbrowser(HWND hParentWnd, HINSTANCE hInstance);
67
+ #endif // APP_BUILD_CAPABILITY_WEBKIT_BROWSER
68
+ #ifdef APP_BUILD_CAPABILITY_SHARED_RUNTIME
69
+ extern "C" {
70
+ void rho_wmimpl_set_configfilepath(const char* path);
71
+ TCHAR* rho_wmimpl_get_startpage();
72
+ void rho_wmimpl_set_startpage(const char* path);
73
+ const char* rho_wmimpl_get_logpath();
74
+ const char* rho_wmimpl_get_logurl();
75
+ bool rho_wmimpl_get_fullscreen();
76
+ void rho_wmimpl_set_is_version2(const char* path);
77
+ bool rho_wmimpl_get_is_version2();
78
+
79
+ #if !defined( APP_BUILD_CAPABILITY_WEBKIT_BROWSER ) && !defined(APP_BUILD_CAPABILITY_MOTOROLA)
80
+ bool rho_wmimpl_get_is_version2(){ return 1;}
81
+ void rho_wmimpl_set_is_version2(const char* path){}
82
+ void rho_wmimpl_set_configfilepath(const char* path){}
83
+ void rho_wmimpl_set_configfilepath_wchar(const WCHAR* path){}
84
+ void rho_wmimpl_set_startpage(const char* path){}
85
+ TCHAR* rho_wmimpl_get_startpage(){ return L""; }
86
+ const unsigned int* rho_wmimpl_get_logmemperiod(){ return 0; }
87
+ const unsigned int* rho_wmimpl_get_logmaxsize(){ return 0; }
88
+ const char* rho_wmimpl_get_logurl(){ return ""; }
89
+ bool rho_wmimpl_get_fullscreen(){ return 0; }
90
+ const char* rho_wmimpl_get_logpath(){ return ""; }
91
+ int rho_wmimpl_is_loglevel_enabled(int nLogLevel){ return true; }
92
+ const int* rho_wmimpl_get_loglevel(){ return NULL; }
73
93
  #endif
74
94
 
95
+ const unsigned int* rho_wmimpl_get_logmaxsize();
96
+ const int* rho_wmimpl_get_loglevel();
97
+ const unsigned int* rho_wmimpl_get_logmemperiod();
98
+ };
99
+ #endif // APP_BUILD_CAPABILITY_SHARED_RUNTIME
100
+
101
+ #if !defined( APP_BUILD_CAPABILITY_MOTOROLA ) && !defined( APP_BUILD_CAPABILITY_WEBKIT_BROWSER)
102
+ extern "C" bool rho_wmimpl_get_resize_on_sip()
103
+ {
104
+ return true;
105
+ }
106
+ #endif
75
107
 
76
108
  #if defined(_WIN32_WCE) && !defined(OS_PLATFORM_MOTCE)
77
109
  #include <regext.h>
@@ -129,9 +161,12 @@ class CRhodesModule : public CAtlExeModuleT< CRhodesModule >
129
161
  CMainWindow m_appWindow;
130
162
  rho::String m_strRootPath, m_strRhodesPath, m_logPort, m_strRuntimePath;//, m_strDebugHost, m_strDebugPort;*/
131
163
  int m_nRestarting;
164
+ #ifndef RHODES_EMULATOR
165
+ HANDLE m_hMutex;
166
+ #endif
132
167
  CExtManager m_oExtManager;
133
168
 
134
- #ifdef OS_WINDOWS
169
+ #ifdef OS_WINDOWS_DESKTOP
135
170
  String m_strHttpProxy;
136
171
  #endif
137
172
 
@@ -154,6 +189,7 @@ public :
154
189
  const rho::String& getRhoRootPath();
155
190
  const rho::String& getRhoRuntimePath();
156
191
  void parseHttpProxyURI(const rho::String &http_proxy);
192
+
157
193
  };
158
194
 
159
195
  static String g_strCmdLine;
@@ -202,7 +238,7 @@ bool CRhodesModule::ParseCommandLine(LPCTSTR lpCmdLine, HRESULT* pnRetCode ) thr
202
238
  }
203
239
  }
204
240
 
205
- #if defined(APP_BUILD_CAPABILITY_MOTOROLA)
241
+ #if defined(APP_BUILD_CAPABILITY_SHARED_RUNTIME)
206
242
  else if (wcsnicmp(lpszToken, _T("s"),1)==0)
207
243
  {
208
244
  String token = convertToStringA(lpszToken);
@@ -225,9 +261,9 @@ bool CRhodesModule::ParseCommandLine(LPCTSTR lpCmdLine, HRESULT* pnRetCode ) thr
225
261
  free(path);
226
262
  }
227
263
  }
228
- #endif // APP_BUILD_CAPABILITY_MOTOROLA
264
+ #endif // APP_BUILD_CAPABILITY_SHARED_RUNTIME
229
265
 
230
- #if defined(OS_WINDOWS)
266
+ #if defined(OS_WINDOWS_DESKTOP)
231
267
  else if (wcsncmp(lpszToken, _T("http_proxy_url"),14)==0)
232
268
  {
233
269
  String token = convertToStringA(lpszToken);
@@ -258,6 +294,7 @@ bool CRhodesModule::ParseCommandLine(LPCTSTR lpCmdLine, HRESULT* pnRetCode ) thr
258
294
  }
259
295
  m_strRootPath = path;
260
296
  free(path);
297
+ String_replace(m_strRootPath, '\\', '/');
261
298
  }
262
299
  } else if (wcsncmp(lpszToken, _T("rhodespath"),10)==0)
263
300
  {
@@ -267,6 +304,7 @@ bool CRhodesModule::ParseCommandLine(LPCTSTR lpCmdLine, HRESULT* pnRetCode ) thr
267
304
  if (path) {
268
305
  m_strRhodesPath = path;
269
306
  free(path);
307
+ String_replace(m_strRhodesPath, '\\', '/');
270
308
  }
271
309
  } /* else if (wcsncmp(lpszToken, _T("appname"),7)==0)
272
310
  {
@@ -306,10 +344,13 @@ bool CRhodesModule::ParseCommandLine(LPCTSTR lpCmdLine, HRESULT* pnRetCode ) thr
306
344
  m_strRootPath = path;
307
345
  if (m_strRootPath.substr(0,7).compare("file://")==0)
308
346
  m_strRootPath.erase(0,7);
309
- ::std::replace(m_strRootPath.begin(), m_strRootPath.end(), '\\', '/');
347
+ String_replace(m_strRootPath, '\\', '/');
310
348
  if (m_strRootPath.at(m_strRootPath.length()-1)!='/')
311
349
  m_strRootPath.append("/");
312
350
  m_strRootPath.append("rho/");
351
+ #ifdef APP_BUILD_CAPABILITY_SHARED_RUNTIME
352
+ rho_wmimpl_set_is_version2(m_strRootPath.c_str());
353
+ #endif
313
354
  }
314
355
  free(path);
315
356
  }
@@ -366,22 +407,44 @@ HRESULT CRhodesModule::PreMessageLoop(int nShowCmd) throw()
366
407
  SetForegroundWindow( HWND( DWORD(hWnd) | 0x01 ) );
367
408
  return S_FALSE;
368
409
  }
410
+
411
+ // creating mutex
412
+ /* m_hMutex = CreateMutex(NULL, TRUE, CMainWindow::GetWndClassInfo().m_wc.lpszClassName);
413
+ if (m_hMutex==NULL) {
414
+ // Failed to create mutex
415
+ return S_FALSE;
416
+ }
417
+ if ((GetLastError() == ERROR_ALREADY_EXISTS) && (WaitForSingleObject(m_hMutex, 60000L) != WAIT_OBJECT_0)) {
418
+ rho_sys_impl_exit_with_errormessage( "Initialization", "Another instance of the application is running. Please, exit it or use Task Manager to terminate it.");
419
+ return S_FALSE;
420
+ }*/
369
421
  #endif
370
422
 
371
423
  if ( !rho_sys_check_rollback_bundle(rho_native_rhopath()) )
372
424
  {
373
- rho_sys_impl_exit_with_errormessage( "Bundle update.", "Application is currupted. Reinstall it , please.");
425
+ rho_sys_impl_exit_with_errormessage( "Bundle update", "Application is corrupted. Reinstall it, please.");
374
426
  return S_FALSE;
375
427
  }
376
428
 
377
- #if defined(APP_BUILD_CAPABILITY_MOTOROLA)
378
- CConfig* conf = rho_wmimpl_get_webkitconfig();
429
+ #if defined(APP_BUILD_CAPABILITY_SHARED_RUNTIME)
379
430
  rho_logconf_Init((rho_wmimpl_get_logpath()[0]==0 ? m_strRootPath.c_str() : rho_wmimpl_get_logpath()), m_strRootPath.c_str(), m_logPort.c_str());
380
431
  if (rho_wmimpl_get_logurl()[0]!=0)
381
- RHOCONF().setString("rhologurl", rho_wmimpl_get_logurl(), false);
432
+ LOGCONF().setLogURL(rho_wmimpl_get_logurl());
433
+ if (rho_wmimpl_get_logmaxsize())
434
+ LOGCONF().setMaxLogFileSize(*rho_wmimpl_get_logmaxsize());
435
+ if (rho_wmimpl_get_loglevel())
436
+ LOGCONF().setMinSeverity(*rho_wmimpl_get_loglevel());
437
+ if (rho_wmimpl_get_fullscreen())
438
+ RHOCONF().setBool("full_screen", true, false);
439
+ if (rho_wmimpl_get_logmemperiod())
440
+ LOGCONF().setCollectMemoryInfoInterval(*rho_wmimpl_get_logmemperiod());
382
441
  #else
383
442
  rho_logconf_Init(m_strRootPath.c_str(), m_strRootPath.c_str(), m_logPort.c_str());
384
- #endif // APP_BUILD_CAPABILITY_MOTOROLA
443
+ #endif // APP_BUILD_CAPABILITY_SHARED_RUNTIME
444
+
445
+ //#if !defined(RHODES_EMULATOR) && !defined(OS_WINDOWS_DESKTOP)
446
+ LOGCONF().setMemoryInfoCollector(CLogMemory::getInstance());
447
+ //#endif // RHODES_EMULATOR
385
448
 
386
449
  #ifdef RHODES_EMULATOR
387
450
  RHOSIMCONF().setAppConfFilePath(CFilePath::join( m_strRootPath, RHO_EMULATOR_DIR"/rhosimconfig.txt").c_str());
@@ -403,7 +466,7 @@ HRESULT CRhodesModule::PreMessageLoop(int nShowCmd) throw()
403
466
  }
404
467
 
405
468
  LOG(INFO) + "Rhodes started";
406
- #ifdef OS_WINDOWS
469
+ #ifdef OS_WINDOWS_DESKTOP
407
470
  if (m_strHttpProxy.length() > 0) {
408
471
  parseHttpProxyURI(m_strHttpProxy);
409
472
  } else {
@@ -461,6 +524,13 @@ HRESULT CRhodesModule::PreMessageLoop(int nShowCmd) throw()
461
524
  rho::common::CRhodesApp::Create(m_strRootPath, m_strRootPath, m_strRuntimePath);
462
525
  RHODESAPP().setExtManager( &m_oExtManager );
463
526
 
527
+ #if defined(APP_BUILD_CAPABILITY_SHARED_RUNTIME)
528
+ if ((!rho_wmimpl_get_is_version2()) && (rho_wmimpl_get_startpage()[0] != 0)) {
529
+ String spath = convertToStringA(rho_wmimpl_get_startpage());
530
+ RHOCONF().setString("start_path", spath, false);
531
+ }
532
+ #endif // APP_BUILD_CAPABILITY_SHARED_RUNTIME
533
+
464
534
  DWORD dwStyle = WS_VISIBLE;
465
535
 
466
536
  #if !defined(_WIN32_WCE)
@@ -469,11 +539,22 @@ HRESULT CRhodesModule::PreMessageLoop(int nShowCmd) throw()
469
539
  // Create the main application window
470
540
  #ifdef RHODES_EMULATOR
471
541
  m_appWindow.Initialize(convertToStringW(RHOSIMCONF().getString("app_name")).c_str());
542
+ if (NULL == m_appWindow.m_hWnd)
543
+ {
544
+ return S_FALSE;
545
+ }
546
+ m_appWindow.ShowWindow(nShowCmd);
547
+
472
548
  #else
473
549
  String strTitle = RHODESAPP().getAppTitle();
474
550
  m_appWindow.Create(NULL, CWindow::rcDefault, convertToStringW(strTitle).c_str(), dwStyle);
475
551
 
476
- #ifdef APP_BUILD_CAPABILITY_WEBKIT_BROWSER
552
+ if (NULL == m_appWindow.m_hWnd)
553
+ {
554
+ return S_FALSE;
555
+ }
556
+
557
+ /*#ifdef APP_BUILD_CAPABILITY_WEBKIT_BROWSER
477
558
  {
478
559
  CBarcodeInit oBarcodeInit;
479
560
 
@@ -483,33 +564,50 @@ HRESULT CRhodesModule::PreMessageLoop(int nShowCmd) throw()
483
564
  }
484
565
  }
485
566
  #endif
567
+ */
568
+ m_appWindow.InvalidateRect(NULL, TRUE);
569
+ m_appWindow.UpdateWindow();
486
570
 
487
- #if defined(APP_BUILD_CAPABILITY_MOTOROLA)
488
- if (rho_wmimpl_get_startpage()[0] != 0) {
489
- String spath = convertToStringA(rho_wmimpl_get_startpage());
490
- RHOCONF().setString("start_path", spath, false);
491
- }
492
- #endif // APP_BUILD_CAPABILITY_MOTOROLA
493
-
494
-
495
- m_appWindow.InitMainWindow();
571
+ m_appWindow.initBrowserWindow();
496
572
  #endif
497
- if (NULL == m_appWindow.m_hWnd)
498
- {
499
- return S_FALSE;
500
- }
501
-
502
573
 
503
- RHODESAPP().startApp();
574
+ bool bRE1App = false;
575
+ #if defined(APP_BUILD_CAPABILITY_SHARED_RUNTIME)
576
+ if (!rho_wmimpl_get_is_version2())
577
+ bRE1App = true;
578
+ #endif
504
579
 
505
- // Navigate to the "loading..." page
506
- m_appWindow.Navigate2(_T("about:blank")
580
+ if (bRE1App)
581
+ {
582
+ #if defined(APP_BUILD_CAPABILITY_MOTOROLA)
583
+ registerRhoExtension();
584
+ #endif
585
+ m_appWindow.Navigate2(_T("about:blank")
507
586
  #ifdef RHODES_EMULATOR
508
- , -1
587
+ , -1
509
588
  #endif
510
- );
589
+ );
590
+
591
+ rho_webview_navigate( RHOCONF().getString("start_path").c_str(), 0 );
592
+ /* m_appWindow.Navigate2( convertToStringW( RHOCONF().getString("start_path") ).c_str()
593
+ #ifdef RHODES_EMULATOR
594
+ , -1
595
+ #endif
596
+ );*/
597
+ }
598
+ else
599
+ {
600
+ RHODESAPP().startApp();
601
+
602
+ // Navigate to the "loading..." page
603
+ m_appWindow.Navigate2(_T("about:blank")
604
+ #ifdef RHODES_EMULATOR
605
+ , -1
606
+ #endif
607
+ );
608
+ }
511
609
  // Show the main application window
512
- m_appWindow.ShowWindow(nShowCmd);
610
+ //m_appWindow.ShowWindow(nShowCmd);
513
611
 
514
612
  #if defined(_WIN32_WCE)&& !defined( OS_PLATFORM_MOTCE )
515
613
 
@@ -548,7 +646,7 @@ HRESULT CRhodesModule::PreMessageLoop(int nShowCmd) throw()
548
646
  NULL,
549
647
  &g_hNotifyCell);
550
648
 
551
- #else
649
+ #elif !defined( OS_PLATFORM_MOTCE )
552
650
  rho_clientregister_create("win32_client");
553
651
  #endif
554
652
 
@@ -586,6 +684,10 @@ void CRhodesModule::RunMessageLoop( ) throw( )
586
684
  rho::common::CRhodesApp::Destroy();
587
685
 
588
686
  net::CNetRequestImpl::deinitConnection();
687
+
688
+ #ifndef RHODES_EMULATOR
689
+ // ReleaseMutex(m_hMutex);
690
+ #endif
589
691
  }
590
692
 
591
693
  const rho::String& CRhodesModule::getRhoRootPath()
@@ -670,6 +772,67 @@ void rho_platform_restart_application()
670
772
  rho_wmsys_run_app(module, (g_strCmdLine + " -restarting").c_str());
671
773
  }
672
774
 
775
+ typedef void (WINAPI *PCL)(HWND);
776
+ typedef bool (WINAPI *PCSD)();
777
+
778
+ #ifdef APP_BUILD_CAPABILITY_MOTOROLA
779
+ extern "C" void rho_wm_impl_CheckLicenseWithBarcode(HWND hParent);
780
+ #endif
781
+
782
+ extern "C" void rho_wm_impl_CheckLicense()
783
+ {
784
+ #ifdef OS_WINDOWS_DESKTOP
785
+ return;
786
+ #else
787
+
788
+ #ifdef APP_BUILD_CAPABILITY_MOTOROLA
789
+ rho_wm_impl_CheckLicenseWithBarcode(getMainWnd());
790
+ #else
791
+ HINSTANCE hLicenseInstance = LoadLibrary(L"license_rc.dll");
792
+ if(hLicenseInstance)
793
+ {
794
+ PCL pCheckLicense = (PCL) GetProcAddress(hLicenseInstance, L"CheckLicense");
795
+ if(pCheckLicense)
796
+ pCheckLicense(getMainWnd());
797
+ }
798
+ #endif
799
+
800
+ #endif
801
+ }
802
+
803
+ extern "C" int rho_wm_impl_CheckSymbolDevice()
804
+ {
805
+ #ifdef OS_WINDOWS_DESKTOP
806
+ //return false;
807
+ return true;
808
+ #else
809
+ int res = -1;
810
+ HINSTANCE hLicenseInstance = LoadLibrary(L"license_rc.dll");
811
+ if(!hLicenseInstance)
812
+ {
813
+ MessageBox(NULL, L"license_rc.dll is absent. Application will be closed"
814
+ , L"Rhodes", MB_SETFOREGROUND | MB_TOPMOST | MB_ICONSTOP | MB_OK);
815
+ return 0;
816
+ }
817
+ /*if(hLicenseInstance)
818
+ {
819
+ PCSD pCheckSymbolDevice = (PCSD) GetProcAddress(hLicenseInstance, L"CheckSymbolDevice");
820
+ if(pCheckSymbolDevice)
821
+ res = pCheckSymbolDevice();
822
+ }
823
+
824
+ if(res == -1)
825
+ {
826
+ MessageBox(NULL, L"license_rc.dll is absent. Application will be closed"
827
+ , L"Rhodes", MB_SETFOREGROUND | MB_TOPMOST | MB_ICONSTOP | MB_OK);
828
+ return 0;
829
+ }*/
830
+
831
+ return 1;
832
+ #endif
833
+
834
+ }
835
+
673
836
  static inline char *
674
837
  translate_char(char *p, int from, int to)
675
838
  {
@@ -824,7 +987,7 @@ char* parseToken( const char* start, int len ) {
824
987
  return value;
825
988
  }
826
989
 
827
- #if defined(OS_WINDOWS)
990
+ #if defined(OS_WINDOWS_DESKTOP)
828
991
  /*
829
992
  // char -> wchar_t
830
993
  wchar_t* wce_mbtowc(const char* a)