summaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
Diffstat (limited to 'platform')
-rw-r--r--platform/android/SCsub2
-rw-r--r--platform/javascript/javascript_main.cpp19
-rw-r--r--platform/javascript/os_javascript.cpp6
-rw-r--r--platform/javascript/os_javascript.h4
4 files changed, 28 insertions, 3 deletions
diff --git a/platform/android/SCsub b/platform/android/SCsub
index 3d645de38f..fab8458b26 100644
--- a/platform/android/SCsub
+++ b/platform/android/SCsub
@@ -59,7 +59,7 @@ for x in env.android_dependencies:
gradle_java_dirs_text=""
for x in env.android_java_dirs:
- gradle_java_dirs_text+=",'"+x+"'"
+ gradle_java_dirs_text+=",'"+x.replace("\\","/")+"'"
gradle_res_dirs_text=""
diff --git a/platform/javascript/javascript_main.cpp b/platform/javascript/javascript_main.cpp
index e66110b655..632ef2b6b2 100644
--- a/platform/javascript/javascript_main.cpp
+++ b/platform/javascript/javascript_main.cpp
@@ -74,6 +74,15 @@ static void _glut_skey(bool pressed,int key) {
case GLUT_KEY_INSERT: ev.key.scancode=KEY_INSERT; break;
}
+ if (pressed) {
+ if (os->skey_pressed[key])
+ ev.key.echo = true;
+ else
+ os->skey_pressed[key] = true;
+ }
+ else {
+ os->skey_pressed[key] = false;
+ }
uint32_t m = glutGetModifiers();
ev.key.mod.alt=(m&GLUT_ACTIVE_ALT)!=0;
@@ -107,6 +116,16 @@ static void _glut_key(bool pressed,unsigned char key) {
default: {
ev.key.unicode=key;
}
+
+ if (pressed) {
+ if (os->key_pressed[key])
+ ev.key.echo = true;
+ else
+ os->key_pressed[key] = true;
+ }
+ else {
+ os->key_pressed[key] = false;
+ }
}
diff --git a/platform/javascript/os_javascript.cpp b/platform/javascript/os_javascript.cpp
index 562733ab89..413d88ee23 100644
--- a/platform/javascript/os_javascript.cpp
+++ b/platform/javascript/os_javascript.cpp
@@ -693,7 +693,11 @@ OS_JavaScript::OS_JavaScript(GFXInitFunc p_gfx_init_func,void*p_gfx_init_ud, Ope
time_to_save_sync=-1;
-
+ for (int i = 0; i < 256; i++) {
+ key_pressed[i] = false;
+ if (i < 121)
+ skey_pressed[i] = false;
+ }
}
OS_JavaScript::~OS_JavaScript() {
diff --git a/platform/javascript/os_javascript.h b/platform/javascript/os_javascript.h
index ec3a6cf911..4a8265b9d9 100644
--- a/platform/javascript/os_javascript.h
+++ b/platform/javascript/os_javascript.h
@@ -56,10 +56,12 @@ public:
Point2 pos;
};
+ bool skey_pressed[121];
+ bool key_pressed[256];
+
private:
Vector<TouchPos> touch;
-
Point2 last_mouse;
unsigned int last_id;
GFXInitFunc gfx_init_func;