Rockbox open source high quality audio player as a Music Player Daemon
mpris rockbox mpd libadwaita audio rust zig deno
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

Android port: simplify sending touch events from Java->C

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27833 a1c6a512-1295-4272-9138-f99709370657

+16 -24
+10 -9
android/src/org/rockbox/RockboxFramebuffer.java
··· 80 80 81 81 public boolean onTouchEvent(MotionEvent me) 82 82 { 83 + int x = (int) me.getX(); 84 + int y = (int) me.getY(); 85 + 83 86 switch (me.getAction()) 84 87 { 85 88 case MotionEvent.ACTION_CANCEL: 86 89 case MotionEvent.ACTION_UP: 87 - touchHandler(0); 88 - break; 90 + touchHandler(false, x, y); 91 + return true; 89 92 case MotionEvent.ACTION_MOVE: 90 93 case MotionEvent.ACTION_DOWN: 91 - touchHandler(1); 92 - break; 93 - 94 + touchHandler(true, x, y); 95 + return true; 94 96 } 95 - pixelHandler((int)me.getX(), (int)me.getY()); 96 - return true; 97 + 98 + return false; 97 99 } 98 100 99 101 public boolean onKeyDown(int keyCode, KeyEvent event) ··· 118 120 } 119 121 120 122 public native void set_lcd_active(int active); 121 - public native void pixelHandler(int x, int y); 122 - public native void touchHandler(int down); 123 + public native void touchHandler(boolean down, int x, int y); 123 124 public native boolean buttonHandler(int keycode, boolean state); 124 125 }
+6 -15
firmware/target/hosted/android/button-android.c
··· 39 39 } last_state = STATE_UNKNOWN; 40 40 41 41 /* 42 - * this writes in an interrupt-like fashion the last pixel coordinates 43 - * that the user pressed on the screen */ 44 - JNIEXPORT void JNICALL 45 - Java_org_rockbox_RockboxFramebuffer_pixelHandler(JNIEnv*env, jobject this, 46 - int x, int y) 47 - { 48 - (void)env; 49 - (void)this; 50 - last_x = x; 51 - last_y = y; 52 - } 53 - 54 - /* 55 42 * this notifies us in an interrupt-like fashion whether the user just 56 - * began or stopped the touch action */ 43 + * began or stopped the touch action + where (pixel coordinates) */ 57 44 JNIEXPORT void JNICALL 58 45 Java_org_rockbox_RockboxFramebuffer_touchHandler(JNIEnv*env, jobject this, 59 - int down) 46 + bool down, int x, int y) 60 47 { 61 48 (void)env; 62 49 (void)this; 50 + 63 51 if (down) 64 52 last_state = STATE_DOWN; 65 53 else 66 54 last_state = STATE_UP; 55 + 56 + last_x = x; 57 + last_y = y; 67 58 } 68 59 69 60 /*