forked from len0rd/rockbox
Initialize (instantiate) RockboxFramebuffer from the C code like with the othe java objects.
Remove some @Override annotations to make the Java code build with certain javac versions. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28386 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
669a327a2e
commit
6bb7522852
5 changed files with 59 additions and 59 deletions
|
@ -52,7 +52,7 @@ public class RockboxActivity extends Activity
|
|||
/* Now it gets a bit tricky:
|
||||
* The service is started in the same thread as we are now,
|
||||
* but the service also initializes the framebuffer
|
||||
* Unforunately, this happens *after* any of the default
|
||||
* Unfortunately, this happens *after* any of the default
|
||||
* startup methods of an activity, so we need to poll for it
|
||||
*
|
||||
* In order to get the fb, we need to let the Service start up
|
||||
|
@ -71,7 +71,7 @@ public class RockboxActivity extends Activity
|
|||
}
|
||||
/* drawing needs to happen in ui thread */
|
||||
runOnUiThread(new Runnable()
|
||||
{ @Override
|
||||
{
|
||||
public void run() {
|
||||
loadingdialog.dismiss();
|
||||
setContentView(RockboxService.fb);
|
||||
|
|
|
@ -36,37 +36,34 @@ public class RockboxFramebuffer extends View
|
|||
private Bitmap btm;
|
||||
private ByteBuffer native_buf;
|
||||
|
||||
public RockboxFramebuffer(Context c)
|
||||
public RockboxFramebuffer(Context c, int lcd_width,
|
||||
int lcd_height, ByteBuffer native_fb)
|
||||
{
|
||||
super(c);
|
||||
btm = null;
|
||||
|
||||
/* Needed so we can catch KeyEvents */
|
||||
setFocusable(true);
|
||||
setFocusableInTouchMode(true);
|
||||
setClickable(true);
|
||||
btm = Bitmap.createBitmap(lcd_width, lcd_height, Bitmap.Config.RGB_565);
|
||||
native_buf = native_fb;
|
||||
requestFocus();
|
||||
}
|
||||
|
||||
public void onDraw(Canvas c)
|
||||
{
|
||||
if (btm != null)
|
||||
c.drawBitmap(btm, 0.0f, 0.0f, null);
|
||||
c.drawBitmap(btm, 0.0f, 0.0f, null);
|
||||
}
|
||||
|
||||
public void java_lcd_init(int lcd_width, int lcd_height, ByteBuffer native_fb)
|
||||
{
|
||||
btm = Bitmap.createBitmap(lcd_width, lcd_height, Bitmap.Config.RGB_565);
|
||||
native_buf = native_fb;
|
||||
}
|
||||
|
||||
public void java_lcd_update()
|
||||
@SuppressWarnings("unused")
|
||||
private void java_lcd_update()
|
||||
{
|
||||
btm.copyPixelsFromBuffer(native_buf);
|
||||
postInvalidate();
|
||||
}
|
||||
|
||||
public void java_lcd_update_rect(int x, int y, int w, int h)
|
||||
@SuppressWarnings("unused")
|
||||
private void java_lcd_update_rect(int x, int y, int w, int h)
|
||||
{
|
||||
/* can't copy a partial buffer */
|
||||
btm.copyPixelsFromBuffer(native_buf);
|
||||
|
|
|
@ -148,7 +148,7 @@ public class RockboxPCM extends AudioTrack
|
|||
buf = new byte[max_len*3/4];
|
||||
refill_mark = max_len - buf.length;
|
||||
}
|
||||
@Override
|
||||
|
||||
public void onMarkerReached(AudioTrack track)
|
||||
{
|
||||
/* push new data to the hardware */
|
||||
|
@ -186,7 +186,6 @@ public class RockboxPCM extends AudioTrack
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPeriodicNotification(AudioTrack track)
|
||||
{
|
||||
}
|
||||
|
|
|
@ -64,6 +64,7 @@ public class RockboxService extends Service
|
|||
private Object[] mStopForegroundArgs = new Object[1];
|
||||
private IntentFilter itf;
|
||||
private BroadcastReceiver batt_monitor;
|
||||
@SuppressWarnings("unused")
|
||||
private int battery_level;
|
||||
|
||||
@Override
|
||||
|
@ -118,7 +119,6 @@ public class RockboxService extends Service
|
|||
private void startservice()
|
||||
{
|
||||
final int BUFFER = 8*1024;
|
||||
final Context me = this;
|
||||
Thread rb = new Thread(new Runnable()
|
||||
{
|
||||
public void run()
|
||||
|
@ -135,7 +135,7 @@ public class RockboxService extends Service
|
|||
ZipEntry entry;
|
||||
File file = new File("/data/data/org.rockbox/" +
|
||||
"lib/libmisc.so");
|
||||
/* use arbitary file to determine whether extracting is needed */
|
||||
/* use arbitrary file to determine whether extracting is needed */
|
||||
File file2 = new File("/data/data/org.rockbox/" +
|
||||
"app_rockbox/rockbox/codecs/mpa.codec");
|
||||
if (!file2.exists() || (file.lastModified() > file2.lastModified()))
|
||||
|
@ -184,8 +184,6 @@ public class RockboxService extends Service
|
|||
}
|
||||
|
||||
System.loadLibrary("rockbox");
|
||||
|
||||
fb = new RockboxFramebuffer(me);
|
||||
main();
|
||||
}
|
||||
},"Rockbox thread");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue