Thomas Martitz
efe41e91c4
Android: When the backlight goes off, the RockboxFramebuffer/View isn't made invisible. Force that in order to disable screen updates while backlight is off.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28569 a1c6a512-1295-4272-9138-f99709370657
2010-11-12 22:09:27 +00:00
Thomas Martitz
0cf2cc1607
Android: Change how detecting call state (introduced in r27746) works, from polling to event based.
...
* For some reason, the polling methid is much more inefficient than I thought. According to htop it caused up to 15% CPU load on some phones (e.g. Galaxy S).
The event based causes no CPU load.
Rockbox' idle CPU load is now back to 0%, while it was previously dominated by polling the call state.
* Also stop on outgoing calls (no need to explicitely pause for making a call anymore).
* Factor out the detection mechanism to separate files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28564 a1c6a512-1295-4272-9138-f99709370657
2010-11-12 21:04:13 +00:00
Thomas Martitz
33af0dec28
Touchscreen: Improved scroll threshold
...
Remove the hardcoded (and way too small) scroll threshold (the distance moved in pixels before we think the users wants to scroll) and replace it with something based on the actual DPI of the screen.
On Android we call the API for that, on other touchscreens we reimplemented Android's formula (as of 2.2) and calculate it.
Flyspray: 11727
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28548 a1c6a512-1295-4272-9138-f99709370657
2010-11-10 15:25:15 +00:00
Jonathan Gordon
eab843f2c3
android: don't crash if the user presses HOME while the loading screen is showing, this shuld also be made canceleable later
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28530 a1c6a512-1295-4272-9138-f99709370657
2010-11-07 21:10:17 +00:00
Maurus Cuelenaere
f20582442f
Android: replace hardcoded strings with Android strings, allowing translations
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28518 a1c6a512-1295-4272-9138-f99709370657
2010-11-06 02:02:58 +00:00
Thomas Martitz
739d76cfda
Android: Use our translations for the yes/no/ok/cancel buttons in the yesno and keyboard dialog.
...
Second part of FS#11708.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28515 a1c6a512-1295-4272-9138-f99709370657
2010-11-06 01:40:24 +00:00
Maurus Cuelenaere
93640fc228
Android: only display progress dialog when extraction happens
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28514 a1c6a512-1295-4272-9138-f99709370657
2010-11-06 01:27:01 +00:00
Maurus Cuelenaere
c31a2f3bbb
Android: greatly simplify Android YesNo and KeyboardInput widgets
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28513 a1c6a512-1295-4272-9138-f99709370657
2010-11-06 01:18:32 +00:00
Thomas Martitz
988bdc1cc4
Android: Use wakeup objects instead of polling for the dialog results in the keyboard and yesno dialog, allowing a lot of code to be removed.
...
First part of FS#11708
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28512 a1c6a512-1295-4272-9138-f99709370657
2010-11-06 01:01:01 +00:00
Maurus Cuelenaere
be51be6a99
Android: prevent NullPointerException in RockboxService
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28511 a1c6a512-1295-4272-9138-f99709370657
2010-11-05 23:55:20 +00:00
Maurus Cuelenaere
1b477de3cb
Android: don't display the loading screen etc. when the library is already loaded
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28510 a1c6a512-1295-4272-9138-f99709370657
2010-11-05 23:52:26 +00:00
Maurus Cuelenaere
fe2be33318
Android: clean up extracting a bit + add user-visible error-reporting
...
Also put ResultReceiver on the RockboxActivity UI thread.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28509 a1c6a512-1295-4272-9138-f99709370657
2010-11-05 23:40:17 +00:00
Maurus Cuelenaere
4f747c1aaa
Android: prevent loading the library twice
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28508 a1c6a512-1295-4272-9138-f99709370657
2010-11-05 23:40:05 +00:00
Maurus Cuelenaere
7ccc78d084
Android port: replace waiting hack in AndroidActivity with a ResultReceiver, added bonus is unzip progress feedback
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28506 a1c6a512-1295-4272-9138-f99709370657
2010-11-05 23:39:56 +00:00
Maurus Cuelenaere
a83043274b
Android port:
...
* decouple RockboxFramebuffer resume/suspend behaviour from RockboxActivity
* make RockboxFramebuffer native methods private
* refactor attaching the RockboxFramebuffer view to RockboxActivity
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28505 a1c6a512-1295-4272-9138-f99709370657
2010-11-05 23:39:53 +00:00
Thomas Martitz
a4f112729b
tabs -> spaces in the new Yesno java files and remove unused imports.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28422 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 15:40:43 +00:00
Thomas Martitz
49f1ec8e8a
Add support multimedia keys/buttons to the core, and adapt Rockbox on android for it (multimedia buttons are found on wired headsets and the lock screen in cyanogenmod).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28421 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 15:32:57 +00:00
Thomas Martitz
50a9d50fde
Factor out the start/stopForeground and notification icon management into a separate class, don't let RockboxService.java become a beast.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28416 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 14:13:52 +00:00
Jonathan Gordon
b92eabd38b
Use a native yes/no dialog instead of rockbox's internal one on android
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28415 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 13:12:01 +00:00
Thomas Martitz
c8901b3506
Remove the use of the instance field in non-anymore-static methods
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28412 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 12:16:06 +00:00
Thomas Martitz
bf63f24168
Pass the framebuffer to the service in the constructor rather than later from native code.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28411 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 12:11:14 +00:00
Thomas Martitz
2d05d2f9da
Clean up r28408 coding style a bit to follow our guidelines with regard to
...
brace placement, tabs and 80 char line width.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28410 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 12:00:03 +00:00
Jonathan Gordon
eaff333bf5
Use a Native keyboard GUI instead of rockbox's internal one on android
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28407 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 10:35:55 +00:00
Jonathan Gordon
26f7ee13ce
Clean up usage of RockboxService. Add a proper way to check if rockbox is actually running (checking RockboxService.fb != null was very very bad)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28406 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 10:35:42 +00:00
Thomas Martitz
4cbb16e86a
Android: Delay the progress dialog so it's not shown until after 0.5s are over. This way it shouldn't show in a normal launch, but only if libmisc.so needs unzipping.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28387 a1c6a512-1295-4272-9138-f99709370657
2010-10-29 23:12:13 +00:00
Thomas Martitz
6bb7522852
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
2010-10-29 23:12:08 +00:00
Jonathan Gordon
1a2851c298
Redo "r28369, Android load progress screen". git+svn lost the actual code changed
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28372 a1c6a512-1295-4272-9138-f99709370657
2010-10-28 11:30:31 +00:00
Jonathan Gordon
db2a8ffd30
Android: Display a "Loading, please wait" dialog while we wait for the rockbox service to start
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28369 a1c6a512-1295-4272-9138-f99709370657
2010-10-28 09:19:15 +00:00
Jonathan Gordon
783421ddd7
Make sure the view always has focus and can be focused in touch mode so the front buttons work after a touch
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28348 a1c6a512-1295-4272-9138-f99709370657
2010-10-24 13:34:28 +00:00
Thomas Martitz
51c91c599b
Adhere to the 80-char line width limit.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28067 a1c6a512-1295-4272-9138-f99709370657
2010-09-12 20:10:05 +00:00
Thomas Martitz
c98f5845f6
Redo r28059, minBufferSize() turned out a bit more unstable on my Legend. Now use the MAX() of the old buffer and minBufferSize()
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28066 a1c6a512-1295-4272-9138-f99709370657
2010-09-12 20:00:27 +00:00
Thomas Martitz
282adacb54
Code style changes in the java part (whitespaces and braces) to match Rockbox coding style.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28065 a1c6a512-1295-4272-9138-f99709370657
2010-09-12 19:56:13 +00:00
Thomas Martitz
54c838d2ae
The rockbox header got lost at some point.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28064 a1c6a512-1295-4272-9138-f99709370657
2010-09-12 17:48:25 +00:00
Thomas Martitz
6cf36810aa
Android: Use an explicit 8k buffer for unzipping libmisc.so to remove a warning in logcat.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28063 a1c6a512-1295-4272-9138-f99709370657
2010-09-12 17:46:54 +00:00
Thomas Martitz
cbbbe60dbf
Use getMinBufferSize instead of hardcoding a buffer size.
...
Seems to fix problems on Samsung Galaxy S, thanks to István Nagy.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28059 a1c6a512-1295-4272-9138-f99709370657
2010-09-12 09:42:21 +00:00
Thomas Martitz
f05cdc46f2
Android: don't compile powermgmt-sim.c
...
Instead implement a bit of battery monitoring. Currently it only fetches the battery level (in %) every 30s,
but it could do more like battery status, charger connected, voltage...
Theoretically, we could also exit/quit after some time of inactivity too
(perhaps not a bad idea since Rockbox puts a slight but still non-zero CPU load even if doing nothing).
Ironically, Rockbox is now the only way to get the exact battery level (at least I haven't found anything yet) on my phone :-)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27974 a1c6a512-1295-4272-9138-f99709370657
2010-09-01 23:36:15 +00:00
Maurus Cuelenaere
5068891477
Android port: simplify sending touch events from Java->C
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27833 a1c6a512-1295-4272-9138-f99709370657
2010-08-16 20:12:10 +00:00
Maurus Cuelenaere
934a5a5808
Android port: add support for hardware keys
...
* Forward Java KeyEvents to C layer and translate them to Rockbox BUTTON_*.
* Add a basic Android keymap
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27832 a1c6a512-1295-4272-9138-f99709370657
2010-08-16 20:12:06 +00:00
Maurus Cuelenaere
e726e53da6
Android port: use Arrays.fill() instead of a for-loop for clearing a byte array
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27831 a1c6a512-1295-4272-9138-f99709370657
2010-08-16 20:12:01 +00:00
Thomas Martitz
4a3e6dbe8f
A bit of cleanup.
...
Replace // with /* */ style comments
Cleanup copy&paste from the doc examples.
Don't pretend to handle exception we don't handle actually.
cleanup imports
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27754 a1c6a512-1295-4272-9138-f99709370657
2010-08-08 16:44:06 +00:00
Thomas Martitz
4aa3d01066
Run the pcm callback from a separate OS thread, that seems to make audio playback
...
much more reliable. Especially on the broken HTC phones. Now it recovers from
stuttering instead of simply stopping playback on my phone.
Previously it was run on the main/UI thread (the docs lie in that regard), which
I suspect happened to be blocked if it's in the background and tries to
get too much CPU.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27753 a1c6a512-1295-4272-9138-f99709370657
2010-08-08 15:53:02 +00:00
Thomas Martitz
8978b2bafa
Android port: The RockboxService introduction broke 1.5/1.6 compability. This should bring it back (heaviliy based on the example given in the Android docs).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27748 a1c6a512-1295-4272-9138-f99709370657
2010-08-07 22:29:54 +00:00
Thomas Martitz
ca4439ff65
Android port: handle incoming calls.
...
Stop explicitely if a call comes in, and resume playback (if it was playing before the call) upon hang up.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27746 a1c6a512-1295-4272-9138-f99709370657
2010-08-07 21:30:22 +00:00
Thomas Martitz
9dd48db22c
Remove faulty reference to inexistent resource.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27730 a1c6a512-1295-4272-9138-f99709370657
2010-08-05 22:34:24 +00:00
Thomas Martitz
bd9c0b21d6
A bit of work in the pcm driver. Should be a bit more efficient, but more importantly more dependable. Stopping playback now properly recovers if playback crashed for some reason (shouldn't happen of course).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27698 a1c6a512-1295-4272-9138-f99709370657
2010-08-04 18:34:32 +00:00
Thomas Martitz
546cd48504
Show/hide notification area icon when starting/stopping playback.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27694 a1c6a512-1295-4272-9138-f99709370657
2010-08-04 14:34:26 +00:00
Thomas Martitz
04dc00b7ca
Add a few forgotten files, Fix potential startup problem. Fix absolute touchscreen mode.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27693 a1c6a512-1295-4272-9138-f99709370657
2010-08-04 12:25:25 +00:00
Thomas Martitz
594110e962
Implement HAVE_LCD_ENABLE and lcd_update_rect(). When Rockbox runs in the background
...
this greatly reduces CPU load. lcd_update_rect shoves a bit as well.
CPU usage with Rockbox in background is between 3% (with a 200kbps vbr mp3) and 12% (320kbps cbr mp3), so it's low but still dependent on codecs and even particular files.
Driving a WPS with peakmeter, e.g. the builtin one, adds about 30% cpu usage.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27689 a1c6a512-1295-4272-9138-f99709370657
2010-08-04 01:03:25 +00:00
Thomas Martitz
f66a233bdb
Ignore screen orentiation changes and force portrait mode. We cannot handle it any time soon anyway.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27688 a1c6a512-1295-4272-9138-f99709370657
2010-08-03 23:23:33 +00:00
Thomas Martitz
9dd0158ffb
Run Rockbox as a service, which allows for music decoding&playback in the background,
...
the activity only attaches to the framebuffer for displaying it. An icon
in the notification area is displayed (it could be prettier I guess).
Note: Some HTC phones won't, includng mine, get enough CPU time to do background decoding
fluently, see: http://code.google.com/p/android/issues/detail?id=9663
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27686 a1c6a512-1295-4272-9138-f99709370657
2010-08-03 22:56:24 +00:00