Commit Graph
465 Commits
Author SHA1 Message Date
Jean-Baptiste Lab e7ea4941ea Add option to invert colours in notifications 2011-08-31 21:18:45 -05:00
David Beswick 91094a85ab Mandated Java 1.6 so that the @Override annotation can be used
with interface overrides.
2011-08-30 22:24:15 -05:00
Christopher Eby 76b6fe134d Add widget display mode without zoomed cover art
This changes the id for the zoomed mode, just for consistency. Since this
feature hasn't been released yet that should be ok.
2011-08-30 18:44:36 -05:00
Christopher Eby 339a9fcf85 Make media button play/pause pause immediately.
It provides a faster response and there isn't any reason not to---a double
click will restart playback.
2011-08-30 01:53:50 -05:00
Christopher Eby 69bbfbb255 Run playback activity song/state change methods on UI thread
This allows CoverView and song info views to be updated in one go, rather than
in multiple posts to the UI thread.
2011-08-30 01:35:18 -05:00
Christopher Eby cc1a5cb448 Handle notifications better
Don't update them when unecessary. Fix an edge case where the notification
wouldn't update from the paused to playing style.
2011-08-29 01:38:25 -05:00
Christopher Eby a4ea3089f6 Move media button registration into MediaButtonHandler; only register when media buttons are enabled 2011-08-29 01:37:41 -05:00
Christopher Eby fa63a36bbc Fix purge 2011-08-29 01:37:16 -05:00
Christopher Eby f0abd282cc Fix the long press fix
Hmm...
2011-08-29 01:37:07 -05:00
Christopher Eby 07c29406e2 Handle text alignment in TextView rather than the layout
This allows the alignment to be updated immediately instead of in the background
2011-08-29 01:36:51 -05:00
Christopher Eby 13e30746ed Restructure play/pause and song change to update UI immediately
PlaybackService methods return the new song or state immediately, the calling
Activity updates with the result, the rest of the work is done in the
background, and inactive activities update with the broadcast.

Previously, everything was done in the background and the UI did
not update until the work was done and the update was broadcast, which took
forever.
2011-08-29 01:36:37 -05:00
Christopher Eby 7336b69e08 Fix duration improvement again 2011-08-28 04:56:57 -05:00
Christopher Eby 3c76f4359f Fix duration improvement 2011-08-28 04:36:01 -05:00
Christopher Eby 6ea6688a27 Fix dpad navigation.
Call super and update CoverView immediately
2011-08-28 04:34:15 -05:00
David Beswick a2d8710ae8 Added ability to navigate songs by moving left and right on the dpad
when play controls are focused. Preference to come later.
2011-08-28 04:26:07 -05:00
Christopher Eby df570d507c Use song duration data from MediaStore
Allows the duration to be displayed before the song starts playing.

Also add a missing synchronized around a call to wait()
2011-08-28 04:18:16 -05:00
Christopher Eby b038af1ba2 Remove dead code 2011-08-28 03:29:10 -05:00
Christopher Eby 17ea717535 Update proguard.config 2011-08-28 03:28:35 -05:00
Christopher Eby 7bbe6184e9 Cleanup updateState()
Changes are mostly aesthetic. Was annoyed by the long conditionals.
2011-08-28 02:45:21 -05:00
Christopher Eby 83cdef201f Persist the visibility of the controls 2011-08-28 02:11:28 -05:00
Christopher Eby 33374c2ebd Add genre tab to library 2011-08-28 01:59:53 -05:00
Christopher Eby d1d875fd5f Refector library limiters 2011-08-28 00:08:57 -05:00
Christopher Eby 444b7f588b Optimize isSongAvailable() 2011-08-27 18:07:54 -05:00
Christopher Eby 13f80aaca4 Fix MediaUtils.shuffle
Was ignoring the first element of the list.
2011-08-27 16:08:35 -05:00
Christopher Eby 09cf5a8930 Handle CoverView long-presses better.
This treats them the same way as normal presses: they can be activated with up
to a small amount of movement.

Also executes scroll-reset code even when a press is detected. Before small
movements were not being reset.
2011-08-27 16:02:48 -05:00
Christopher Eby 0303cfb08f Add a new style for FullPlaybackActivity 2011-08-27 15:29:17 -05:00
Christopher Eby 6e3c8e7580 Fix cover scaling 2011-08-27 15:29:04 -05:00
Christopher Eby f65cb06978 Remove dead code 2011-08-25 00:15:10 -05:00
Christopher Eby f54be18e5b Call userActionTriggered() in the correct places 2011-08-25 00:10:59 -05:00
Christopher Eby 9224095dba More detailed time display in IdlePreference 2011-08-24 16:37:55 -05:00
Christopher Eby 025c6e20f8 Include all image resources in app 2011-08-24 10:27:28 -05:00
Christopher Eby c69f74a482 Rename Song Selector/Choose Songs to Library and change icon 2011-08-24 10:19:59 -05:00
Christopher Eby 17e8e400e4 Add option to disable cover art 2011-08-24 00:53:01 -05:00
Christopher Eby a9db1f55fb Use Froyo registerMediaButtonReceiver API 2011-08-24 00:52:51 -05:00
Christopher Eby a8bf7536ac Handle media keys in PlaybackActivities
Avoids the overhead of the broadcast when the activity has focus
2011-08-23 22:47:28 -05:00
Christopher Eby e5d3053a44 Remove programming-created media button receiver
This was an optimization (since manifest-defined receivers have to be
constructed again for each broadcast) that doesn't seem to help all that much.
I mainly removed it because it makes using the Froyo registerMediaButton API
harder (impossible?) to use.

Also change receiver priority to 999, since apparently >=1000 should only be
used by the system.
2011-08-23 22:38:05 -05:00
Christopher Eby 7715ec7dde Implement new randomization method to reduce repetition
randomSong() now draws from a shuffle list of all songs in the library. Each
time the end of this list is reached, it is shuffled. The list is updated when
the library changes.
2011-08-23 16:55:31 -05:00
Christopher Eby d456821891 Move media content observer into ContextApplication 2011-08-23 16:55:23 -05:00
David Beswick 3fd61bcafe Playback is stopped immediately on song change before further
processing, so the user has feedback on their input. Some operations in
this method can cause a delay on my phone.
2011-08-23 16:55:17 -05:00
Christopher Eby b8f3e3819f Handle corrupt/missing songs better
The old behavior would try to skip the song automatically and not tell the user
what was happening. The new behavior shows a Toast and stops playback.
2011-08-23 16:55:11 -05:00
David Beswick bd0596cd9e Fixed null pointer exception when no songs are present in the
device's library.
2011-08-23 16:54:55 -05:00
David Beswick fc56df74a4 Fixed null pointer exception when no songs are present in the
device's library.
2011-08-20 00:06:03 -05:00
Christopher Eby cce204e727 Use AUDIO_BECOMING_NOISY event; remove headset only option
The AUDIO_BECOMING_NOISY intent seems to be broadcast before the
HEADSET_PLUG intent. In some cases, the HEADSET_PLUG intent fires so
late that audio starts playing through the speaker..
AUDIO_BECOMING_NOISY also handles Bluetooth.

The headset only feature was useful to prevent accidental "noisy" playback,
however it is cumbersome to implement with the Android audio API being the mess
that it is. Thus I've removed it.
2011-08-19 03:01:12 -05:00
Christopher Eby 2f69afc529 Update Android target version to 10 2011-08-19 02:35:29 -05:00
Christopher Eby 199a46a139 Switch to MIT license 2011-08-19 01:28:15 -05:00
Christopher Eby 4169dd05b3 Version 0.1 build 16 2011-01-11 17:06:15 -06:00
Christopher Eby 587dff0a75 Don't crash in CoverView with song ids of -1 2010-07-31 17:14:53 -05:00
Christopher Eby 1423ce773c Increase shadow radius in widget 2010-07-25 22:06:01 -05:00
Christopher Eby 2a1361b626 Add a new action for notification click: skip to next song 2010-07-25 17:00:51 -05:00
Christopher Eby 332d585961 Populate the widget ImageView initially 2010-07-25 16:22:17 -05:00