rhodes 2.1.0 → 2.2.0.beta.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (241) hide show
  1. data/CHANGELOG +7 -0
  2. data/README.textile +4 -5
  3. data/Rakefile +8 -1
  4. data/lib/build/jake.rb +22 -16
  5. data/lib/extensions/rhoxml/rexml/cdata.rb +67 -0
  6. data/lib/extensions/rhoxml/rexml/document.rb +2 -116
  7. data/lib/extensions/rhoxml/rexml/element.rb +1 -1
  8. data/lib/extensions/rhoxml/rexml/text.rb +117 -0
  9. data/lib/framework/rho/render.rb +19 -11
  10. data/lib/framework/rho/rho.rb +17 -10
  11. data/lib/framework/rho/rhobluetooth.rb +103 -0
  12. data/lib/framework/rho/rhocontroller.rb +2 -0
  13. data/lib/framework/rho/rhoevent.rb +43 -0
  14. data/lib/framework/rho/rhoevent_bb.rb +80 -0
  15. data/lib/framework/rho/rhoevent_c.rb +47 -0
  16. data/lib/framework/rhodes.rb +2 -2
  17. data/lib/framework/rhom/rhom_db_adapter.rb +2 -1
  18. data/lib/framework/rhom/rhom_model.rb +9 -3
  19. data/lib/framework/rhom/rhom_object_factory.rb +46 -22
  20. data/lib/framework/rhom/rhom_source.rb +12 -10
  21. data/lib/framework/version.rb +2 -2
  22. data/lib/rhodes.rb +2 -2
  23. data/platform/android/Rhodes/AndroidManifest.xml +23 -2
  24. data/platform/android/Rhodes/gen/com/rhomobile/rhodes/R.java +54 -38
  25. data/platform/android/Rhodes/jni/include/rhodes.h +3 -0
  26. data/platform/android/Rhodes/jni/include/rhodes/JNIRhodes.h +2 -2
  27. data/platform/android/Rhodes/jni/include/rhodes/details/rhojava.inc +4 -0
  28. data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_RhodesService.h +16 -0
  29. data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_bluetooth_RhoBluetoothManager.h +21 -0
  30. data/platform/android/Rhodes/jni/src/bluetooth.cpp +169 -0
  31. data/platform/android/Rhodes/jni/src/callbacks.cpp +10 -0
  32. data/platform/android/Rhodes/jni/src/event.cpp +429 -0
  33. data/platform/android/Rhodes/jni/src/fileapi.cpp +51 -1
  34. data/platform/android/Rhodes/jni/src/rhodes.cpp +16 -0
  35. data/platform/android/Rhodes/jni/src/sslimpl.cpp +3 -0
  36. data/platform/android/Rhodes/res/layout/bt_device_list.xml +42 -0
  37. data/platform/android/Rhodes/res/layout/bt_device_name.xml +7 -0
  38. data/platform/android/Rhodes/res/values/strings.xml +8 -0
  39. data/platform/android/Rhodes/src/com/rhomobile/rhodes/AndroidR.java +14 -0
  40. data/platform/android/Rhodes/src/com/rhomobile/rhodes/Capabilities.java +2 -0
  41. data/platform/android/Rhodes/src/com/rhomobile/rhodes/Push.java +7 -0
  42. data/platform/android/Rhodes/src/com/rhomobile/rhodes/PushReceiver.java +58 -0
  43. data/platform/android/Rhodes/src/com/rhomobile/rhodes/PushService.java +53 -0
  44. data/platform/android/Rhodes/src/com/rhomobile/rhodes/Rhodes.java +8 -0
  45. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java +144 -3
  46. data/platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/IRhoBluetoothManager.java +66 -0
  47. data/platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothDeviceListActivity.java +201 -0
  48. data/platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothManager.java +139 -0
  49. data/platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothManagerNew.java +401 -0
  50. data/platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothManagerOld.java +136 -0
  51. data/platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothSession.java +457 -0
  52. data/platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/UUIDHelper.java +71 -0
  53. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCapture.java +12 -7
  54. data/platform/android/Rhodes/src/com/rhomobile/rhodes/event/Event.java +19 -0
  55. data/platform/android/Rhodes/src/com/rhomobile/rhodes/event/EventStore.java +261 -0
  56. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SimpleMainView.java +4 -2
  57. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/TabbedMainView.java +2 -2
  58. data/platform/android/Rhodes/src/com/rhomobile/rhodes/uri/MailUriHandler.java +10 -2
  59. data/platform/android/build/RhodesSRC_build.files +33 -22
  60. data/platform/android/build/android.rake +198 -27
  61. data/platform/android/build/librhodes_build.files +3 -1
  62. data/platform/android/build/libruby_build.files +4 -1
  63. data/platform/bb/Hsqldb/src/com/rho/db/HsqlDBResult.java +2 -2
  64. data/platform/bb/Hsqldb/src/com/rho/db/HsqlDBRowResult.java +1 -1
  65. data/platform/bb/Hsqldb/src/org/hsqldb/Expression.java +7 -4
  66. data/platform/bb/Hsqldb/src/org/hsqldb/Like.java +3 -3
  67. data/platform/bb/Hsqldb/src/org/hsqldb/Table.java +3 -1
  68. data/platform/bb/Hsqldb/src/org/hsqldb/Tokenizer.java +1 -1
  69. data/platform/bb/RubyVM/RubyVM.jdp +1 -0
  70. data/platform/bb/RubyVM/src/com/rho/RhoConf.java +108 -1
  71. data/platform/bb/RubyVM/src/com/rho/RhoLogConf.java +7 -1
  72. data/platform/bb/RubyVM/src/com/rho/RhoRuby.java +7 -4
  73. data/platform/bb/RubyVM/src/com/rho/ThreadQueue.java +7 -1
  74. data/platform/bb/RubyVM/src/com/rho/net/AsyncHttp.java +1 -1
  75. data/platform/bb/RubyVM/src/com/rho/net/NetRequest.java +21 -23
  76. data/platform/bb/RubyVM/src/com/rho/net/RhoConnection.java +19 -10
  77. data/platform/bb/RubyVM/src/com/rho/sync/SyncEngine.java +8 -0
  78. data/platform/bb/RubyVM/src/com/rho/sync/SyncNotify.java +3 -0
  79. data/platform/bb/RubyVM/src/com/rho/sync/SyncThread.java +14 -17
  80. data/platform/bb/RubyVM/src/com/xruby/runtime/builtin/RubyFile.java +7 -5
  81. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RhoSupport.java +2 -0
  82. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RubyRuntime.java +10 -1
  83. data/platform/bb/RubyVM/src/j2me/io/File.java +7 -6
  84. data/platform/bb/build/RubyVM_build.files +412 -412
  85. data/platform/bb/build/bb.rake +42 -18
  86. data/platform/bb/build/hsqldb_build.files +151 -151
  87. data/platform/bb/build/rhodes_build.files +44 -40
  88. data/platform/bb/rhodes/platform/5.0/com/rho/BrowserAdapter5.java +2 -0
  89. data/platform/bb/rhodes/platform/5.0/com/rho/RhodesApplicationPlatform.java +237 -0
  90. data/platform/bb/rhodes/platform/common/com/rho/RhodesApplicationPlatform.java +14 -0
  91. data/platform/bb/rhodes/rhodes.jdp +6 -1
  92. data/platform/bb/rhodes/src/com/rho/RhoRubyHelper.java +7 -1
  93. data/platform/bb/rhodes/src/com/rho/RhodesApplicationPlatform.java +14 -0
  94. data/platform/bb/rhodes/src/com/rho/net/NetworkAccess.java +62 -76
  95. data/platform/bb/rhodes/src/com/rho/rubyext/RhoCalendar.java +660 -0
  96. data/platform/bb/rhodes/src/{rhomobile → com/rho/rubyext}/RhoPhonebook.java +95 -38
  97. data/platform/bb/rhodes/src/com/rho/rubyext/System.java +22 -1
  98. data/platform/bb/rhodes/src/rhomobile/PushListeningThread.java +26 -6
  99. data/platform/bb/rhodes/src/rhomobile/RhodesApplication.java +21 -7
  100. data/platform/bb/rhodes/src/rhomobile/bluetooth/BluetoothManager.java +528 -0
  101. data/platform/bb/rhodes/src/rhomobile/bluetooth/BluetoothPort.java +281 -0
  102. data/platform/bb/rhodes/src/rhomobile/bluetooth/BluetoothScreen.java +119 -0
  103. data/platform/bb/rhodes/src/rhomobile/camera/CameraFilesListener.java +2 -2
  104. data/platform/iphone/Classes/AppManager/AppManager.m +70 -7
  105. data/platform/iphone/Classes/Bluetooth/Bluetooth.h +72 -0
  106. data/platform/iphone/Classes/Bluetooth/Bluetooth.m +414 -0
  107. data/platform/iphone/Classes/Event/Event.h +12 -0
  108. data/platform/iphone/Classes/Event/Event.m +300 -0
  109. data/platform/iphone/Classes/LogOptionsController.h +2 -1
  110. data/platform/iphone/Classes/LogOptionsController.m +1 -1
  111. data/platform/iphone/Classes/LogViewController.h +2 -1
  112. data/platform/iphone/Classes/MapView/MapViewController.h +2 -1
  113. data/platform/iphone/Classes/RhoViewController.h +16 -0
  114. data/platform/iphone/Classes/RhoViewController.m +20 -0
  115. data/platform/iphone/Classes/Rhodes.h +12 -0
  116. data/platform/iphone/Classes/Rhodes.m +34 -6
  117. data/platform/iphone/Classes/Signature/SignatureViewController.h +2 -2
  118. data/platform/iphone/Classes/Signature/SignatureViewController.m +0 -10
  119. data/platform/iphone/Classes/SimpleMainView.h +2 -2
  120. data/platform/iphone/Classes/SimpleMainView.m +5 -14
  121. data/platform/iphone/Classes/SplashViewController.h +2 -2
  122. data/platform/iphone/Classes/TabbedMainView.h +2 -2
  123. data/platform/iphone/Classes/TabbedMainView.m +5 -10
  124. data/platform/iphone/Info.plist +5 -5
  125. data/platform/iphone/rhorubylib/rhorubylib.xcodeproj/project.pbxproj +39 -0
  126. data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +47 -4
  127. data/platform/osx/Rhodes Debugger/NoodleLineNumberView.m +3 -2
  128. data/platform/shared/common/AutoPointer.h +3 -0
  129. data/platform/shared/common/RhoConf.cpp +2 -1
  130. data/platform/shared/common/RhoThread.h +1 -1
  131. data/platform/shared/common/RhoTime.h +3 -3
  132. data/platform/shared/common/RhodesApp.cpp +75 -23
  133. data/platform/shared/common/RhodesApp.h +4 -0
  134. data/platform/shared/common/RhodesAppBase.h +2 -0
  135. data/platform/shared/common/ThreadQueue.cpp +23 -18
  136. data/platform/shared/common/ThreadQueue.h +2 -0
  137. data/platform/shared/db/res/db/syncdb.schema +39 -39
  138. data/platform/shared/logging/RhoLogConf.cpp +58 -3
  139. data/platform/shared/logging/RhoLogConf.h +3 -1
  140. data/platform/shared/net/CURLNetRequest.cpp +17 -6
  141. data/platform/shared/net/HttpServer.cpp +125 -25
  142. data/platform/shared/net/HttpServer.h +4 -3
  143. data/platform/shared/ruby/ext/bluetooth/bluetooth.i +56 -0
  144. data/platform/shared/ruby/ext/bluetooth/bluetooth_wrap.c +2563 -0
  145. data/platform/shared/ruby/ext/calendar/calendar.i +28 -0
  146. data/platform/shared/ruby/ext/calendar/calendar_wrap.c +2251 -0
  147. data/platform/shared/ruby/ext/calendar/event.h +41 -0
  148. data/platform/shared/ruby/ext/calendar/event.i +28 -0
  149. data/platform/shared/ruby/ext/calendar/event_wrap.c +2151 -0
  150. data/platform/shared/ruby/ext/rho/rhoruby.c +103 -3
  151. data/platform/shared/ruby/ext/rho/rhoruby.h +16 -2
  152. data/platform/shared/ruby/ext/rhoconf/rhoconf.i +12 -0
  153. data/platform/shared/ruby/ext/rhoconf/rhoconf_wrap.c +101 -0
  154. data/platform/shared/ruby/ext/system/system.i +14 -0
  155. data/platform/shared/ruby/ext/system/system_wrap.c +2568 -2208
  156. data/platform/shared/ruby/main.c +8 -0
  157. data/platform/shared/rubyext/GeoLocation.cpp +6 -3
  158. data/platform/shared/rubyext/System.cpp +14 -0
  159. data/platform/shared/sync/SyncEngine.cpp +9 -1
  160. data/platform/shared/sync/SyncNotify.cpp +16 -8
  161. data/platform/shared/sync/SyncNotify.h +1 -0
  162. data/platform/shared/sync/SyncThread.cpp +7 -12
  163. data/platform/shared/sync/SyncThread.h +5 -3
  164. data/platform/wm/build/wm.rake +7 -1
  165. data/platform/wm/rhodes/Alert.cpp +1 -1
  166. data/platform/wm/rhodes/MainWindow.cpp +28 -0
  167. data/platform/wm/rhodes/MainWindow.h +9 -0
  168. data/platform/wm/rhodes/OutlookApp.cpp +72 -0
  169. data/platform/wm/rhodes/OutlookApp.h +22 -0
  170. data/platform/wm/rhodes/Rhodes.cpp +8 -0
  171. data/platform/wm/rhodes/Rhodes.rc +31 -0
  172. data/platform/wm/rhodes/bluetooth/Bluetooth.cpp +1274 -0
  173. data/platform/wm/rhodes/bluetooth/Bluetooth.h +321 -0
  174. data/platform/wm/rhodes/phonebook/NativeAddressBook.cpp +37 -70
  175. data/platform/wm/rhodes/phonebook/NativeAddressBook.h +0 -4
  176. data/platform/wm/rhodes/resource.h +8 -1
  177. data/platform/wm/rhodes/rho/net/NetRequest.cpp +4 -0
  178. data/platform/wm/rhodes/rho/net/NetRequestImpl.cpp +6 -4
  179. data/platform/wm/rhodes/rho/rubyext/calendar.cpp +487 -0
  180. data/platform/wm/rhodes/rhodes.vcproj +28 -11
  181. data/platform/wm/rhodes/stdafx.h +1 -0
  182. data/platform/wm/rubylib/rubylib.vcproj +32 -0
  183. data/rakefile.rb +8 -1
  184. data/res/generators/templates/application/Rakefile +1 -1
  185. data/res/generators/templates/application/app/layout.erb +4 -1
  186. data/res/generators/templates/application/build.yml +0 -1
  187. data/res/generators/templates/application/public/css/iphone.css +2 -2
  188. data/res/generators/templates/application/public/jqtouch/jqtouch-iphone.css +9 -0
  189. data/res/generators/templates/application/public/jqtouch/jqtouch.css +1 -5
  190. data/res/generators/templates/application/public/jqtouch/jqtouch.js +3 -2
  191. data/rhodes.gemspec +1 -1
  192. data/spec/perfomance_spec/app/Benchmark/benchmark.rb +4 -0
  193. data/spec/perfomance_spec/app/Benchmark/bulk_results.erb +13 -0
  194. data/spec/perfomance_spec/app/Benchmark/controller.rb +178 -0
  195. data/spec/perfomance_spec/app/Benchmark/create_results.erb +13 -0
  196. data/spec/perfomance_spec/app/Benchmark/customers.erb +35 -0
  197. data/spec/perfomance_spec/app/Benchmark/index.erb +9 -0
  198. data/spec/perfomance_spec/app/Benchmark/products.erb +25 -0
  199. data/spec/perfomance_spec/app/Benchmark/search_results.erb +13 -0
  200. data/spec/perfomance_spec/app/Customer/customer.rb +6 -0
  201. data/spec/perfomance_spec/app/Perftest/index.erb +5 -0
  202. data/spec/perfomance_spec/app/Product/index.erb +25 -0
  203. data/spec/perfomance_spec/app/Product/product.rb +6 -0
  204. data/spec/perfomance_spec/app/helpers/application_helper.rb +126 -0
  205. data/spec/perfomance_spec/app/helpers/browser_helper.rb +18 -0
  206. data/spec/perfomance_spec/rhoconfig.txt +1 -1
  207. data/spec/phone_spec/app/Account_s/account_s.rb +5 -2
  208. data/spec/phone_spec/app/Case/case.rb +1 -0
  209. data/spec/phone_spec/app/Case_s/case_s.rb +2 -0
  210. data/spec/phone_spec/app/Data/perftest.json +35 -0
  211. data/spec/phone_spec/app/Data/testCDATA.xml +11 -0
  212. data/spec/phone_spec/app/Product/product.rb +1 -1
  213. data/spec/phone_spec/app/{Spec → spec}/asynchttp_spec.rb +66 -17
  214. data/spec/phone_spec/app/{Spec → spec}/barcode_spec.rb +0 -0
  215. data/spec/phone_spec/app/{Spec → spec}/blobsync_spec.rb +0 -0
  216. data/spec/phone_spec/app/{Spec → spec}/bsearch_spec.rb +0 -0
  217. data/spec/phone_spec/app/{Spec → spec}/bulksync_spec.rb +0 -0
  218. data/spec/phone_spec/app/{Spec → spec}/contacts_spec.rb +0 -0
  219. data/spec/phone_spec/app/{Spec → spec}/crypt_spec.rb +0 -0
  220. data/spec/phone_spec/app/{Spec → spec}/date_spec.rb +0 -0
  221. data/spec/phone_spec/app/spec/events_spec.rb +199 -0
  222. data/spec/phone_spec/app/{Spec → spec}/fixtures/client_info.txt +0 -0
  223. data/spec/phone_spec/app/{Spec → spec}/fixtures/object_values.txt +0 -0
  224. data/spec/phone_spec/app/{Spec → spec}/json_spec.rb +11 -2
  225. data/spec/phone_spec/app/{Spec → spec}/mapview_spec.rb +0 -0
  226. data/spec/phone_spec/app/{Spec → spec}/nativebar_spec.rb +0 -0
  227. data/spec/phone_spec/app/{Spec → spec}/navbar_spec.rb +0 -0
  228. data/spec/phone_spec/app/{Spec → spec}/pagination/fixtures/object_values.txt +0 -0
  229. data/spec/phone_spec/app/{Spec → spec}/rho_controller_spec.rb +5 -0
  230. data/spec/phone_spec/app/{Spec → spec}/rho_spec.rb +48 -0
  231. data/spec/phone_spec/app/{Spec → spec}/rhofile_spec.rb +9 -6
  232. data/spec/phone_spec/app/{Spec → spec}/rhom_object_spec.rb +188 -9
  233. data/spec/phone_spec/app/{Spec → spec}/syncengine_spec.rb +0 -0
  234. data/spec/phone_spec/app/{Spec → spec}/xml_spec.rb +15 -0
  235. data/spec/phone_spec/app/{Spec → spec}/xruby_spec.rb +0 -0
  236. data/spec/phone_spec/app/spec_runner.rb +4 -1
  237. data/spec/phone_spec/build.yml +2 -1
  238. metadata +95 -31
  239. data/platform/bb/rhodes/platform/5.0/com/rho/RhoMainScreen.java +0 -36
  240. data/platform/bb/rhodes/platform/6.0/com/rho/BrowserAdapter5.java +0 -155
  241. data/platform/bb/rhodes/platform/6.0/com/rho/RhoMainScreen.java +0 -36
@@ -31,6 +31,21 @@ describe "Xml" do
31
31
  ch_count.should == 10
32
32
  end
33
33
 
34
+ it "should parse CDATA" do
35
+ file_name = File.join(Rho::RhoApplication::get_model_path('app','Data'), 'testCDATA.xml')
36
+
37
+ file = File.new(file_name)
38
+ doc = REXML::Document.new(file)
39
+
40
+ persons = REXML::XPath.each( doc, "//person/" )
41
+ firstname=""
42
+ persons.each do |ch|
43
+ firstname = ch.elements['firstname'].text
44
+ end
45
+
46
+ firstname.should == "Sample bold <b</b>Tag"
47
+ end
48
+
34
49
  class MyStreamListener
35
50
 
36
51
  def initialize(events)
@@ -16,9 +16,11 @@ class SpecRunner < MSpecScript
16
16
 
17
17
  config[:files] << [ "spec/rhom_object_spec",
18
18
  [ {:schema_model=>true, :sync_model=>true}, {:schema_model=>true, :sync_model=>false},
19
- {:schema_model=>false, :sync_model=>true}, {:schema_model=>false, :sync_model=>true} ] ]
19
+ {:schema_model=>false, :sync_model=>true}, {:schema_model=>false, :sync_model=>false} ] ]
20
20
 
21
21
  config[:files] << "spec/contacts_spec" unless System.get_property('device_name') == 'Win32'
22
+ config[:files] << "spec/events_spec" unless System.get_property('device_name') == 'Win32'
23
+
22
24
  config[:files] << "spec/barcode_spec" unless System.get_property('device_name') == 'Win32'
23
25
  config[:files] << "spec/mapview_spec" unless System.get_property('platform') == 'WINDOWS'
24
26
  config[:files] << "spec/nativebar_spec" if System.get_property('platform') == 'APPLE' || System.get_property('platform') == 'ANDROID'
@@ -27,6 +29,7 @@ class SpecRunner < MSpecScript
27
29
  config[:files] << "spec/xruby_spec" if defined? RHO_ME
28
30
 
29
31
  config[:files] << [ "spec/syncengine_spec", [ {:schema_model=>true }, {:schema_model=>false } ] ]
32
+
30
33
  config[:files] << "spec/blobsync_spec"
31
34
  config[:files] << "spec/bulksync_spec"
32
35
  end
@@ -18,7 +18,6 @@ android:
18
18
  mapping: enabled
19
19
  capabilities:
20
20
  - network_state
21
- - pim
22
21
 
23
22
  extensions: ["barcode"]
24
23
 
@@ -29,7 +28,9 @@ bb:
29
28
  extensions: ["barcode"]
30
29
 
31
30
  capabilities:
31
+ - pim
32
32
  - push
33
+ - calendar
33
34
 
34
35
  extensions: ["json", "rhoxml", "rhospec", "crypt"]
35
36
 
metadata CHANGED
@@ -1,13 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rhodes
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
5
- prerelease: false
4
+ hash: 62196417
5
+ prerelease: true
6
6
  segments:
7
7
  - 2
8
- - 1
8
+ - 2
9
9
  - 0
10
- version: 2.1.0
10
+ - beta
11
+ - 1
12
+ version: 2.2.0.beta.1
11
13
  platform: ruby
12
14
  authors:
13
15
  - Rhomobile
@@ -15,7 +17,7 @@ autorequire:
15
17
  bindir: bin
16
18
  cert_chain: []
17
19
 
18
- date: 2010-09-03 00:00:00 -07:00
20
+ date: 2010-10-13 00:00:00 -07:00
19
21
  default_executable:
20
22
  dependencies:
21
23
  - !ruby/object:Gem::Dependency
@@ -658,6 +660,7 @@ files:
658
660
  - lib/extensions/rholang/rhomsg_ru.rb
659
661
  - lib/extensions/rhospec/rhospec.rb
660
662
  - lib/extensions/rhoxml/rexml/attribute.rb
663
+ - lib/extensions/rhoxml/rexml/cdata.rb
661
664
  - lib/extensions/rhoxml/rexml/child.rb
662
665
  - lib/extensions/rhoxml/rexml/document.rb
663
666
  - lib/extensions/rhoxml/rexml/element.rb
@@ -675,6 +678,7 @@ files:
675
678
  - lib/extensions/rhoxml/rexml/parsers/xpathparser.rb
676
679
  - lib/extensions/rhoxml/rexml/set.rb
677
680
  - lib/extensions/rhoxml/rexml/source.rb
681
+ - lib/extensions/rhoxml/rexml/text.rb
678
682
  - lib/extensions/rhoxml/rexml/xmltokens.rb
679
683
  - lib/extensions/rhoxml/rexml/xpath.rb
680
684
  - lib/extensions/rhoxml/rexml/xpath_parser.rb
@@ -703,9 +707,13 @@ files:
703
707
  - lib/framework/rho/render.rb
704
708
  - lib/framework/rho/rho.rb
705
709
  - lib/framework/rho/rhoapplication.rb
710
+ - lib/framework/rho/rhobluetooth.rb
706
711
  - lib/framework/rho/rhocontact.rb
707
712
  - lib/framework/rho/rhocontroller.rb
708
713
  - lib/framework/rho/rhoerror.rb
714
+ - lib/framework/rho/rhoevent.rb
715
+ - lib/framework/rho/rhoevent_bb.rb
716
+ - lib/framework/rho/rhoevent_c.rb
709
717
  - lib/framework/rho/rhofsconnector.rb
710
718
  - lib/framework/rho/rhomsg.rb
711
719
  - lib/framework/rho/rhosupport.rb
@@ -761,6 +769,7 @@ files:
761
769
  - platform/android/Rhodes/gen/com/rhomobile/rhodes/R.java
762
770
  - platform/android/Rhodes/jni/include/rhodes/details/rhojava.inc
763
771
  - platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_alert_Alert.h
772
+ - platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_bluetooth_RhoBluetoothManager.h
764
773
  - platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_camera_Camera.h
765
774
  - platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_datetime_DateTimePicker.h
766
775
  - platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_file_RhoFileApi.h
@@ -779,9 +788,11 @@ files:
779
788
  - platform/android/Rhodes/jni/include/rhodes/sslimpl.h
780
789
  - platform/android/Rhodes/jni/include/rhodes.h
781
790
  - platform/android/Rhodes/jni/src/alert.cpp
791
+ - platform/android/Rhodes/jni/src/bluetooth.cpp
782
792
  - platform/android/Rhodes/jni/src/callbacks.cpp
783
793
  - platform/android/Rhodes/jni/src/camera.cpp
784
794
  - platform/android/Rhodes/jni/src/datetimepicker.cpp
795
+ - platform/android/Rhodes/jni/src/event.cpp
785
796
  - platform/android/Rhodes/jni/src/fileapi.cpp
786
797
  - platform/android/Rhodes/jni/src/geolocation.cpp
787
798
  - platform/android/Rhodes/jni/src/logconf.cpp
@@ -818,6 +829,8 @@ files:
818
829
  - platform/android/Rhodes/res/drawable/signature_clear.png
819
830
  - platform/android/Rhodes/res/drawable/signature_ok.png
820
831
  - platform/android/Rhodes/res/drawable/sync.png
832
+ - platform/android/Rhodes/res/layout/bt_device_list.xml
833
+ - platform/android/Rhodes/res/layout/bt_device_name.xml
821
834
  - platform/android/Rhodes/res/layout/camera.xml
822
835
  - platform/android/Rhodes/res/layout/datetime.xml
823
836
  - platform/android/Rhodes/res/layout/dialog_activity.xml
@@ -831,6 +844,13 @@ files:
831
844
  - platform/android/Rhodes/rhobundle.xml
832
845
  - platform/android/Rhodes/src/com/rhomobile/rhodes/alert/Alert.java
833
846
  - platform/android/Rhodes/src/com/rhomobile/rhodes/AndroidR.java
847
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/IRhoBluetoothManager.java
848
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothDeviceListActivity.java
849
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothManager.java
850
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothManagerNew.java
851
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothManagerOld.java
852
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothSession.java
853
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/bluetooth/UUIDHelper.java
834
854
  - platform/android/Rhodes/src/com/rhomobile/rhodes/camera/Camera.java
835
855
  - platform/android/Rhodes/src/com/rhomobile/rhodes/camera/FileList.java
836
856
  - platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCapture.java
@@ -838,6 +858,8 @@ files:
838
858
  - platform/android/Rhodes/src/com/rhomobile/rhodes/Capabilities.java
839
859
  - platform/android/Rhodes/src/com/rhomobile/rhodes/datetime/DateTimePicker.java
840
860
  - platform/android/Rhodes/src/com/rhomobile/rhodes/datetime/DateTimePickerScreen.java
861
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/event/Event.java
862
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/event/EventStore.java
841
863
  - platform/android/Rhodes/src/com/rhomobile/rhodes/file/RhoFileApi.java
842
864
  - platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocation.java
843
865
  - platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocationImpl.java
@@ -861,6 +883,9 @@ files:
861
883
  - platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactAccessorOld.java
862
884
  - platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactField.java
863
885
  - platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/Phonebook.java
886
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/Push.java
887
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/PushReceiver.java
888
+ - platform/android/Rhodes/src/com/rhomobile/rhodes/PushService.java
864
889
  - platform/android/Rhodes/src/com/rhomobile/rhodes/RhoActivity.java
865
890
  - platform/android/Rhodes/src/com/rhomobile/rhodes/RhoConf.java
866
891
  - platform/android/Rhodes/src/com/rhomobile/rhodes/Rhodes.java
@@ -1063,11 +1088,10 @@ files:
1063
1088
  - platform/bb/rhodes/platform/4.2.2/com/rho/BBVersionSpecific.java
1064
1089
  - platform/bb/rhodes/platform/4.7/com/rho/RhoMainScreen.java
1065
1090
  - platform/bb/rhodes/platform/5.0/com/rho/BrowserAdapter5.java
1066
- - platform/bb/rhodes/platform/5.0/com/rho/RhoMainScreen.java
1067
- - platform/bb/rhodes/platform/6.0/com/rho/BrowserAdapter5.java
1068
- - platform/bb/rhodes/platform/6.0/com/rho/RhoMainScreen.java
1091
+ - platform/bb/rhodes/platform/5.0/com/rho/RhodesApplicationPlatform.java
1069
1092
  - platform/bb/rhodes/platform/common/com/rho/BBVersionSpecific.java
1070
1093
  - platform/bb/rhodes/platform/common/com/rho/BrowserAdapter5.java
1094
+ - platform/bb/rhodes/platform/common/com/rho/RhodesApplicationPlatform.java
1071
1095
  - platform/bb/rhodes/platform/common/com/rho/RhoMainScreen.java
1072
1096
  - platform/bb/rhodes/resources/icon.png
1073
1097
  - platform/bb/rhodes/rhodes.csl
@@ -1086,14 +1110,20 @@ files:
1086
1110
  - platform/bb/rhodes/src/com/rho/net/NetworkAccess.java
1087
1111
  - platform/bb/rhodes/src/com/rho/net/SSLSocket.java
1088
1112
  - platform/bb/rhodes/src/com/rho/net/TCPSocket.java
1113
+ - platform/bb/rhodes/src/com/rho/RhodesApplicationPlatform.java
1089
1114
  - platform/bb/rhodes/src/com/rho/RhoMainScreen.java
1090
1115
  - platform/bb/rhodes/src/com/rho/RhoRubyHelper.java
1091
1116
  - platform/bb/rhodes/src/com/rho/rubyext/Alert.java
1092
1117
  - platform/bb/rhodes/src/com/rho/rubyext/GeoLocation.java
1118
+ - platform/bb/rhodes/src/com/rho/rubyext/RhoCalendar.java
1119
+ - platform/bb/rhodes/src/com/rho/rubyext/RhoPhonebook.java
1093
1120
  - platform/bb/rhodes/src/com/rho/rubyext/System.java
1094
1121
  - platform/bb/rhodes/src/com/rho/rubyext/WebView.java
1095
1122
  - platform/bb/rhodes/src/com/rho/rubyext/XMLParser.java
1096
1123
  - platform/bb/rhodes/src/com/rho/Version.java
1124
+ - platform/bb/rhodes/src/rhomobile/bluetooth/BluetoothManager.java
1125
+ - platform/bb/rhodes/src/rhomobile/bluetooth/BluetoothPort.java
1126
+ - platform/bb/rhodes/src/rhomobile/bluetooth/BluetoothScreen.java
1097
1127
  - platform/bb/rhodes/src/rhomobile/camera/Camera.java
1098
1128
  - platform/bb/rhodes/src/rhomobile/camera/CameraFilesListener.java
1099
1129
  - platform/bb/rhodes/src/rhomobile/camera/CameraScreen.java
@@ -1113,7 +1143,6 @@ files:
1113
1143
  - platform/bb/rhodes/src/rhomobile/NativeBar.java
1114
1144
  - platform/bb/rhodes/src/rhomobile/PushListeningThread.java
1115
1145
  - platform/bb/rhodes/src/rhomobile/RhodesApplication.java
1116
- - platform/bb/rhodes/src/rhomobile/RhoPhonebook.java
1117
1146
  - platform/bb/rhodes/src/rhomobile/RingtoneManager.java
1118
1147
  - platform/bb/rhodes/src/rhomobile/SecondaryResourceFetchThread.java
1119
1148
  - platform/bb/rhodes/src/rhomobile/Utilities.java
@@ -1545,6 +1574,8 @@ files:
1545
1574
  - platform/iphone/Classes/AppManager/AppManager.h
1546
1575
  - platform/iphone/Classes/AppManager/AppManager.m
1547
1576
  - platform/iphone/Classes/AppManager/AppManagerI.h
1577
+ - platform/iphone/Classes/Bluetooth/Bluetooth.h
1578
+ - platform/iphone/Classes/Bluetooth/Bluetooth.m
1548
1579
  - platform/iphone/Classes/Camera/PickImageDelegate.h
1549
1580
  - platform/iphone/Classes/Camera/PickImageDelegate.m
1550
1581
  - platform/iphone/Classes/DateTime.h
@@ -1554,6 +1585,8 @@ files:
1554
1585
  - platform/iphone/Classes/DateTimePickerDelegate.m
1555
1586
  - platform/iphone/Classes/Dispatcher/Dispatcher.c
1556
1587
  - platform/iphone/Classes/Dispatcher/Dispatcher.h
1588
+ - platform/iphone/Classes/Event/Event.h
1589
+ - platform/iphone/Classes/Event/Event.m
1557
1590
  - platform/iphone/Classes/GeoLocation/LocationController.h
1558
1591
  - platform/iphone/Classes/GeoLocation/LocationController.m
1559
1592
  - platform/iphone/Classes/LogOptionsController.h
@@ -1584,6 +1617,8 @@ files:
1584
1617
  - platform/iphone/Classes/RhoMainView.h
1585
1618
  - platform/iphone/Classes/RhoNativeViewManager.mm
1586
1619
  - platform/iphone/Classes/RhoNativeViewManagerOC.h
1620
+ - platform/iphone/Classes/RhoViewController.h
1621
+ - platform/iphone/Classes/RhoViewController.m
1587
1622
  - platform/iphone/Classes/RingtoneManager.h
1588
1623
  - platform/iphone/Classes/RingtoneManager.m
1589
1624
  - platform/iphone/Classes/Signature/SignatureDelegate.h
@@ -2173,6 +2208,13 @@ files:
2173
2208
  - platform/shared/ruby/ext/alert/alert_wrap.c
2174
2209
  - platform/shared/ruby/ext/asynchttp/asynchttp.i
2175
2210
  - platform/shared/ruby/ext/asynchttp/asynchttp_wrap.c
2211
+ - platform/shared/ruby/ext/bluetooth/bluetooth.i
2212
+ - platform/shared/ruby/ext/bluetooth/bluetooth_wrap.c
2213
+ - platform/shared/ruby/ext/calendar/calendar.i
2214
+ - platform/shared/ruby/ext/calendar/calendar_wrap.c
2215
+ - platform/shared/ruby/ext/calendar/event.h
2216
+ - platform/shared/ruby/ext/calendar/event.i
2217
+ - platform/shared/ruby/ext/calendar/event_wrap.c
2176
2218
  - platform/shared/ruby/ext/camera/camera.i
2177
2219
  - platform/shared/ruby/ext/camera/camera_wrap.c
2178
2220
  - platform/shared/ruby/ext/datetimepicker/datetimepicker.i
@@ -3818,6 +3860,8 @@ files:
3818
3860
  - platform/wm/rhodes/AppManager.h
3819
3861
  - platform/wm/rhodes/atlutil-vc08.h
3820
3862
  - platform/wm/rhodes/atlutil.h
3863
+ - platform/wm/rhodes/bluetooth/Bluetooth.cpp
3864
+ - platform/wm/rhodes/bluetooth/Bluetooth.h
3821
3865
  - platform/wm/rhodes/camera/Camera.cpp
3822
3866
  - platform/wm/rhodes/camera/Camera.h
3823
3867
  - platform/wm/rhodes/DateTimePicker.cpp
@@ -3833,6 +3877,8 @@ files:
3833
3877
  - platform/wm/rhodes/menubar.cpp
3834
3878
  - platform/wm/rhodes/menubar.h
3835
3879
  - platform/wm/rhodes/OkCancelModalDialog.h
3880
+ - platform/wm/rhodes/OutlookApp.cpp
3881
+ - platform/wm/rhodes/OutlookApp.h
3836
3882
  - platform/wm/rhodes/phonebook/NativeAddressBook.cpp
3837
3883
  - platform/wm/rhodes/phonebook/NativeAddressBook.h
3838
3884
  - platform/wm/rhodes/phonebook/phonebook.cpp
@@ -3847,6 +3893,7 @@ files:
3847
3893
  - platform/wm/rhodes/rho/net/NetRequest.h
3848
3894
  - platform/wm/rhodes/rho/net/NetRequestImpl.cpp
3849
3895
  - platform/wm/rhodes/rho/net/NetRequestImpl.h
3896
+ - platform/wm/rhodes/rho/rubyext/calendar.cpp
3850
3897
  - platform/wm/rhodes/rho/rubyext/GeoLocationImpl.cpp
3851
3898
  - platform/wm/rhodes/rho/rubyext/GeoLocationImpl.h
3852
3899
  - platform/wm/rhodes/rho/rubyext/SystemImpl.cpp
@@ -3980,6 +4027,7 @@ files:
3980
4027
  - res/generators/templates/application/public/images/toolButton.png
3981
4028
  - res/generators/templates/application/public/images/toolButton_new.png
3982
4029
  - res/generators/templates/application/public/images/whiteButton.png
4030
+ - res/generators/templates/application/public/jqtouch/jqtouch-iphone.css
3983
4031
  - res/generators/templates/application/public/jqtouch/jqtouch.css
3984
4032
  - res/generators/templates/application/public/jqtouch/jqtouch.js
3985
4033
  - res/generators/templates/application/public/jqtouch/jqtouch.transitions.js
@@ -5622,11 +5670,24 @@ files:
5622
5670
  - spec/generator_spec/spec.opts
5623
5671
  - spec/generator_spec/spec_helper.rb
5624
5672
  - spec/perfomance_spec/app/application.rb
5673
+ - spec/perfomance_spec/app/Benchmark/benchmark.rb
5674
+ - spec/perfomance_spec/app/Benchmark/bulk_results.erb
5675
+ - spec/perfomance_spec/app/Benchmark/controller.rb
5676
+ - spec/perfomance_spec/app/Benchmark/create_results.erb
5677
+ - spec/perfomance_spec/app/Benchmark/customers.erb
5678
+ - spec/perfomance_spec/app/Benchmark/index.erb
5679
+ - spec/perfomance_spec/app/Benchmark/products.erb
5680
+ - spec/perfomance_spec/app/Benchmark/search_results.erb
5681
+ - spec/perfomance_spec/app/Customer/customer.rb
5682
+ - spec/perfomance_spec/app/helpers/application_helper.rb
5683
+ - spec/perfomance_spec/app/helpers/browser_helper.rb
5625
5684
  - spec/perfomance_spec/app/index.erb
5626
5685
  - spec/perfomance_spec/app/layout.erb
5627
5686
  - spec/perfomance_spec/app/Perftest/controller.rb
5628
5687
  - spec/perfomance_spec/app/Perftest/index.erb
5629
5688
  - spec/perfomance_spec/app/Perftest/perftest.rb
5689
+ - spec/perfomance_spec/app/Product/index.erb
5690
+ - spec/perfomance_spec/app/Product/product.rb
5630
5691
  - spec/perfomance_spec/build.yml
5631
5692
  - spec/perfomance_spec/icon/icon.ico
5632
5693
  - spec/perfomance_spec/icon/icon.png
@@ -5652,6 +5713,7 @@ files:
5652
5713
  - spec/phone_spec/app/Customer_s/customer_s.rb
5653
5714
  - spec/phone_spec/app/Data/big_test.json
5654
5715
  - spec/phone_spec/app/Data/circtest.json
5716
+ - spec/phone_spec/app/Data/perftest.json
5655
5717
  - spec/phone_spec/app/Data/reqTest.rb
5656
5718
  - spec/phone_spec/app/Data/septest.json
5657
5719
  - spec/phone_spec/app/Data/test.json
@@ -5659,32 +5721,34 @@ files:
5659
5721
  - spec/phone_spec/app/Data/test.xml
5660
5722
  - spec/phone_spec/app/Data/test1.xml
5661
5723
  - spec/phone_spec/app/Data/test_log.txt
5724
+ - spec/phone_spec/app/Data/testCDATA.xml
5662
5725
  - spec/phone_spec/app/index.erb
5663
5726
  - spec/phone_spec/app/loading.html
5664
5727
  - spec/phone_spec/app/Product/product.rb
5665
5728
  - spec/phone_spec/app/Product_s/product_s.rb
5666
- - spec/phone_spec/app/Spec/asynchttp_spec.rb
5667
- - spec/phone_spec/app/Spec/barcode_spec.rb
5668
- - spec/phone_spec/app/Spec/blobsync_spec.rb
5669
- - spec/phone_spec/app/Spec/bsearch_spec.rb
5670
- - spec/phone_spec/app/Spec/bulksync_spec.rb
5671
- - spec/phone_spec/app/Spec/contacts_spec.rb
5672
- - spec/phone_spec/app/Spec/crypt_spec.rb
5673
- - spec/phone_spec/app/Spec/date_spec.rb
5674
- - spec/phone_spec/app/Spec/fixtures/client_info.txt
5675
- - spec/phone_spec/app/Spec/fixtures/object_values.txt
5676
- - spec/phone_spec/app/Spec/json_spec.rb
5677
- - spec/phone_spec/app/Spec/mapview_spec.rb
5678
- - spec/phone_spec/app/Spec/nativebar_spec.rb
5679
- - spec/phone_spec/app/Spec/navbar_spec.rb
5680
- - spec/phone_spec/app/Spec/pagination/fixtures/object_values.txt
5681
- - spec/phone_spec/app/Spec/rho_controller_spec.rb
5682
- - spec/phone_spec/app/Spec/rho_spec.rb
5683
- - spec/phone_spec/app/Spec/rhofile_spec.rb
5684
- - spec/phone_spec/app/Spec/rhom_object_spec.rb
5685
- - spec/phone_spec/app/Spec/syncengine_spec.rb
5686
- - spec/phone_spec/app/Spec/xml_spec.rb
5687
- - spec/phone_spec/app/Spec/xruby_spec.rb
5729
+ - spec/phone_spec/app/spec/asynchttp_spec.rb
5730
+ - spec/phone_spec/app/spec/barcode_spec.rb
5731
+ - spec/phone_spec/app/spec/blobsync_spec.rb
5732
+ - spec/phone_spec/app/spec/bsearch_spec.rb
5733
+ - spec/phone_spec/app/spec/bulksync_spec.rb
5734
+ - spec/phone_spec/app/spec/contacts_spec.rb
5735
+ - spec/phone_spec/app/spec/crypt_spec.rb
5736
+ - spec/phone_spec/app/spec/date_spec.rb
5737
+ - spec/phone_spec/app/spec/events_spec.rb
5738
+ - spec/phone_spec/app/spec/fixtures/client_info.txt
5739
+ - spec/phone_spec/app/spec/fixtures/object_values.txt
5740
+ - spec/phone_spec/app/spec/json_spec.rb
5741
+ - spec/phone_spec/app/spec/mapview_spec.rb
5742
+ - spec/phone_spec/app/spec/nativebar_spec.rb
5743
+ - spec/phone_spec/app/spec/navbar_spec.rb
5744
+ - spec/phone_spec/app/spec/pagination/fixtures/object_values.txt
5745
+ - spec/phone_spec/app/spec/rho_controller_spec.rb
5746
+ - spec/phone_spec/app/spec/rho_spec.rb
5747
+ - spec/phone_spec/app/spec/rhofile_spec.rb
5748
+ - spec/phone_spec/app/spec/rhom_object_spec.rb
5749
+ - spec/phone_spec/app/spec/syncengine_spec.rb
5750
+ - spec/phone_spec/app/spec/xml_spec.rb
5751
+ - spec/phone_spec/app/spec/xruby_spec.rb
5688
5752
  - spec/phone_spec/app/spec_runner.rb
5689
5753
  - spec/phone_spec/app/SpecRunner/controller.rb
5690
5754
  - spec/phone_spec/app/SpecRunner/index.erb
@@ -1,36 +0,0 @@
1
- package com.rho;
2
-
3
- import net.rim.device.api.system.Display;
4
- import net.rim.device.api.ui.TouchEvent;
5
- import net.rim.device.api.ui.container.MainScreen;
6
-
7
- public abstract class RhoMainScreen extends MainScreen {
8
-
9
- protected abstract void onTouchUnclick();
10
-
11
- protected boolean touchEvent(TouchEvent message) {
12
- int nEvent = message.getEvent();
13
-
14
- if ( nEvent == TouchEvent.UNCLICK )
15
- {
16
- onTouchUnclick();
17
- return true;
18
- }
19
-
20
- return super.touchEvent(message);
21
- }
22
-
23
- public boolean isTouchScreen()
24
- {
25
- //DeviceInfo.getDevicename()
26
- return net.rim.device.api.ui.Touchscreen.isSupported();
27
- }
28
-
29
- protected abstract void onChangeOrientation(int x, int y, int nOrientation);
30
- protected void sublayout(int arg0, int arg1)
31
- {
32
- onChangeOrientation(arg0, arg1, Display.getOrientation()== Display.ORIENTATION_LANDSCAPE ? 1 : 2);
33
- super.sublayout(arg0, arg1);
34
- }
35
-
36
- };
@@ -1,155 +0,0 @@
1
- package com.rho;
2
-
3
- import net.rim.device.api.browser.field.RenderingOptions;
4
- import net.rim.device.api.browser.field2.*;
5
- import net.rim.device.api.system.Application;
6
-
7
- import javax.microedition.io.HttpConnection;
8
- import javax.microedition.io.InputConnection;
9
-
10
- import com.rho.RhodesApp;
11
- import com.rho.net.URI;
12
-
13
- import rhomobile.Utilities;
14
- import rhomobile.RhodesApplication.PrimaryResourceFetchThread;
15
- import rhomobile.RhodesApplication;
16
-
17
- //http://rim.lithium.com/t5/Java-Development/Browser-events-on-JDK-5-field2-package/m-p/430991
18
- //http://208.74.204.192/t5/Web-Development/Embedded-Browser-Ajax-support/m-p/410260;jsessionid=CDE85D9F4D88217EA118DE3F5DF9FEFD
19
- //http://supportforums.blackberry.com/t5/Web-Development/JavaScript-not-working-on-Black-Berry-Simulator-8330/m-p/412687#M3397
20
-
21
- public class BrowserAdapter5 implements IBrowserAdapter
22
- {
23
- private static final RhoLogger LOG = RhoLogger.RHO_STRIP_LOG ? new RhoEmptyLogger() :
24
- new RhoLogger("BrowserAdapter");
25
- private RhoMainScreen m_oMainScreen;
26
- private BrowserField m_oBrowserField;
27
- private BrowserFieldConfig m_oConfig;
28
-
29
- private RhodesApplication m_app;
30
-
31
- private class RhoProtocolController extends ProtocolController
32
- {
33
- public RhoProtocolController(BrowserField browserField) {
34
- super(browserField);
35
- }
36
-
37
- public void handleNavigationRequest(BrowserFieldRequest request)
38
- throws Exception
39
- {
40
- String url = request.getURL();
41
-
42
- if ( request.getPostData() == null ||
43
- request.getPostData().length == 0 )
44
- {
45
- //String referrer = request.getHeaders().getPropertyValue("referer");
46
- m_app.addToHistory(url, null );
47
- }
48
-
49
- PrimaryResourceFetchThread thread = new PrimaryResourceFetchThread(
50
- url, request.getHeaders(),request.getPostData(),url);
51
- thread.start();
52
- }
53
-
54
- public InputConnection handleResourceRequest(BrowserFieldRequest request)
55
- throws Exception
56
- {
57
- String url = request.getURL();
58
- if ( RhodesApp.getInstance().isRhodesAppUrl(url) || URI.isLocalData(url))
59
- {
60
- HttpConnection connection = Utilities.makeConnection(url, request.getHeaders(), null, null);
61
-
62
- return connection;
63
- }else
64
- return super.handleResourceRequest(request);
65
- }
66
-
67
- public void setNavigationRequestHandler(String protocol,
68
- BrowserFieldNavigationRequestHandler handler) {
69
- super.setNavigationRequestHandler(protocol, handler);
70
- }
71
-
72
- public void setResourceRequestHandler(String protocol,
73
- BrowserFieldResourceRequestHandler handler) {
74
- super.setResourceRequestHandler(protocol, handler);
75
- }
76
-
77
- };
78
- private RhoProtocolController m_oController;
79
-
80
- public BrowserAdapter5(RhoMainScreen oMainScreen, RhodesApplication app)
81
- {
82
- m_oMainScreen = oMainScreen;
83
- m_app = app;
84
-
85
- m_oConfig = new BrowserFieldConfig();
86
- m_oConfig.setProperty( BrowserFieldConfig.NAVIGATION_MODE, BrowserFieldConfig.NAVIGATION_MODE_POINTER );
87
- m_oConfig.setProperty( BrowserFieldConfig.JAVASCRIPT_ENABLED, Boolean.TRUE );
88
- // m_oConfig.setProperty( BrowserFieldConfig.NAVIGATION_MODE, BrowserFieldConfig.NAVIGATION_MODE_CARET );
89
- m_oConfig.setProperty( BrowserFieldConfig.ENABLE_COOKIES, Boolean.TRUE );
90
- }
91
-
92
- public void setFullBrowser()
93
- {
94
- }
95
-
96
- private void createBrowserField()
97
- {
98
- m_oBrowserField = new BrowserField(m_oConfig);
99
- m_oBrowserField.getRenderingOptions().setProperty(RenderingOptions.CORE_OPTIONS_GUID, RenderingOptions.ALLOW_POPUPS, true);
100
- m_oController = new RhoProtocolController(m_oBrowserField);
101
- m_oConfig.setProperty(BrowserFieldConfig.CONTROLLER, m_oController);
102
-
103
- BrowserFieldListener _listener = new BrowserFieldListener()
104
- {
105
- public void documentLoaded(BrowserField browserField,
106
- org.w3c.dom.Document document) throws Exception
107
- {
108
- synchronized (Application.getEventLock())
109
- {
110
- m_oMainScreen.deleteAll();
111
- m_oMainScreen.add(m_oBrowserField);
112
- }
113
- }
114
- /*
115
- public void downloadProgress(BrowserField browserField,
116
- net.rim.device.api.browser.field.ContentReadEvent event)throws Exception
117
- {
118
- //Add your code here.
119
- }*/
120
- };
121
- m_oBrowserField.addListener( _listener );
122
- }
123
-
124
- public void processConnection(HttpConnection connection, Object e)
125
- {
126
- synchronized (Application.getEventLock())
127
- {
128
- createBrowserField();
129
- m_oBrowserField.displayContent(connection, (e != null ? (String)e : "") );
130
- }
131
- }
132
-
133
- public void executeJavascript(String strJavascript)
134
- {
135
- //synchronized (Application.getEventLock())
136
- {
137
- BrowserField field = (BrowserField)m_oMainScreen.getField(0);
138
- field.executeScript(strJavascript);
139
- }
140
- }
141
-
142
- //http://supportforums.blackberry.com/t5/Java-Development/Tab-Navigation/td-p/381156
143
- public boolean navigationMovement(int dx, int dy, int status, int time)
144
- {
145
- //TODO: try to change navigation
146
- /*
147
- Field focField = m_oBrowserField.getLeafFieldWithFocus();
148
- Manager focManager = focField != null ? focField.getManager() : null;
149
- boolean bHorizontal = false;
150
- if ( focManager != null && focManager instanceof HorizontalFieldManager)
151
- bHorizontal = true;
152
- */
153
- return false;
154
- }
155
- }