rhodes 2.0.0.beta2 → 2.0.0.beta3
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE +2 -0
- data/Manifest.txt +27 -148
- data/Rakefile +49 -3
- data/lib/framework/builtinME.rb +6 -0
- data/lib/framework/rho/render.rb +13 -8
- data/lib/framework/rho/rho.rb +97 -43
- data/lib/framework/rho/rhoapplication.rb +8 -3
- data/lib/framework/rho/rhocontroller.rb +1 -1
- data/lib/framework/rhodes-framework.rb +1 -1
- data/lib/framework/rhodes.rb +1 -1
- data/lib/framework/rhoframework.rb +7 -22
- data/lib/framework/rhofsconnector.rb +1 -1
- data/lib/framework/rholang/localization_simplified.rb +2 -2
- data/lib/framework/rhom/rhom.rb +1 -0
- data/lib/framework/rhom/rhom_db_adapter.rb +2 -2
- data/lib/framework/rhom/rhom_model.rb +98 -0
- data/lib/framework/rhom/rhom_object_factory.rb +13 -12
- data/lib/rhodes.rb +1 -1
- data/platform/android/Rhodes/jni/include/{JNIRhodes.h → rhodes/JNIRhodes.h} +3 -54
- data/platform/android/Rhodes/jni/include/{RhoClassFactory.h → rhodes/RhoClassFactory.h} +0 -0
- data/platform/android/Rhodes/jni/include/{SystemInfoImpl.h → rhodes/SystemInfoImpl.h} +0 -0
- data/platform/android/Rhodes/jni/include/{details → rhodes/details}/rhojava.inc +1 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_Logger.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_RhoConf.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_RhoLogConf.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_RhoMenu.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_Rhodes.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_SplashScreen.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_alert_Alert.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_camera_Camera.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_datetime_DateTimePicker.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_geolocation_GeoLocationImpl.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_socket_RhoSocketImpl.h +0 -0
- data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_socket_SSLImpl.h +0 -0
- data/platform/android/Rhodes/jni/include/{sslimpl.h → rhodes/sslimpl.h} +0 -0
- data/platform/android/Rhodes/jni/include/rhodes.h +59 -0
- data/platform/android/Rhodes/jni/src/RhoClassFactory.cpp +3 -3
- data/platform/android/Rhodes/jni/src/alert.cpp +2 -2
- data/platform/android/Rhodes/jni/src/callbacks.cpp +4 -3
- data/platform/android/Rhodes/jni/src/camera.cpp +2 -2
- data/platform/android/Rhodes/jni/src/datetimepicker.cpp +2 -2
- data/platform/android/Rhodes/jni/src/geolocation.cpp +2 -2
- data/platform/android/Rhodes/jni/src/logconf.cpp +2 -2
- data/platform/android/Rhodes/jni/src/logger.cpp +2 -2
- data/platform/android/Rhodes/jni/src/mapview.cpp +1 -1
- data/platform/android/Rhodes/jni/src/menu.cpp +2 -2
- data/platform/android/Rhodes/jni/src/nativebar.cpp +1 -1
- data/platform/android/Rhodes/jni/src/navbar.cpp +17 -3
- data/platform/android/Rhodes/jni/src/phonebook.cpp +1 -1
- data/platform/android/Rhodes/jni/src/rhoconf.cpp +2 -2
- data/platform/android/Rhodes/jni/src/rhodes.cpp +3 -3
- data/platform/android/Rhodes/jni/src/ringtones.cpp +1 -1
- data/platform/android/Rhodes/jni/src/socketimpl.cpp +2 -2
- data/platform/android/Rhodes/jni/src/splashscreen.cpp +2 -2
- data/platform/android/Rhodes/jni/src/sslimpl.cpp +3 -3
- data/platform/android/Rhodes/jni/src/syncengine.cpp +2 -2
- data/platform/android/Rhodes/jni/src/webview.cpp +15 -12
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/NativeLibraries.java +11 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/NavBar.java +52 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/Rhodes.java +8 -2
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/WebView.java +26 -28
- data/platform/android/build/RhodesSRC_build.files +21 -20
- data/platform/android/build/android.rake +69 -24
- data/platform/android/build/androidcommon.rb +17 -12
- data/platform/bb/build/bb.rake +23 -21
- data/platform/bb/rhodes/src/com/rho/BrowserAdapter.java +5 -2
- data/platform/bb/rhodes/src/com/rho/RhoRubyHelper.java +6 -1
- data/platform/bb/rhodes/src/com/rho/rubyext/System.java +9 -1
- data/platform/bb/rhodes/src/com/rho/rubyext/WebView.java +31 -2
- data/platform/bb/rhodes/src/rhomobile/RhodesApplication.java +17 -6
- data/platform/bb/rhodes/src/rhomobile/Utilities.java +6 -0
- data/platform/iphone/Classes/AppManager/AppManager.m +16 -4
- data/platform/iphone/Classes/DateTime.h +5 -6
- data/platform/iphone/Classes/DateTimePicker.m +4 -18
- data/platform/iphone/Classes/DateTimePickerDelegate.h +7 -9
- data/platform/iphone/Classes/DateTimePickerDelegate.m +141 -152
- data/platform/iphone/Classes/Rhodes.h +6 -1
- data/platform/iphone/Classes/Rhodes.m +17 -43
- data/platform/iphone/Classes/SimpleMainView.h +1 -1
- data/platform/iphone/Classes/SimpleMainView.m +54 -4
- data/platform/iphone/Classes/WebView.m +17 -0
- data/platform/iphone/rbuild/iphone.rake +1 -0
- data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +0 -45
- data/platform/shared/common/PosixThreadImpl.cpp +8 -0
- data/platform/shared/common/PosixThreadImpl.h +1 -0
- data/platform/shared/common/RhoThread.cpp +1 -0
- data/platform/shared/common/RhoThread.h +4 -2
- data/platform/shared/curl/include/curl/curl.h +4 -0
- data/platform/shared/db/DBAdapter.cpp +47 -60
- data/platform/shared/db/DBAdapter.h +6 -2
- data/platform/shared/net/AsyncHttp.cpp +27 -11
- data/platform/shared/net/AsyncHttp.h +3 -1
- data/platform/shared/net/CURLNetRequest.cpp +11 -10
- data/platform/shared/net/CURLNetRequest.h +6 -4
- data/platform/shared/net/HttpServer.cpp +11 -6
- data/platform/shared/ruby/ext/asynchttp/asynchttp.i +2 -2
- data/platform/shared/ruby/ext/asynchttp/asynchttp_wrap.c +22 -11
- data/platform/shared/ruby/ext/rho/rhoruby.c +2 -2
- data/platform/shared/ruby/ext/rho/rhosupport.c +23 -3
- data/platform/shared/ruby/ext/webview/webview.i +4 -0
- data/platform/shared/ruby/ext/webview/webview_wrap.c +39 -0
- data/platform/shared/ruby/re.c +8 -0
- data/platform/shared/ruby/string.c +1 -1
- data/platform/shared/rubyJVM/src/com/rho/IRhoRubyHelper.java +1 -0
- data/platform/shared/rubyJVM/src/com/rho/RhoClassFactory.java +6 -1
- data/platform/shared/rubyJVM/src/com/rho/RhoThread.java +3 -0
- data/platform/shared/rubyJVM/src/com/rho/RhodesApp.java +34 -0
- data/platform/shared/rubyJVM/src/com/rho/db/DBAdapter.java +40 -53
- data/platform/shared/rubyJVM/src/com/rho/net/AsyncHttp.java +32 -15
- data/platform/shared/rubyJVM/src/com/rho/net/NetRequest.java +31 -17
- data/platform/shared/rubyJVM/src/com/rho/net/RhoConnection.java +3 -0
- data/platform/shared/rubyJVM/src/com/rho/sync/JSONArrayIterator.java +17 -0
- data/platform/shared/rubyJVM/src/com/rho/sync/SyncEngine.java +158 -137
- data/platform/shared/rubyJVM/src/com/rho/sync/SyncSource.java +18 -17
- data/platform/shared/rubyJVM/src/com/rho/sync/SyncThread.java +10 -2
- data/platform/shared/rubyJVM/src/com/xruby/GeneratedMethods/RubyFile_Methods.java +6 -0
- data/platform/shared/rubyJVM/src/com/xruby/runtime/builtin/RubyFile.java +18 -3
- data/platform/shared/rubyJVM/src/j2me/io/File.java +37 -9
- data/platform/shared/sqlite/sqlite3.c +14613 -13016
- data/platform/shared/sqlite/sqlite3.h +1461 -1499
- data/platform/shared/sqlite/sqlite3ext.h +0 -2
- data/platform/shared/sync/ClientRegister.cpp +3 -3
- data/platform/shared/sync/ClientRegister.h +2 -1
- data/platform/shared/sync/SyncEngine.cpp +20 -8
- data/platform/shared/sync/SyncSource.cpp +12 -12
- data/platform/shared/sync/SyncSource.h +4 -4
- data/platform/shared/sync/SyncThread.cpp +8 -1
- data/platform/shared/tcmalloc/rhomem.h +3 -0
- data/platform/shared/tcmalloc/tcmalloc_.cpp +11 -0
- data/platform/wm/rhodes/Alert.cpp +148 -101
- data/platform/wm/rhodes/Alert.h +4 -1
- data/platform/wm/rhodes/AppManager.cpp +212 -72
- data/platform/wm/rhodes/AppManager.h +24 -3
- data/platform/wm/rhodes/DateTimePicker.cpp +23 -11
- data/platform/wm/rhodes/DateTimePicker.h +16 -5
- data/platform/wm/rhodes/MainWindow.cpp +22 -7
- data/platform/wm/rhodes/OkCancelModalDialog.h +63 -0
- data/platform/wm/rhodes/Rhodes.cpp +29 -17
- data/platform/wm/rhodes/phonebook/NativeAddressBook.cpp +128 -4
- data/platform/wm/rhodes/phonebook/NativeAddressBook.h +33 -3
- data/platform/wm/rhodes/resource.h +1 -1
- data/platform/wm/rhodes/rho/common/RhoClassFactory.cpp +5 -0
- data/platform/wm/rhodes/rho/net/NetRequestImpl.cpp +136 -102
- data/platform/wm/rhodes/rho/net/NetRequestImpl.h +12 -5
- data/platform/wm/rhodes/rho/rubyext/SystemImpl.cpp +24 -10
- data/platform/wm/rhodes/rho/rubyext/WebView.cpp +6 -0
- data/platform/wm/rhodes/rhodes.vcproj +4 -0
- data/platform/wm/tools/detool/detool.cpp +17 -4
- data/rakefile.rb +49 -3
- data/res/build-tools/db/syncdb.schema +2 -2
- data/res/build-tools/detool.exe +0 -0
- data/res/generators/rhogen.rb +10 -10
- data/res/generators/templates/application/app/helpers/browser_helper.rb +9 -4
- data/res/generators/templates/application/app/index.bb.erb +5 -5
- data/res/generators/templates/application/build.yml +1 -0
- data/res/generators/templates/application/public/css/android.css +10 -8
- data/res/generators/templates/application/public/css/blackberry.css +40 -31
- data/res/generators/templates/application/public/css/iphone.css +4 -4
- data/res/generators/templates/application/public/css/webkit.css +7 -0
- data/res/generators/templates/application/public/css/windows_mobile.css +31 -27
- data/res/generators/templates/application/rhoconfig.txt +2 -2
- data/res/generators/templates/model/edit.bb.erb +2 -2
- data/res/generators/templates/model/index.bb.erb +6 -4
- data/res/generators/templates/model/model.rb +2 -1
- data/res/generators/templates/model/new.bb.erb +2 -2
- data/res/generators/templates/model/show.bb.erb +2 -2
- data/rhobuild.yml +37 -0
- data/rhodes.gemspec +1 -1
- data/spec/framework_spec/app/Account/account.rb +7 -0
- data/spec/framework_spec/app/Case/case.rb +6 -0
- data/spec/framework_spec/app/Customer/customer.rb +6 -0
- data/spec/framework_spec/app/Product/product.rb +9 -0
- data/spec/framework_spec/app/spec/rhom_object_spec.rb +1 -1
- data/spec/framework_spec/app/spec/syncengine_spec.rb +2 -1
- metadata +45 -151
- data/lib/build/manifest/createAppManifest.rb +0 -18
- data/lib/build/tasks/android.rake +0 -317
- data/lib/build/tasks/blackberry.rake +0 -355
- data/lib/build/tasks/common.rake +0 -62
- data/lib/build/tasks/iphone.rake +0 -108
- data/lib/build/tasks/linux.rake +0 -81
- data/lib/build/tasks/rhodes-build.rb +0 -11
- data/lib/build/tasks/rspec.rake +0 -20
- data/lib/build/tasks/symbian.rake +0 -202
- data/lib/build/tasks/wm.rake +0 -166
- data/lib/framework/ServeME.rb +0 -7
- data/platform/bb/build/MANIFEST.MF +0 -12
- data/platform/iphone/Classes/DateTimePicker.h +0 -17
- data/res/generators/templates/application/public/icons/Read me first - license.txt +0 -14
- data/res/generators/templates/application/public/icons/about.png +0 -0
- data/res/generators/templates/application/public/icons/airplane.png +0 -0
- data/res/generators/templates/application/public/icons/baby.png +0 -0
- data/res/generators/templates/application/public/icons/badge.png +0 -0
- data/res/generators/templates/application/public/icons/bandaid.png +0 -0
- data/res/generators/templates/application/public/icons/bar-chart.png +0 -0
- data/res/generators/templates/application/public/icons/battery.png +0 -0
- data/res/generators/templates/application/public/icons/beaker.png +0 -0
- data/res/generators/templates/application/public/icons/beaker2.png +0 -0
- data/res/generators/templates/application/public/icons/beermug.png +0 -0
- data/res/generators/templates/application/public/icons/bird.png +0 -0
- data/res/generators/templates/application/public/icons/book.png +0 -0
- data/res/generators/templates/application/public/icons/bookmark.png +0 -0
- data/res/generators/templates/application/public/icons/brightness.png +0 -0
- data/res/generators/templates/application/public/icons/bug.png +0 -0
- data/res/generators/templates/application/public/icons/cabinet.png +0 -0
- data/res/generators/templates/application/public/icons/calendar.png +0 -0
- data/res/generators/templates/application/public/icons/camera.png +0 -0
- data/res/generators/templates/application/public/icons/changeName.rb +0 -22
- data/res/generators/templates/application/public/icons/chat2.png +0 -0
- data/res/generators/templates/application/public/icons/chicken.png +0 -0
- data/res/generators/templates/application/public/icons/clock.png +0 -0
- data/res/generators/templates/application/public/icons/cloud.png +0 -0
- data/res/generators/templates/application/public/icons/coffee.png +0 -0
- data/res/generators/templates/application/public/icons/compass.png +0 -0
- data/res/generators/templates/application/public/icons/contrast.png +0 -0
- data/res/generators/templates/application/public/icons/dashboard.png +0 -0
- data/res/generators/templates/application/public/icons/display.png +0 -0
- data/res/generators/templates/application/public/icons/dogpaw.png +0 -0
- data/res/generators/templates/application/public/icons/download.png +0 -0
- data/res/generators/templates/application/public/icons/dumbbell.png +0 -0
- data/res/generators/templates/application/public/icons/ekg.png +0 -0
- data/res/generators/templates/application/public/icons/envelope.png +0 -0
- data/res/generators/templates/application/public/icons/equalizer.png +0 -0
- data/res/generators/templates/application/public/icons/eye.png +0 -0
- data/res/generators/templates/application/public/icons/film-roll.png +0 -0
- data/res/generators/templates/application/public/icons/flag.png +0 -0
- data/res/generators/templates/application/public/icons/fork-and-knife.png +0 -0
- data/res/generators/templates/application/public/icons/fuel.png +0 -0
- data/res/generators/templates/application/public/icons/gameplan.png +0 -0
- data/res/generators/templates/application/public/icons/gear.png +0 -0
- data/res/generators/templates/application/public/icons/gear2.png +0 -0
- data/res/generators/templates/application/public/icons/gift.png +0 -0
- data/res/generators/templates/application/public/icons/heart.png +0 -0
- data/res/generators/templates/application/public/icons/house.png +0 -0
- data/res/generators/templates/application/public/icons/inbox.png +0 -0
- data/res/generators/templates/application/public/icons/index-cards.png +0 -0
- data/res/generators/templates/application/public/icons/iphone.png +0 -0
- data/res/generators/templates/application/public/icons/ipod.png +0 -0
- data/res/generators/templates/application/public/icons/key.png +0 -0
- data/res/generators/templates/application/public/icons/lifebuoy.png +0 -0
- data/res/generators/templates/application/public/icons/lightbulb.png +0 -0
- data/res/generators/templates/application/public/icons/line-chart.png +0 -0
- data/res/generators/templates/application/public/icons/location.png +0 -0
- data/res/generators/templates/application/public/icons/lock.png +0 -0
- data/res/generators/templates/application/public/icons/loopback.png +0 -0
- data/res/generators/templates/application/public/icons/magnifying-glass.png +0 -0
- data/res/generators/templates/application/public/icons/map-marker.png +0 -0
- data/res/generators/templates/application/public/icons/map.png +0 -0
- data/res/generators/templates/application/public/icons/medical-bag.png +0 -0
- data/res/generators/templates/application/public/icons/medical.png +0 -0
- data/res/generators/templates/application/public/icons/microphone.png +0 -0
- data/res/generators/templates/application/public/icons/movie1.png +0 -0
- data/res/generators/templates/application/public/icons/movie2.png +0 -0
- data/res/generators/templates/application/public/icons/network.png +0 -0
- data/res/generators/templates/application/public/icons/note.png +0 -0
- data/res/generators/templates/application/public/icons/outlet.png +0 -0
- data/res/generators/templates/application/public/icons/palette.png +0 -0
- data/res/generators/templates/application/public/icons/paperclip.png +0 -0
- data/res/generators/templates/application/public/icons/phone.png +0 -0
- data/res/generators/templates/application/public/icons/photos.png +0 -0
- data/res/generators/templates/application/public/icons/piano.png +0 -0
- data/res/generators/templates/application/public/icons/picture-frame.png +0 -0
- data/res/generators/templates/application/public/icons/pill.png +0 -0
- data/res/generators/templates/application/public/icons/pin.png +0 -0
- data/res/generators/templates/application/public/icons/pinetree.png +0 -0
- data/res/generators/templates/application/public/icons/planet.png +0 -0
- data/res/generators/templates/application/public/icons/puzzle.png +0 -0
- data/res/generators/templates/application/public/icons/radar.png +0 -0
- data/res/generators/templates/application/public/icons/redo.png +0 -0
- data/res/generators/templates/application/public/icons/refresh.png +0 -0
- data/res/generators/templates/application/public/icons/runner.png +0 -0
- data/res/generators/templates/application/public/icons/shoebox.png +0 -0
- data/res/generators/templates/application/public/icons/shopping-bag.png +0 -0
- data/res/generators/templates/application/public/icons/shopping-cart.png +0 -0
- data/res/generators/templates/application/public/icons/shuffle.png +0 -0
- data/res/generators/templates/application/public/icons/signpost.png +0 -0
- data/res/generators/templates/application/public/icons/skull-n-crossbones.png +0 -0
- data/res/generators/templates/application/public/icons/skull.png +0 -0
- data/res/generators/templates/application/public/icons/sliders.png +0 -0
- data/res/generators/templates/application/public/icons/spraycan.png +0 -0
- data/res/generators/templates/application/public/icons/squiggle.png +0 -0
- data/res/generators/templates/application/public/icons/star.png +0 -0
- data/res/generators/templates/application/public/icons/stopwatch.png +0 -0
- data/res/generators/templates/application/public/icons/suitcase.png +0 -0
- data/res/generators/templates/application/public/icons/tag.png +0 -0
- data/res/generators/templates/application/public/icons/tags.png +0 -0
- data/res/generators/templates/application/public/icons/target.png +0 -0
- data/res/generators/templates/application/public/icons/testtube.png +0 -0
- data/res/generators/templates/application/public/icons/thermometer.png +0 -0
- data/res/generators/templates/application/public/icons/toolbox.png +0 -0
- data/res/generators/templates/application/public/icons/trophy.png +0 -0
- data/res/generators/templates/application/public/icons/tshirt.png +0 -0
- data/res/generators/templates/application/public/icons/tv.png +0 -0
- data/res/generators/templates/application/public/icons/umbrella.png +0 -0
- data/res/generators/templates/application/public/icons/walk.png +0 -0
- data/res/generators/templates/application/public/icons/weather.png +0 -0
- data/res/generators/templates/application/public/icons/widescreen.png +0 -0
- data/res/generators/templates/application/public/icons/wineglass.png +0 -0
- data/res/generators/templates/application/public/icons/zap.png +0 -0
- data/res/generators/templates/application/public/js/jquery-1.2.6.min.js +0 -32
- data/res/generators/templates/model/config.rb +0 -3
- data/res/generators/templates/spec/app/spec/webview_spec.rb +0 -5
- data/spec/framework_spec/app/Account/config.rb +0 -59
- data/spec/framework_spec/app/Case/config.rb +0 -3
- data/spec/framework_spec/app/Customer/config.rb +0 -3
- data/spec/framework_spec/app/Product/config.rb +0 -17
File without changes
|
data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_SplashScreen.h
RENAMED
File without changes
|
data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_alert_Alert.h
RENAMED
File without changes
|
data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_camera_Camera.h
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/platform/android/Rhodes/jni/include/{jni → rhodes/jni}/com_rhomobile_rhodes_socket_SSLImpl.h
RENAMED
File without changes
|
File without changes
|
@@ -0,0 +1,59 @@
|
|
1
|
+
#ifndef _RHODES_H_D9BFC7B4FD394BECAF7EC535453253CC
|
2
|
+
#define _RHODES_H_D9BFC7B4FD394BECAF7EC535453253CC
|
3
|
+
|
4
|
+
#include <jni.h>
|
5
|
+
#include <string>
|
6
|
+
|
7
|
+
JNIEnv *jnienv();
|
8
|
+
|
9
|
+
namespace details
|
10
|
+
{
|
11
|
+
|
12
|
+
template <typename T, typename U>
|
13
|
+
struct rho_cast_helper;
|
14
|
+
|
15
|
+
template <>
|
16
|
+
struct rho_cast_helper<std::string, jstring>
|
17
|
+
{
|
18
|
+
std::string operator()(JNIEnv *env, jstring );
|
19
|
+
};
|
20
|
+
|
21
|
+
template <>
|
22
|
+
struct rho_cast_helper<jstring, char const *>
|
23
|
+
{
|
24
|
+
jstring operator()(JNIEnv *env, char const *);
|
25
|
+
};
|
26
|
+
|
27
|
+
template <>
|
28
|
+
struct rho_cast_helper<jstring, char *>
|
29
|
+
{
|
30
|
+
jstring operator()(JNIEnv *env, char *s) {return rho_cast_helper<jstring, char const *>()(env, s);}
|
31
|
+
};
|
32
|
+
|
33
|
+
template <int N>
|
34
|
+
struct rho_cast_helper<jstring, char [N]>
|
35
|
+
{
|
36
|
+
jstring operator()(JNIEnv *env, char (&s)[N]) {return rho_cast_helper<jstring, char const *>()(env, &s[0]);}
|
37
|
+
};
|
38
|
+
|
39
|
+
template <>
|
40
|
+
struct rho_cast_helper<jstring, std::string>
|
41
|
+
{
|
42
|
+
jstring operator()(JNIEnv *env, std::string const &s) {return rho_cast_helper<jstring, char const *>()(env, s.c_str());}
|
43
|
+
};
|
44
|
+
|
45
|
+
} // namespace details
|
46
|
+
|
47
|
+
template <typename T, typename U>
|
48
|
+
T rho_cast(JNIEnv *env, U u)
|
49
|
+
{
|
50
|
+
return details::rho_cast_helper<T, U>()(env, u);
|
51
|
+
}
|
52
|
+
|
53
|
+
template <typename T, typename U>
|
54
|
+
T rho_cast(U u)
|
55
|
+
{
|
56
|
+
return details::rho_cast_helper<T, U>()(jnienv(), u);
|
57
|
+
}
|
58
|
+
|
59
|
+
#endif // _RHODES_H_D9BFC7B4FD394BECAF7EC535453253CC
|
@@ -1,9 +1,9 @@
|
|
1
1
|
#include <net/CURLNetRequest.h>
|
2
2
|
#include <common/PosixThreadImpl.h>
|
3
3
|
|
4
|
-
#include "RhoClassFactory.h"
|
5
|
-
#include "SystemInfoImpl.h"
|
6
|
-
#include "sslimpl.h"
|
4
|
+
#include "rhodes/RhoClassFactory.h"
|
5
|
+
#include "rhodes/SystemInfoImpl.h"
|
6
|
+
#include "rhodes/sslimpl.h"
|
7
7
|
|
8
8
|
namespace rho
|
9
9
|
{
|
@@ -1,7 +1,8 @@
|
|
1
|
-
#include "JNIRhodes.h"
|
1
|
+
#include "rhodes/JNIRhodes.h"
|
2
2
|
|
3
|
-
#include "RhoClassFactory.h"
|
4
|
-
|
3
|
+
#include "rhodes/RhoClassFactory.h"
|
4
|
+
|
5
|
+
#include <ruby/ext/rho/rhoruby.h>
|
5
6
|
|
6
7
|
#undef DEFAULT_LOGCATEGORY
|
7
8
|
#define DEFAULT_LOGCATEGORY "Callbacks"
|
@@ -1,4 +1,4 @@
|
|
1
|
-
#include "JNIRhodes.h"
|
1
|
+
#include "rhodes/JNIRhodes.h"
|
2
2
|
|
3
3
|
#include <common/rhoparams.h>
|
4
4
|
|
@@ -7,10 +7,24 @@
|
|
7
7
|
|
8
8
|
RHO_GLOBAL void create_navbar(rho_param *p)
|
9
9
|
{
|
10
|
-
|
10
|
+
JNIEnv *env = jnienv();
|
11
|
+
jclass cls = getJNIClass(RHODES_JAVA_CLASS_NAVBAR);
|
12
|
+
if (!cls) return;
|
13
|
+
jmethodID mid = getJNIClassStaticMethod(env, cls, "create", "(Ljava/util/Vector;)V");
|
14
|
+
if (!mid) return;
|
15
|
+
|
16
|
+
jobject paramsObj = RhoValueConverter(env).createObject(p);
|
17
|
+
env->CallStaticVoidMethod(cls, mid, paramsObj);
|
18
|
+
env->DeleteLocalRef(paramsObj);
|
11
19
|
}
|
12
20
|
|
13
21
|
RHO_GLOBAL void remove_navbar()
|
14
22
|
{
|
15
|
-
|
23
|
+
JNIEnv *env = jnienv();
|
24
|
+
jclass cls = getJNIClass(RHODES_JAVA_CLASS_NAVBAR);
|
25
|
+
if (!cls) return;
|
26
|
+
jmethodID mid = getJNIClassStaticMethod(env, cls, "remove", "()V");
|
27
|
+
if (!mid) return;
|
28
|
+
|
29
|
+
env->CallStaticVoidMethod(cls, mid);
|
16
30
|
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
#include <android/log.h>
|
2
2
|
|
3
|
-
#include
|
3
|
+
#include "rhodes/jni/com_rhomobile_rhodes_Rhodes.h"
|
4
4
|
|
5
5
|
#include <common/RhoConf.h>
|
6
6
|
#include <logging/RhoLogConf.h>
|
@@ -9,14 +9,14 @@
|
|
9
9
|
|
10
10
|
#include <sys/stat.h>
|
11
11
|
|
12
|
-
#include "JNIRhodes.h"
|
12
|
+
#include "rhodes/JNIRhodes.h"
|
13
13
|
|
14
14
|
#undef DEFAULT_LOGCATEGORY
|
15
15
|
#define DEFAULT_LOGCATEGORY "Rhodes"
|
16
16
|
|
17
17
|
const char *rho_java_class[] = {
|
18
18
|
#define RHODES_DEFINE_JAVA_CLASS(x, name) name,
|
19
|
-
#include <details/rhojava.inc>
|
19
|
+
#include <rhodes/details/rhojava.inc>
|
20
20
|
#undef RHODES_DEFINE_JAVA_CLASS
|
21
21
|
};
|
22
22
|
|
@@ -1,4 +1,4 @@
|
|
1
|
-
#include "JNIRhodes.h"
|
1
|
+
#include "rhodes/JNIRhodes.h"
|
2
2
|
|
3
3
|
#include <common/RhodesApp.h>
|
4
4
|
|
@@ -41,17 +41,7 @@ RHO_GLOBAL void rho_webview_navigate_back()
|
|
41
41
|
|
42
42
|
RHO_GLOBAL const char* rho_webview_current_location(int index)
|
43
43
|
{
|
44
|
-
|
45
|
-
|
46
|
-
JNIEnv *env = jnienv();
|
47
|
-
jclass cls = getJNIClass(RHODES_JAVA_CLASS_WEB_VIEW);
|
48
|
-
if (!cls) return NULL;
|
49
|
-
jmethodID mid = getJNIClassStaticMethod(env, cls, "currentLocation", "(I)Ljava/lang/String;");
|
50
|
-
if (!mid) return NULL;
|
51
|
-
|
52
|
-
jstring str = (jstring)env->CallStaticObjectMethod(cls, mid, index);
|
53
|
-
curLoc = rho_cast<std::string>(str);
|
54
|
-
return curLoc.c_str();
|
44
|
+
return rho_rhodesapp_getcurrenturl(index);
|
55
45
|
}
|
56
46
|
|
57
47
|
RHO_GLOBAL void rho_webview_set_menu_items(VALUE valMenu)
|
@@ -91,3 +81,16 @@ RHO_GLOBAL void rho_webview_full_screen_mode(int enable)
|
|
91
81
|
{
|
92
82
|
//TODO: rho_webview_full_screen_mode
|
93
83
|
}
|
84
|
+
|
85
|
+
RHO_GLOBAL void rho_webview_set_cookie(const char *url, const char *cookie)
|
86
|
+
{
|
87
|
+
JNIEnv *env = jnienv();
|
88
|
+
jclass cls = getJNIClass(RHODES_JAVA_CLASS_WEB_VIEW);
|
89
|
+
if (!cls) return;
|
90
|
+
jmethodID mid = getJNIClassStaticMethod(env, cls, "setCookie", "(Ljava/lang/String;Ljava/lang/String;)V");
|
91
|
+
if (!mid) return;
|
92
|
+
|
93
|
+
jstring urlObj = rho_cast<jstring>(url);
|
94
|
+
jstring cookieObj = rho_cast<jstring>(cookie);
|
95
|
+
env->CallStaticVoidMethod(cls, mid, urlObj, cookieObj);
|
96
|
+
}
|
@@ -0,0 +1,52 @@
|
|
1
|
+
package com.rhomobile.rhodes;
|
2
|
+
|
3
|
+
import java.util.Vector;
|
4
|
+
|
5
|
+
public class NavBar {
|
6
|
+
|
7
|
+
private static final String TAG = "NavBar";
|
8
|
+
|
9
|
+
private static class CreateTask implements Runnable {
|
10
|
+
|
11
|
+
private String title;
|
12
|
+
private Vector<Object> left;
|
13
|
+
private Vector<Object> right;
|
14
|
+
|
15
|
+
public CreateTask(Vector<Object> p) {
|
16
|
+
// TODO: implement
|
17
|
+
}
|
18
|
+
|
19
|
+
public void run() {
|
20
|
+
// TODO: implement
|
21
|
+
}
|
22
|
+
};
|
23
|
+
|
24
|
+
private static class RemoveTask implements Runnable {
|
25
|
+
public void run() {
|
26
|
+
// TODO: implement
|
27
|
+
}
|
28
|
+
};
|
29
|
+
|
30
|
+
private static void reportFail(String name, Exception e) {
|
31
|
+
Logger.E(TAG, "Call of \"" + name + "\" failed: " + e.getMessage());
|
32
|
+
}
|
33
|
+
|
34
|
+
public static void create(Vector<Object> params) {
|
35
|
+
try {
|
36
|
+
Rhodes.performOnUiThread(new CreateTask(params), false);
|
37
|
+
}
|
38
|
+
catch (Exception e) {
|
39
|
+
reportFail("create", e);
|
40
|
+
}
|
41
|
+
}
|
42
|
+
|
43
|
+
public static void remove() {
|
44
|
+
try {
|
45
|
+
Rhodes.performOnUiThread(new RemoveTask(), false);
|
46
|
+
}
|
47
|
+
catch (Exception e) {
|
48
|
+
reportFail("remove", e);
|
49
|
+
}
|
50
|
+
}
|
51
|
+
|
52
|
+
}
|
@@ -648,6 +648,11 @@ public class Rhodes extends Activity {
|
|
648
648
|
return locale;
|
649
649
|
}
|
650
650
|
|
651
|
+
private static String getCurrentCountry() {
|
652
|
+
String cl = Locale.getDefault().getCountry();
|
653
|
+
return cl;
|
654
|
+
}
|
655
|
+
|
651
656
|
public static int getScreenWidth() {
|
652
657
|
return screenWidth;
|
653
658
|
}
|
@@ -661,6 +666,8 @@ public class Rhodes extends Activity {
|
|
661
666
|
return "ANDROID";
|
662
667
|
else if (name.equalsIgnoreCase("locale"))
|
663
668
|
return getCurrentLocale();
|
669
|
+
else if (name.equalsIgnoreCase("country"))
|
670
|
+
return getCurrentCountry();
|
664
671
|
else if (name.equalsIgnoreCase("screen_width"))
|
665
672
|
return new Integer(getScreenWidth());
|
666
673
|
else if (name.equalsIgnoreCase("screen_height"))
|
@@ -699,7 +706,6 @@ public class Rhodes extends Activity {
|
|
699
706
|
}
|
700
707
|
|
701
708
|
static {
|
702
|
-
|
703
|
-
System.loadLibrary("rhodes");
|
709
|
+
NativeLibraries.load();
|
704
710
|
}
|
705
711
|
}
|
@@ -20,6 +20,8 @@
|
|
20
20
|
*/
|
21
21
|
package com.rhomobile.rhodes;
|
22
22
|
|
23
|
+
import android.webkit.CookieManager;
|
24
|
+
|
23
25
|
public class WebView {
|
24
26
|
|
25
27
|
private static final String TAG = "WebView";
|
@@ -62,21 +64,6 @@ public class WebView {
|
|
62
64
|
}
|
63
65
|
};
|
64
66
|
|
65
|
-
private static class LocationTask implements Runnable {
|
66
|
-
private int index;
|
67
|
-
private StringBuffer loc;
|
68
|
-
|
69
|
-
public LocationTask(int i, StringBuffer l) {
|
70
|
-
index = i;
|
71
|
-
loc = l;
|
72
|
-
}
|
73
|
-
|
74
|
-
public void run() {
|
75
|
-
loc.delete(0, -1);
|
76
|
-
loc.append(RhodesInstance.getInstance().getMainView().currentLocation(index));
|
77
|
-
}
|
78
|
-
};
|
79
|
-
|
80
67
|
private static class IntHolder {
|
81
68
|
public int value;
|
82
69
|
};
|
@@ -92,6 +79,21 @@ public class WebView {
|
|
92
79
|
ret.value = RhodesInstance.getInstance().getMainView().activeTab();
|
93
80
|
}
|
94
81
|
};
|
82
|
+
|
83
|
+
private static class SetCookieTask implements Runnable {
|
84
|
+
private String url;
|
85
|
+
private String cookie;
|
86
|
+
|
87
|
+
public SetCookieTask(String u, String c) {
|
88
|
+
url = u;
|
89
|
+
cookie = c;
|
90
|
+
}
|
91
|
+
|
92
|
+
public void run() {
|
93
|
+
CookieManager mgr = CookieManager.getInstance();
|
94
|
+
mgr.setCookie(url, cookie);
|
95
|
+
}
|
96
|
+
};
|
95
97
|
|
96
98
|
public static void navigate(String url, int index) {
|
97
99
|
try {
|
@@ -120,19 +122,6 @@ public class WebView {
|
|
120
122
|
}
|
121
123
|
}
|
122
124
|
|
123
|
-
public static String currentLocation(int index) {
|
124
|
-
try {
|
125
|
-
StringBuffer loc = new StringBuffer();
|
126
|
-
Rhodes.performOnUiThread(new LocationTask(index, loc), true);
|
127
|
-
return loc.toString();
|
128
|
-
}
|
129
|
-
catch (Exception e) {
|
130
|
-
reportFail("currentLocation", e);
|
131
|
-
}
|
132
|
-
|
133
|
-
return "";
|
134
|
-
}
|
135
|
-
|
136
125
|
public static int activeTab() {
|
137
126
|
try {
|
138
127
|
IntHolder v = new IntHolder();
|
@@ -156,4 +145,13 @@ public class WebView {
|
|
156
145
|
|
157
146
|
return "";
|
158
147
|
}
|
148
|
+
|
149
|
+
public static void setCookie(String url, String cookie) {
|
150
|
+
try {
|
151
|
+
Rhodes.performOnUiThread(new SetCookieTask(url, cookie), false);
|
152
|
+
}
|
153
|
+
catch (Exception e) {
|
154
|
+
reportFail("setCookie", e);
|
155
|
+
}
|
156
|
+
}
|
159
157
|
}
|
@@ -1,41 +1,40 @@
|
|
1
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/AndroidR.java
|
2
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/Capabilities.java
|
3
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/HttpLog.java
|
4
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/Logger.java
|
5
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/NativeBar.java
|
6
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/NetworkConnectivityListener.java
|
7
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/NetworkStateTracker.java
|
8
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/RhoConf.java
|
9
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/RhoLogConf.java
|
10
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/RhoMenu.java
|
11
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/Rhodes.java
|
12
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesInstance.java
|
13
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/RingtoneManager.java
|
14
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/SplashScreen.java
|
15
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/Utils.java
|
16
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/WebView.java
|
17
1
|
platform/android/Rhodes/src/com/rhomobile/rhodes/alert/Alert.java
|
2
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/AndroidR.java
|
18
3
|
platform/android/Rhodes/src/com/rhomobile/rhodes/camera/Camera.java
|
19
4
|
platform/android/Rhodes/src/com/rhomobile/rhodes/camera/FileList.java
|
20
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCapture.java
|
21
5
|
platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCaptureCallback.java
|
6
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCapture.java
|
7
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/Capabilities.java
|
22
8
|
platform/android/Rhodes/src/com/rhomobile/rhodes/datetime/DateTimePicker.java
|
23
9
|
platform/android/Rhodes/src/com/rhomobile/rhodes/datetime/DateTimePickerScreen.java
|
24
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocation.java
|
25
10
|
platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocationImpl.java
|
11
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocation.java
|
12
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/HttpLog.java
|
13
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/Logger.java
|
26
14
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/MainView.java
|
27
15
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SimpleMainView.java
|
28
16
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/TabbedMainView.java
|
29
17
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/Annotation.java
|
30
18
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/AnnotationsOverlay.java
|
31
19
|
platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapView.java
|
32
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/
|
20
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/NativeBar.java
|
21
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/NavBar.java
|
22
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/NetworkConnectivityListener.java
|
23
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/NetworkStateTracker.java
|
33
24
|
platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactField.java
|
25
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/Contact.java
|
34
26
|
platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/Phonebook.java
|
27
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/RhoConf.java
|
28
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesInstance.java
|
29
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/Rhodes.java
|
30
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/RhoLogConf.java
|
31
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/RhoMenu.java
|
32
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/RingtoneManager.java
|
35
33
|
platform/android/Rhodes/src/com/rhomobile/rhodes/socket/RhoSockAddr.java
|
36
|
-
platform/android/Rhodes/src/com/rhomobile/rhodes/socket/RhoSocket.java
|
37
34
|
platform/android/Rhodes/src/com/rhomobile/rhodes/socket/RhoSocketImpl.java
|
35
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/socket/RhoSocket.java
|
38
36
|
platform/android/Rhodes/src/com/rhomobile/rhodes/socket/SSLImpl.java
|
37
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/SplashScreen.java
|
39
38
|
platform/android/Rhodes/src/com/rhomobile/rhodes/ui/AboutDialog.java
|
40
39
|
platform/android/Rhodes/src/com/rhomobile/rhodes/ui/LogOptionsDialog.java
|
41
40
|
platform/android/Rhodes/src/com/rhomobile/rhodes/ui/LogViewDialog.java
|
@@ -44,3 +43,5 @@ platform/android/Rhodes/src/com/rhomobile/rhodes/uri/SmsUriHandler.java
|
|
44
43
|
platform/android/Rhodes/src/com/rhomobile/rhodes/uri/TelUriHandler.java
|
45
44
|
platform/android/Rhodes/src/com/rhomobile/rhodes/uri/UriHandler.java
|
46
45
|
platform/android/Rhodes/src/com/rhomobile/rhodes/uri/VideoUriHandler.java
|
46
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/Utils.java
|
47
|
+
platform/android/Rhodes/src/com/rhomobile/rhodes/WebView.java
|