aboutsummaryrefslogtreecommitdiff
path: root/subsonic-android/res
diff options
context:
space:
mode:
Diffstat (limited to 'subsonic-android/res')
-rw-r--r--subsonic-android/res/anim/push_down_in.xml22
-rw-r--r--subsonic-android/res/anim/push_down_out.xml22
-rw-r--r--subsonic-android/res/anim/push_up_in.xml22
-rw-r--r--subsonic-android/res/anim/push_up_out.xml22
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/action_play_all.pngbin0 -> 1340 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/action_refresh.pngbin0 -> 2860 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/action_search.pngbin0 -> 2291 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/action_shuffle.pngbin0 -> 3411 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/actionbar_button_normal.9.pngbin0 -> 208 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/album_art_background.pngbin0 -> 9287 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/appwidget_bg.9.pngbin0 -> 2909 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/appwidget_divider.9.pngbin0 -> 2806 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_c.9.pngbin0 -> 221 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_l.9.pngbin0 -> 400 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_r.9.pngbin0 -> 423 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_c.9.pngbin0 -> 223 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_l.9.pngbin0 -> 408 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_r.9.pngbin0 -> 419 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_next.pngbin0 -> 489 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_pause.pngbin0 -> 232 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_play.pngbin0 -> 344 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_previous.pngbin0 -> 666 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_menu_exit.pngbin0 -> 3820 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_menu_help.pngbin0 -> 3468 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_menu_remove_all.pngbin0 -> 2546 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_menu_save.pngbin0 -> 1899 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_menu_screen_on_off.pngbin0 -> 1497 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_menu_settings.pngbin0 -> 3812 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/ic_menu_shuffle.pngbin0 -> 4445 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/launch.pngbin0 -> 5436 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/list_item_artist.9.pngbin0 -> 2505 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/list_item_playlist.9.pngbin0 -> 2505 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/main_exit.pngbin0 -> 4532 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/main_header_icon.pngbin0 -> 5356 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/main_help.pngbin0 -> 4123 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/main_select_server.pngbin0 -> 4458 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/main_settings.pngbin0 -> 3401 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/main_shuffle.pngbin0 -> 4445 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_backward_normal.pngbin0 -> 10535 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_backward_pressed.pngbin0 -> 11104 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_forward_normal.pngbin0 -> 10559 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_forward_pressed.pngbin0 -> 11099 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_pause_normal.pngbin0 -> 17952 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_pause_pressed.pngbin0 -> 20352 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_repeat_all.pngbin0 -> 1428 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_repeat_off.pngbin0 -> 1552 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_repeat_single.pngbin0 -> 1889 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_shuffle_normal.pngbin0 -> 1775 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_shuffle_pressed.pngbin0 -> 3704 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_start_normal.pngbin0 -> 18382 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_start_pressed.pngbin0 -> 20804 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_stop_normal.pngbin0 -> 16316 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_stop_pressed.pngbin0 -> 18653 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_toggle_list_normal.pngbin0 -> 636 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/media_toggle_list_pressed.pngbin0 -> 3383 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/menu_browse.pngbin0 -> 4007 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/menu_home.pngbin0 -> 3259 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/menu_now_playing.pngbin0 -> 3192 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/menu_playlists.pngbin0 -> 997 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/menu_search.pngbin0 -> 3808 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/menubar_button_disabled.9.pngbin0 -> 266 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/menubar_button_normal.9.pngbin0 -> 234 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/menubar_button_pressed.9.pngbin0 -> 312 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/refresh.pngbin0 -> 3585 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/search.pngbin0 -> 2940 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/select_album_play_all_normal.pngbin0 -> 5059 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/select_album_play_all_pressed.pngbin0 -> 4962 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/select_artist_folder.pngbin0 -> 4458 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/stat_notify_playing.pngbin0 -> 716 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/unknown_album.pngbin0 -> 3059 bytes
-rw-r--r--subsonic-android/res/drawable-hdpi-v4/unknown_album_large.pngbin0 -> 48194 bytes
-rw-r--r--subsonic-android/res/drawable/action_play_all.pngbin0 -> 3475 bytes
-rw-r--r--subsonic-android/res/drawable/action_refresh.pngbin0 -> 4282 bytes
-rw-r--r--subsonic-android/res/drawable/action_search.pngbin0 -> 4098 bytes
-rw-r--r--subsonic-android/res/drawable/action_shuffle.pngbin0 -> 5044 bytes
-rw-r--r--subsonic-android/res/drawable/actionbar_button.xml18
-rw-r--r--subsonic-android/res/drawable/actionbar_button_normal.9.pngbin0 -> 208 bytes
-rw-r--r--subsonic-android/res/drawable/album_art_background.pngbin0 -> 9287 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_art_default.pngbin0 -> 3711 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_art_unknown.pngbin0 -> 3711 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_bg.9.pngbin0 -> 1784 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_button_background.9.pngbin0 -> 174 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_button_background_r.9.pngbin0 -> 638 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_button_center.xml27
-rw-r--r--subsonic-android/res/drawable/appwidget_button_left.xml27
-rw-r--r--subsonic-android/res/drawable/appwidget_button_right.xml27
-rw-r--r--subsonic-android/res/drawable/appwidget_divider.9.pngbin0 -> 2806 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_divider_horizontal.9.pngbin0 -> 182 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_divider_vertical.pngbin0 -> 112 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_inner_focus_c.9.pngbin0 -> 212 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_inner_focus_l.9.pngbin0 -> 325 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_inner_focus_r.9.pngbin0 -> 324 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_inner_press_c.9.pngbin0 -> 212 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_inner_press_l.9.pngbin0 -> 335 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_inner_press_r.9.pngbin0 -> 330 bytes
-rw-r--r--subsonic-android/res/drawable/appwidget_overlay.pngbin0 -> 118 bytes
-rw-r--r--subsonic-android/res/drawable/downloaded.pngbin0 -> 799 bytes
-rw-r--r--subsonic-android/res/drawable/downloading.pngbin0 -> 457 bytes
-rw-r--r--subsonic-android/res/drawable/ic_appwidget_music_next.pngbin0 -> 311 bytes
-rw-r--r--subsonic-android/res/drawable/ic_appwidget_music_pause.pngbin0 -> 180 bytes
-rw-r--r--subsonic-android/res/drawable/ic_appwidget_music_play.pngbin0 -> 317 bytes
-rw-r--r--subsonic-android/res/drawable/ic_appwidget_music_previous.pngbin0 -> 412 bytes
-rw-r--r--subsonic-android/res/drawable/ic_menu_exit.pngbin0 -> 5689 bytes
-rw-r--r--subsonic-android/res/drawable/ic_menu_help.pngbin0 -> 5250 bytes
-rw-r--r--subsonic-android/res/drawable/ic_menu_remove_all.pngbin0 -> 4375 bytes
-rw-r--r--subsonic-android/res/drawable/ic_menu_save.pngbin0 -> 1140 bytes
-rw-r--r--subsonic-android/res/drawable/ic_menu_screen_on_off.pngbin0 -> 982 bytes
-rw-r--r--subsonic-android/res/drawable/ic_menu_settings.pngbin0 -> 5455 bytes
-rw-r--r--subsonic-android/res/drawable/ic_menu_shuffle.pngbin0 -> 6130 bytes
-rw-r--r--subsonic-android/res/drawable/launch.pngbin0 -> 3073 bytes
-rw-r--r--subsonic-android/res/drawable/list_item_artist.9.pngbin0 -> 1167 bytes
-rw-r--r--subsonic-android/res/drawable/list_item_playlist.9.pngbin0 -> 1167 bytes
-rw-r--r--subsonic-android/res/drawable/main_exit.pngbin0 -> 5185 bytes
-rw-r--r--subsonic-android/res/drawable/main_header_icon.pngbin0 -> 3052 bytes
-rw-r--r--subsonic-android/res/drawable/main_help.pngbin0 -> 5166 bytes
-rw-r--r--subsonic-android/res/drawable/main_select_server.pngbin0 -> 5223 bytes
-rw-r--r--subsonic-android/res/drawable/main_settings.pngbin0 -> 2315 bytes
-rw-r--r--subsonic-android/res/drawable/main_shuffle.pngbin0 -> 2384 bytes
-rw-r--r--subsonic-android/res/drawable/media_backward.xml5
-rw-r--r--subsonic-android/res/drawable/media_backward_normal.pngbin0 -> 6601 bytes
-rw-r--r--subsonic-android/res/drawable/media_backward_pressed.pngbin0 -> 7533 bytes
-rw-r--r--subsonic-android/res/drawable/media_forward.xml5
-rw-r--r--subsonic-android/res/drawable/media_forward_normal.pngbin0 -> 6525 bytes
-rw-r--r--subsonic-android/res/drawable/media_forward_pressed.pngbin0 -> 7452 bytes
-rw-r--r--subsonic-android/res/drawable/media_pause.xml5
-rw-r--r--subsonic-android/res/drawable/media_pause_normal.pngbin0 -> 10847 bytes
-rw-r--r--subsonic-android/res/drawable/media_pause_pressed.pngbin0 -> 11110 bytes
-rw-r--r--subsonic-android/res/drawable/media_repeat_all.pngbin0 -> 933 bytes
-rw-r--r--subsonic-android/res/drawable/media_repeat_off.pngbin0 -> 976 bytes
-rw-r--r--subsonic-android/res/drawable/media_repeat_single.pngbin0 -> 1276 bytes
-rw-r--r--subsonic-android/res/drawable/media_shuffle.xml5
-rw-r--r--subsonic-android/res/drawable/media_shuffle_normal.pngbin0 -> 1264 bytes
-rw-r--r--subsonic-android/res/drawable/media_shuffle_pressed.pngbin0 -> 2101 bytes
-rw-r--r--subsonic-android/res/drawable/media_start.xml5
-rw-r--r--subsonic-android/res/drawable/media_start_normal.pngbin0 -> 10958 bytes
-rw-r--r--subsonic-android/res/drawable/media_start_pressed.pngbin0 -> 11391 bytes
-rw-r--r--subsonic-android/res/drawable/media_stop.xml5
-rw-r--r--subsonic-android/res/drawable/media_stop_normal.pngbin0 -> 10079 bytes
-rw-r--r--subsonic-android/res/drawable/media_stop_pressed.pngbin0 -> 10468 bytes
-rw-r--r--subsonic-android/res/drawable/media_toggle_list.xml5
-rw-r--r--subsonic-android/res/drawable/media_toggle_list_normal.pngbin0 -> 547 bytes
-rw-r--r--subsonic-android/res/drawable/media_toggle_list_pressed.pngbin0 -> 1923 bytes
-rw-r--r--subsonic-android/res/drawable/menu_browse.pngbin0 -> 2355 bytes
-rw-r--r--subsonic-android/res/drawable/menu_home.pngbin0 -> 2048 bytes
-rw-r--r--subsonic-android/res/drawable/menu_now_playing.pngbin0 -> 2078 bytes
-rw-r--r--subsonic-android/res/drawable/menu_playlists.pngbin0 -> 706 bytes
-rw-r--r--subsonic-android/res/drawable/menu_search.pngbin0 -> 5059 bytes
-rw-r--r--subsonic-android/res/drawable/menubar_button.xml14
-rw-r--r--subsonic-android/res/drawable/menubar_button_disabled.9.pngbin0 -> 266 bytes
-rw-r--r--subsonic-android/res/drawable/menubar_button_normal.9.pngbin0 -> 234 bytes
-rw-r--r--subsonic-android/res/drawable/menubar_button_pressed.9.pngbin0 -> 312 bytes
-rw-r--r--subsonic-android/res/drawable/refresh.pngbin0 -> 2296 bytes
-rw-r--r--subsonic-android/res/drawable/saved.pngbin0 -> 838 bytes
-rw-r--r--subsonic-android/res/drawable/search.pngbin0 -> 1390 bytes
-rw-r--r--subsonic-android/res/drawable/select_album_play_all.xml5
-rw-r--r--subsonic-android/res/drawable/select_album_play_all_normal.pngbin0 -> 2962 bytes
-rw-r--r--subsonic-android/res/drawable/select_album_play_all_pressed.pngbin0 -> 2948 bytes
-rw-r--r--subsonic-android/res/drawable/select_artist_folder.pngbin0 -> 2289 bytes
-rw-r--r--subsonic-android/res/drawable/slider_knob.pngbin0 -> 1125 bytes
-rw-r--r--subsonic-android/res/drawable/stat_notify_playing.pngbin0 -> 771 bytes
-rw-r--r--subsonic-android/res/drawable/toast_frame.9.pngbin0 -> 2461 bytes
-rw-r--r--subsonic-android/res/drawable/unknown_album.pngbin0 -> 1819 bytes
-rw-r--r--subsonic-android/res/drawable/unknown_album_large.pngbin0 -> 33912 bytes
-rw-r--r--subsonic-android/res/layout-land/download.xml207
-rw-r--r--subsonic-android/res/layout-port/download.xml198
-rw-r--r--subsonic-android/res/layout/action_bar.xml71
-rw-r--r--subsonic-android/res/layout/album_list_item.xml47
-rw-r--r--subsonic-android/res/layout/appwidget.xml97
-rw-r--r--subsonic-android/res/layout/artist_list_item.xml12
-rw-r--r--subsonic-android/res/layout/button_bar.xml61
-rw-r--r--subsonic-android/res/layout/download_button_bar_flipper.xml67
-rw-r--r--subsonic-android/res/layout/download_playlist.xml24
-rw-r--r--subsonic-android/res/layout/download_slider.xml13
-rw-r--r--subsonic-android/res/layout/equalizer.xml47
-rw-r--r--subsonic-android/res/layout/equalizer_bar.xml39
-rw-r--r--subsonic-android/res/layout/help.xml42
-rw-r--r--subsonic-android/res/layout/jukebox_volume.xml29
-rw-r--r--subsonic-android/res/layout/lyrics.xml57
-rw-r--r--subsonic-android/res/layout/main.xml34
-rw-r--r--subsonic-android/res/layout/main_buttons.xml119
-rw-r--r--subsonic-android/res/layout/notification.xml31
-rw-r--r--subsonic-android/res/layout/play_video.xml11
-rw-r--r--subsonic-android/res/layout/playlist_list_item.xml12
-rw-r--r--subsonic-android/res/layout/progress.xml20
-rw-r--r--subsonic-android/res/layout/save_playlist.xml17
-rw-r--r--subsonic-android/res/layout/search.xml26
-rw-r--r--subsonic-android/res/layout/search_buttons.xml85
-rw-r--r--subsonic-android/res/layout/select_album.xml73
-rw-r--r--subsonic-android/res/layout/select_album_footer.xml48
-rw-r--r--subsonic-android/res/layout/select_album_header.xml69
-rw-r--r--subsonic-android/res/layout/select_artist.xml26
-rw-r--r--subsonic-android/res/layout/select_artist_header.xml38
-rw-r--r--subsonic-android/res/layout/select_playlist.xml34
-rw-r--r--subsonic-android/res/layout/song_list_item.xml76
-rw-r--r--subsonic-android/res/layout/tab_progress.xml24
-rw-r--r--subsonic-android/res/menu/main.xml22
-rw-r--r--subsonic-android/res/menu/nowplaying.xml27
-rw-r--r--subsonic-android/res/menu/nowplaying_context.xml34
-rw-r--r--subsonic-android/res/menu/select_album_context.xml19
-rw-r--r--subsonic-android/res/menu/select_artist_context.xml19
-rw-r--r--subsonic-android/res/menu/select_song_context.xml19
-rw-r--r--subsonic-android/res/values-fr/strings.xml208
-rw-r--r--subsonic-android/res/values-v11/colors.xml5
-rw-r--r--subsonic-android/res/values/arrays.xml86
-rw-r--r--subsonic-android/res/values/colors.xml13
-rw-r--r--subsonic-android/res/values/strings.xml242
-rw-r--r--subsonic-android/res/values/styles.xml14
-rw-r--r--subsonic-android/res/xml/appwidget_info.xml6
-rw-r--r--subsonic-android/res/xml/searchable.xml9
-rw-r--r--subsonic-android/res/xml/settings.xml200
210 files changed, 2918 insertions, 0 deletions
diff --git a/subsonic-android/res/anim/push_down_in.xml b/subsonic-android/res/anim/push_down_in.xml
new file mode 100644
index 00000000..6ab9a047
--- /dev/null
+++ b/subsonic-android/res/anim/push_down_in.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2007 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android">
+ <translate android:fromYDelta="-100%p" android:toYDelta="0"
+ android:duration="@android:integer/config_longAnimTime"/>
+ <alpha android:fromAlpha="0.0" android:toAlpha="1.0"
+ android:duration="@android:integer/config_longAnimTime" />
+</set>
diff --git a/subsonic-android/res/anim/push_down_out.xml b/subsonic-android/res/anim/push_down_out.xml
new file mode 100644
index 00000000..ce36458a
--- /dev/null
+++ b/subsonic-android/res/anim/push_down_out.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2007 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android">
+ <translate android:fromYDelta="0" android:toYDelta="100%p"
+ android:duration="@android:integer/config_longAnimTime"/>
+ <alpha android:fromAlpha="1.0" android:toAlpha="0.0"
+ android:duration="@android:integer/config_longAnimTime" />
+</set>
diff --git a/subsonic-android/res/anim/push_up_in.xml b/subsonic-android/res/anim/push_up_in.xml
new file mode 100644
index 00000000..6ef582c4
--- /dev/null
+++ b/subsonic-android/res/anim/push_up_in.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2007 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android">
+ <translate android:fromYDelta="100%p" android:toYDelta="0"
+ android:duration="@android:integer/config_longAnimTime"/>
+ <alpha android:fromAlpha="0.0" android:toAlpha="1.0"
+ android:duration="@android:integer/config_longAnimTime" />
+</set>
diff --git a/subsonic-android/res/anim/push_up_out.xml b/subsonic-android/res/anim/push_up_out.xml
new file mode 100644
index 00000000..2b267d59
--- /dev/null
+++ b/subsonic-android/res/anim/push_up_out.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2007 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android">
+ <translate android:fromYDelta="0" android:toYDelta="-100%p"
+ android:duration="@android:integer/config_longAnimTime"/>
+ <alpha android:fromAlpha="1.0" android:toAlpha="0.0"
+ android:duration="@android:integer/config_longAnimTime" />
+</set>
diff --git a/subsonic-android/res/drawable-hdpi-v4/action_play_all.png b/subsonic-android/res/drawable-hdpi-v4/action_play_all.png
new file mode 100644
index 00000000..ff61f00d
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/action_play_all.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/action_refresh.png b/subsonic-android/res/drawable-hdpi-v4/action_refresh.png
new file mode 100644
index 00000000..e922c3f3
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/action_refresh.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/action_search.png b/subsonic-android/res/drawable-hdpi-v4/action_search.png
new file mode 100644
index 00000000..83933141
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/action_search.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/action_shuffle.png b/subsonic-android/res/drawable-hdpi-v4/action_shuffle.png
new file mode 100644
index 00000000..df145309
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/action_shuffle.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/actionbar_button_normal.9.png b/subsonic-android/res/drawable-hdpi-v4/actionbar_button_normal.9.png
new file mode 100644
index 00000000..385f751c
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/actionbar_button_normal.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/album_art_background.png b/subsonic-android/res/drawable-hdpi-v4/album_art_background.png
new file mode 100644
index 00000000..f0757695
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/album_art_background.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/appwidget_bg.9.png b/subsonic-android/res/drawable-hdpi-v4/appwidget_bg.9.png
new file mode 100644
index 00000000..3b29eae7
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/appwidget_bg.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/appwidget_divider.9.png b/subsonic-android/res/drawable-hdpi-v4/appwidget_divider.9.png
new file mode 100644
index 00000000..3445e842
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/appwidget_divider.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_c.9.png b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_c.9.png
new file mode 100644
index 00000000..a949bd2c
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_c.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_l.9.png b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_l.9.png
new file mode 100644
index 00000000..4aaca6c5
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_l.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_r.9.png b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_r.9.png
new file mode 100644
index 00000000..1fc0f900
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_focus_r.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_c.9.png b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_c.9.png
new file mode 100644
index 00000000..ca6f16cd
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_c.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_l.9.png b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_l.9.png
new file mode 100644
index 00000000..642eb3d3
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_l.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_r.9.png b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_r.9.png
new file mode 100644
index 00000000..5e1f70a3
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/appwidget_inner_press_r.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_next.png b/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_next.png
new file mode 100644
index 00000000..99d28766
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_next.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_pause.png b/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_pause.png
new file mode 100644
index 00000000..a05a8c50
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_pause.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_play.png b/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_play.png
new file mode 100644
index 00000000..a754b920
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_play.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_previous.png b/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_previous.png
new file mode 100644
index 00000000..7fb3921b
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_appwidget_music_previous.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_menu_exit.png b/subsonic-android/res/drawable-hdpi-v4/ic_menu_exit.png
new file mode 100644
index 00000000..28cad85e
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_menu_exit.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_menu_help.png b/subsonic-android/res/drawable-hdpi-v4/ic_menu_help.png
new file mode 100644
index 00000000..7e14e95d
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_menu_help.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_menu_remove_all.png b/subsonic-android/res/drawable-hdpi-v4/ic_menu_remove_all.png
new file mode 100644
index 00000000..112196be
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_menu_remove_all.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_menu_save.png b/subsonic-android/res/drawable-hdpi-v4/ic_menu_save.png
new file mode 100644
index 00000000..34f6e01a
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_menu_save.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_menu_screen_on_off.png b/subsonic-android/res/drawable-hdpi-v4/ic_menu_screen_on_off.png
new file mode 100644
index 00000000..db9235fc
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_menu_screen_on_off.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_menu_settings.png b/subsonic-android/res/drawable-hdpi-v4/ic_menu_settings.png
new file mode 100644
index 00000000..2ffcec52
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_menu_settings.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/ic_menu_shuffle.png b/subsonic-android/res/drawable-hdpi-v4/ic_menu_shuffle.png
new file mode 100644
index 00000000..22ee1d50
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/ic_menu_shuffle.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/launch.png b/subsonic-android/res/drawable-hdpi-v4/launch.png
new file mode 100644
index 00000000..10693360
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/launch.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/list_item_artist.9.png b/subsonic-android/res/drawable-hdpi-v4/list_item_artist.9.png
new file mode 100644
index 00000000..7bddbcef
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/list_item_artist.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/list_item_playlist.9.png b/subsonic-android/res/drawable-hdpi-v4/list_item_playlist.9.png
new file mode 100644
index 00000000..7bddbcef
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/list_item_playlist.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/main_exit.png b/subsonic-android/res/drawable-hdpi-v4/main_exit.png
new file mode 100644
index 00000000..9a8b2a5e
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/main_exit.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/main_header_icon.png b/subsonic-android/res/drawable-hdpi-v4/main_header_icon.png
new file mode 100644
index 00000000..4252ba5b
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/main_header_icon.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/main_help.png b/subsonic-android/res/drawable-hdpi-v4/main_help.png
new file mode 100644
index 00000000..cb063b00
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/main_help.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/main_select_server.png b/subsonic-android/res/drawable-hdpi-v4/main_select_server.png
new file mode 100644
index 00000000..ccecc1d9
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/main_select_server.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/main_settings.png b/subsonic-android/res/drawable-hdpi-v4/main_settings.png
new file mode 100644
index 00000000..81bca4ae
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/main_settings.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/main_shuffle.png b/subsonic-android/res/drawable-hdpi-v4/main_shuffle.png
new file mode 100644
index 00000000..22ee1d50
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/main_shuffle.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_backward_normal.png b/subsonic-android/res/drawable-hdpi-v4/media_backward_normal.png
new file mode 100644
index 00000000..d2e44f1f
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_backward_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_backward_pressed.png b/subsonic-android/res/drawable-hdpi-v4/media_backward_pressed.png
new file mode 100644
index 00000000..1ab22f24
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_backward_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_forward_normal.png b/subsonic-android/res/drawable-hdpi-v4/media_forward_normal.png
new file mode 100644
index 00000000..2b4a2eee
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_forward_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_forward_pressed.png b/subsonic-android/res/drawable-hdpi-v4/media_forward_pressed.png
new file mode 100644
index 00000000..a6cd62a7
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_forward_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_pause_normal.png b/subsonic-android/res/drawable-hdpi-v4/media_pause_normal.png
new file mode 100644
index 00000000..c1eefc5b
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_pause_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_pause_pressed.png b/subsonic-android/res/drawable-hdpi-v4/media_pause_pressed.png
new file mode 100644
index 00000000..f4de9fbd
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_pause_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_repeat_all.png b/subsonic-android/res/drawable-hdpi-v4/media_repeat_all.png
new file mode 100644
index 00000000..f8012f9f
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_repeat_all.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_repeat_off.png b/subsonic-android/res/drawable-hdpi-v4/media_repeat_off.png
new file mode 100644
index 00000000..caf2cdfb
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_repeat_off.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_repeat_single.png b/subsonic-android/res/drawable-hdpi-v4/media_repeat_single.png
new file mode 100644
index 00000000..99d534cb
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_repeat_single.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_shuffle_normal.png b/subsonic-android/res/drawable-hdpi-v4/media_shuffle_normal.png
new file mode 100644
index 00000000..18e69dea
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_shuffle_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_shuffle_pressed.png b/subsonic-android/res/drawable-hdpi-v4/media_shuffle_pressed.png
new file mode 100644
index 00000000..4e2e77a2
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_shuffle_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_start_normal.png b/subsonic-android/res/drawable-hdpi-v4/media_start_normal.png
new file mode 100644
index 00000000..f987b1c2
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_start_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_start_pressed.png b/subsonic-android/res/drawable-hdpi-v4/media_start_pressed.png
new file mode 100644
index 00000000..97edb4ab
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_start_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_stop_normal.png b/subsonic-android/res/drawable-hdpi-v4/media_stop_normal.png
new file mode 100644
index 00000000..6f03a5d3
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_stop_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_stop_pressed.png b/subsonic-android/res/drawable-hdpi-v4/media_stop_pressed.png
new file mode 100644
index 00000000..7d76ec08
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_stop_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_toggle_list_normal.png b/subsonic-android/res/drawable-hdpi-v4/media_toggle_list_normal.png
new file mode 100644
index 00000000..05941b3d
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_toggle_list_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/media_toggle_list_pressed.png b/subsonic-android/res/drawable-hdpi-v4/media_toggle_list_pressed.png
new file mode 100644
index 00000000..f1019360
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/media_toggle_list_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/menu_browse.png b/subsonic-android/res/drawable-hdpi-v4/menu_browse.png
new file mode 100644
index 00000000..70a59154
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/menu_browse.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/menu_home.png b/subsonic-android/res/drawable-hdpi-v4/menu_home.png
new file mode 100644
index 00000000..35cb52aa
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/menu_home.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/menu_now_playing.png b/subsonic-android/res/drawable-hdpi-v4/menu_now_playing.png
new file mode 100644
index 00000000..10af07fe
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/menu_now_playing.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/menu_playlists.png b/subsonic-android/res/drawable-hdpi-v4/menu_playlists.png
new file mode 100644
index 00000000..59345d5b
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/menu_playlists.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/menu_search.png b/subsonic-android/res/drawable-hdpi-v4/menu_search.png
new file mode 100644
index 00000000..f78234e4
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/menu_search.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/menubar_button_disabled.9.png b/subsonic-android/res/drawable-hdpi-v4/menubar_button_disabled.9.png
new file mode 100644
index 00000000..94a48f7d
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/menubar_button_disabled.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/menubar_button_normal.9.png b/subsonic-android/res/drawable-hdpi-v4/menubar_button_normal.9.png
new file mode 100644
index 00000000..9ce38a61
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/menubar_button_normal.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/menubar_button_pressed.9.png b/subsonic-android/res/drawable-hdpi-v4/menubar_button_pressed.9.png
new file mode 100644
index 00000000..4dff0907
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/menubar_button_pressed.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/refresh.png b/subsonic-android/res/drawable-hdpi-v4/refresh.png
new file mode 100644
index 00000000..2f887c26
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/refresh.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/search.png b/subsonic-android/res/drawable-hdpi-v4/search.png
new file mode 100644
index 00000000..43d8c87e
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/search.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/select_album_play_all_normal.png b/subsonic-android/res/drawable-hdpi-v4/select_album_play_all_normal.png
new file mode 100644
index 00000000..bcf0efe6
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/select_album_play_all_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/select_album_play_all_pressed.png b/subsonic-android/res/drawable-hdpi-v4/select_album_play_all_pressed.png
new file mode 100644
index 00000000..31bbfff0
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/select_album_play_all_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/select_artist_folder.png b/subsonic-android/res/drawable-hdpi-v4/select_artist_folder.png
new file mode 100644
index 00000000..ccecc1d9
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/select_artist_folder.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/stat_notify_playing.png b/subsonic-android/res/drawable-hdpi-v4/stat_notify_playing.png
new file mode 100644
index 00000000..bfd3e6a5
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/stat_notify_playing.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/unknown_album.png b/subsonic-android/res/drawable-hdpi-v4/unknown_album.png
new file mode 100644
index 00000000..ba1e4e64
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/unknown_album.png
Binary files differ
diff --git a/subsonic-android/res/drawable-hdpi-v4/unknown_album_large.png b/subsonic-android/res/drawable-hdpi-v4/unknown_album_large.png
new file mode 100644
index 00000000..bd9c6cc9
--- /dev/null
+++ b/subsonic-android/res/drawable-hdpi-v4/unknown_album_large.png
Binary files differ
diff --git a/subsonic-android/res/drawable/action_play_all.png b/subsonic-android/res/drawable/action_play_all.png
new file mode 100644
index 00000000..dd718312
--- /dev/null
+++ b/subsonic-android/res/drawable/action_play_all.png
Binary files differ
diff --git a/subsonic-android/res/drawable/action_refresh.png b/subsonic-android/res/drawable/action_refresh.png
new file mode 100644
index 00000000..0aa88f5d
--- /dev/null
+++ b/subsonic-android/res/drawable/action_refresh.png
Binary files differ
diff --git a/subsonic-android/res/drawable/action_search.png b/subsonic-android/res/drawable/action_search.png
new file mode 100644
index 00000000..3fba5ec5
--- /dev/null
+++ b/subsonic-android/res/drawable/action_search.png
Binary files differ
diff --git a/subsonic-android/res/drawable/action_shuffle.png b/subsonic-android/res/drawable/action_shuffle.png
new file mode 100644
index 00000000..e1ed3177
--- /dev/null
+++ b/subsonic-android/res/drawable/action_shuffle.png
Binary files differ
diff --git a/subsonic-android/res/drawable/actionbar_button.xml b/subsonic-android/res/drawable/actionbar_button.xml
new file mode 100644
index 00000000..5445cdcb
--- /dev/null
+++ b/subsonic-android/res/drawable/actionbar_button.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item
+ android:state_pressed="true"
+ android:drawable="@drawable/menubar_button_pressed"
+ />
+
+ <item
+ android:state_focused="true"
+ android:drawable="@drawable/menubar_button_pressed"
+ />
+
+ <item
+ android:drawable="@drawable/actionbar_button_normal"
+ />
+
+</selector> \ No newline at end of file
diff --git a/subsonic-android/res/drawable/actionbar_button_normal.9.png b/subsonic-android/res/drawable/actionbar_button_normal.9.png
new file mode 100644
index 00000000..385f751c
--- /dev/null
+++ b/subsonic-android/res/drawable/actionbar_button_normal.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/album_art_background.png b/subsonic-android/res/drawable/album_art_background.png
new file mode 100644
index 00000000..f0757695
--- /dev/null
+++ b/subsonic-android/res/drawable/album_art_background.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_art_default.png b/subsonic-android/res/drawable/appwidget_art_default.png
new file mode 100644
index 00000000..5bd39cc2
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_art_default.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_art_unknown.png b/subsonic-android/res/drawable/appwidget_art_unknown.png
new file mode 100644
index 00000000..5bd39cc2
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_art_unknown.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_bg.9.png b/subsonic-android/res/drawable/appwidget_bg.9.png
new file mode 100644
index 00000000..afe41b67
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_bg.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_button_background.9.png b/subsonic-android/res/drawable/appwidget_button_background.9.png
new file mode 100644
index 00000000..b7d3b18f
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_button_background.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_button_background_r.9.png b/subsonic-android/res/drawable/appwidget_button_background_r.9.png
new file mode 100644
index 00000000..90e2cc82
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_button_background_r.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_button_center.xml b/subsonic-android/res/drawable/appwidget_button_center.xml
new file mode 100644
index 00000000..b6a3be4b
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_button_center.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item android:state_pressed="true"
+ android:drawable="@drawable/appwidget_overlay" />
+
+ <item android:state_focused="true" android:state_enabled="true"
+ android:state_window_focused="true"
+ android:drawable="@drawable/appwidget_overlay" />
+
+ <item android:drawable="@drawable/appwidget_button_background" />
+</selector>
diff --git a/subsonic-android/res/drawable/appwidget_button_left.xml b/subsonic-android/res/drawable/appwidget_button_left.xml
new file mode 100644
index 00000000..5bfa124c
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_button_left.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item android:state_pressed="true"
+ android:drawable="@drawable/appwidget_overlay" />
+
+ <item android:state_focused="true" android:state_enabled="true"
+ android:state_window_focused="true"
+ android:drawable="@drawable/appwidget_overlay" />
+
+ <item android:drawable="@android:color/transparent" />
+</selector>
diff --git a/subsonic-android/res/drawable/appwidget_button_right.xml b/subsonic-android/res/drawable/appwidget_button_right.xml
new file mode 100644
index 00000000..3d1181be
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_button_right.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item android:state_pressed="true"
+ android:drawable="@drawable/appwidget_overlay" />
+
+ <item android:state_focused="true" android:state_enabled="true"
+ android:state_window_focused="true"
+ android:drawable="@drawable/appwidget_overlay" />
+
+ <item android:drawable="@drawable/appwidget_button_background_r" />
+</selector>
diff --git a/subsonic-android/res/drawable/appwidget_divider.9.png b/subsonic-android/res/drawable/appwidget_divider.9.png
new file mode 100644
index 00000000..3445e842
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_divider.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_divider_horizontal.9.png b/subsonic-android/res/drawable/appwidget_divider_horizontal.9.png
new file mode 100644
index 00000000..e2e80af9
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_divider_horizontal.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_divider_vertical.png b/subsonic-android/res/drawable/appwidget_divider_vertical.png
new file mode 100644
index 00000000..efe466a6
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_divider_vertical.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_inner_focus_c.9.png b/subsonic-android/res/drawable/appwidget_inner_focus_c.9.png
new file mode 100644
index 00000000..1450e65b
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_inner_focus_c.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_inner_focus_l.9.png b/subsonic-android/res/drawable/appwidget_inner_focus_l.9.png
new file mode 100644
index 00000000..6e8f100e
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_inner_focus_l.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_inner_focus_r.9.png b/subsonic-android/res/drawable/appwidget_inner_focus_r.9.png
new file mode 100644
index 00000000..bc8757b8
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_inner_focus_r.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_inner_press_c.9.png b/subsonic-android/res/drawable/appwidget_inner_press_c.9.png
new file mode 100644
index 00000000..bd542bac
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_inner_press_c.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_inner_press_l.9.png b/subsonic-android/res/drawable/appwidget_inner_press_l.9.png
new file mode 100644
index 00000000..575ecf4e
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_inner_press_l.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_inner_press_r.9.png b/subsonic-android/res/drawable/appwidget_inner_press_r.9.png
new file mode 100644
index 00000000..79eaea35
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_inner_press_r.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/appwidget_overlay.png b/subsonic-android/res/drawable/appwidget_overlay.png
new file mode 100644
index 00000000..dfbbd3ec
--- /dev/null
+++ b/subsonic-android/res/drawable/appwidget_overlay.png
Binary files differ
diff --git a/subsonic-android/res/drawable/downloaded.png b/subsonic-android/res/drawable/downloaded.png
new file mode 100644
index 00000000..f854aaf4
--- /dev/null
+++ b/subsonic-android/res/drawable/downloaded.png
Binary files differ
diff --git a/subsonic-android/res/drawable/downloading.png b/subsonic-android/res/drawable/downloading.png
new file mode 100644
index 00000000..afff39a9
--- /dev/null
+++ b/subsonic-android/res/drawable/downloading.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_appwidget_music_next.png b/subsonic-android/res/drawable/ic_appwidget_music_next.png
new file mode 100644
index 00000000..abc8e471
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_appwidget_music_next.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_appwidget_music_pause.png b/subsonic-android/res/drawable/ic_appwidget_music_pause.png
new file mode 100644
index 00000000..25a2d387
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_appwidget_music_pause.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_appwidget_music_play.png b/subsonic-android/res/drawable/ic_appwidget_music_play.png
new file mode 100644
index 00000000..52b8e452
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_appwidget_music_play.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_appwidget_music_previous.png b/subsonic-android/res/drawable/ic_appwidget_music_previous.png
new file mode 100644
index 00000000..55db16f7
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_appwidget_music_previous.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_menu_exit.png b/subsonic-android/res/drawable/ic_menu_exit.png
new file mode 100644
index 00000000..847a1ed3
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_menu_exit.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_menu_help.png b/subsonic-android/res/drawable/ic_menu_help.png
new file mode 100644
index 00000000..9f11f434
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_menu_help.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_menu_remove_all.png b/subsonic-android/res/drawable/ic_menu_remove_all.png
new file mode 100644
index 00000000..1a9f440b
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_menu_remove_all.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_menu_save.png b/subsonic-android/res/drawable/ic_menu_save.png
new file mode 100644
index 00000000..c2c5433b
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_menu_save.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_menu_screen_on_off.png b/subsonic-android/res/drawable/ic_menu_screen_on_off.png
new file mode 100644
index 00000000..0cf15235
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_menu_screen_on_off.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_menu_settings.png b/subsonic-android/res/drawable/ic_menu_settings.png
new file mode 100644
index 00000000..48775c1e
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_menu_settings.png
Binary files differ
diff --git a/subsonic-android/res/drawable/ic_menu_shuffle.png b/subsonic-android/res/drawable/ic_menu_shuffle.png
new file mode 100644
index 00000000..2ba6c8c5
--- /dev/null
+++ b/subsonic-android/res/drawable/ic_menu_shuffle.png
Binary files differ
diff --git a/subsonic-android/res/drawable/launch.png b/subsonic-android/res/drawable/launch.png
new file mode 100644
index 00000000..b3befadf
--- /dev/null
+++ b/subsonic-android/res/drawable/launch.png
Binary files differ
diff --git a/subsonic-android/res/drawable/list_item_artist.9.png b/subsonic-android/res/drawable/list_item_artist.9.png
new file mode 100644
index 00000000..9967ecbd
--- /dev/null
+++ b/subsonic-android/res/drawable/list_item_artist.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/list_item_playlist.9.png b/subsonic-android/res/drawable/list_item_playlist.9.png
new file mode 100644
index 00000000..9967ecbd
--- /dev/null
+++ b/subsonic-android/res/drawable/list_item_playlist.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/main_exit.png b/subsonic-android/res/drawable/main_exit.png
new file mode 100644
index 00000000..d385b7a6
--- /dev/null
+++ b/subsonic-android/res/drawable/main_exit.png
Binary files differ
diff --git a/subsonic-android/res/drawable/main_header_icon.png b/subsonic-android/res/drawable/main_header_icon.png
new file mode 100644
index 00000000..f4f3ce9e
--- /dev/null
+++ b/subsonic-android/res/drawable/main_header_icon.png
Binary files differ
diff --git a/subsonic-android/res/drawable/main_help.png b/subsonic-android/res/drawable/main_help.png
new file mode 100644
index 00000000..2c825473
--- /dev/null
+++ b/subsonic-android/res/drawable/main_help.png
Binary files differ
diff --git a/subsonic-android/res/drawable/main_select_server.png b/subsonic-android/res/drawable/main_select_server.png
new file mode 100644
index 00000000..b9fc5fa3
--- /dev/null
+++ b/subsonic-android/res/drawable/main_select_server.png
Binary files differ
diff --git a/subsonic-android/res/drawable/main_settings.png b/subsonic-android/res/drawable/main_settings.png
new file mode 100644
index 00000000..60dbff6d
--- /dev/null
+++ b/subsonic-android/res/drawable/main_settings.png
Binary files differ
diff --git a/subsonic-android/res/drawable/main_shuffle.png b/subsonic-android/res/drawable/main_shuffle.png
new file mode 100644
index 00000000..cb7009de
--- /dev/null
+++ b/subsonic-android/res/drawable/main_shuffle.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_backward.xml b/subsonic-android/res/drawable/media_backward.xml
new file mode 100644
index 00000000..22db3dd0
--- /dev/null
+++ b/subsonic-android/res/drawable/media_backward.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/media_backward_pressed" />
+ <item android:drawable="@drawable/media_backward_normal" />
+</selector> \ No newline at end of file
diff --git a/subsonic-android/res/drawable/media_backward_normal.png b/subsonic-android/res/drawable/media_backward_normal.png
new file mode 100644
index 00000000..e5372389
--- /dev/null
+++ b/subsonic-android/res/drawable/media_backward_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_backward_pressed.png b/subsonic-android/res/drawable/media_backward_pressed.png
new file mode 100644
index 00000000..82c421d0
--- /dev/null
+++ b/subsonic-android/res/drawable/media_backward_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_forward.xml b/subsonic-android/res/drawable/media_forward.xml
new file mode 100644
index 00000000..c6d1a0cd
--- /dev/null
+++ b/subsonic-android/res/drawable/media_forward.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/media_forward_pressed" />
+ <item android:drawable="@drawable/media_forward_normal" />
+</selector> \ No newline at end of file
diff --git a/subsonic-android/res/drawable/media_forward_normal.png b/subsonic-android/res/drawable/media_forward_normal.png
new file mode 100644
index 00000000..6cb93917
--- /dev/null
+++ b/subsonic-android/res/drawable/media_forward_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_forward_pressed.png b/subsonic-android/res/drawable/media_forward_pressed.png
new file mode 100644
index 00000000..42ffbe4c
--- /dev/null
+++ b/subsonic-android/res/drawable/media_forward_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_pause.xml b/subsonic-android/res/drawable/media_pause.xml
new file mode 100644
index 00000000..750ba3f1
--- /dev/null
+++ b/subsonic-android/res/drawable/media_pause.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/media_pause_pressed" />
+ <item android:drawable="@drawable/media_pause_normal" />
+</selector> \ No newline at end of file
diff --git a/subsonic-android/res/drawable/media_pause_normal.png b/subsonic-android/res/drawable/media_pause_normal.png
new file mode 100644
index 00000000..4fc03eb2
--- /dev/null
+++ b/subsonic-android/res/drawable/media_pause_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_pause_pressed.png b/subsonic-android/res/drawable/media_pause_pressed.png
new file mode 100644
index 00000000..dd9ae605
--- /dev/null
+++ b/subsonic-android/res/drawable/media_pause_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_repeat_all.png b/subsonic-android/res/drawable/media_repeat_all.png
new file mode 100644
index 00000000..6a5d4e41
--- /dev/null
+++ b/subsonic-android/res/drawable/media_repeat_all.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_repeat_off.png b/subsonic-android/res/drawable/media_repeat_off.png
new file mode 100644
index 00000000..a4417248
--- /dev/null
+++ b/subsonic-android/res/drawable/media_repeat_off.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_repeat_single.png b/subsonic-android/res/drawable/media_repeat_single.png
new file mode 100644
index 00000000..3dec6958
--- /dev/null
+++ b/subsonic-android/res/drawable/media_repeat_single.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_shuffle.xml b/subsonic-android/res/drawable/media_shuffle.xml
new file mode 100644
index 00000000..55d744cc
--- /dev/null
+++ b/subsonic-android/res/drawable/media_shuffle.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/media_shuffle_pressed" />
+ <item android:drawable="@drawable/media_shuffle_normal" />
+</selector> \ No newline at end of file
diff --git a/subsonic-android/res/drawable/media_shuffle_normal.png b/subsonic-android/res/drawable/media_shuffle_normal.png
new file mode 100644
index 00000000..dc6b8c8c
--- /dev/null
+++ b/subsonic-android/res/drawable/media_shuffle_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_shuffle_pressed.png b/subsonic-android/res/drawable/media_shuffle_pressed.png
new file mode 100644
index 00000000..fb2639c8
--- /dev/null
+++ b/subsonic-android/res/drawable/media_shuffle_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_start.xml b/subsonic-android/res/drawable/media_start.xml
new file mode 100644
index 00000000..57117df7
--- /dev/null
+++ b/subsonic-android/res/drawable/media_start.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/media_start_pressed" />
+ <item android:drawable="@drawable/media_start_normal" />
+</selector> \ No newline at end of file
diff --git a/subsonic-android/res/drawable/media_start_normal.png b/subsonic-android/res/drawable/media_start_normal.png
new file mode 100644
index 00000000..a3775d43
--- /dev/null
+++ b/subsonic-android/res/drawable/media_start_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_start_pressed.png b/subsonic-android/res/drawable/media_start_pressed.png
new file mode 100644
index 00000000..d7ace1ba
--- /dev/null
+++ b/subsonic-android/res/drawable/media_start_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_stop.xml b/subsonic-android/res/drawable/media_stop.xml
new file mode 100644
index 00000000..0cd2ff10
--- /dev/null
+++ b/subsonic-android/res/drawable/media_stop.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/media_stop_pressed" />
+ <item android:drawable="@drawable/media_stop_normal" />
+</selector> \ No newline at end of file
diff --git a/subsonic-android/res/drawable/media_stop_normal.png b/subsonic-android/res/drawable/media_stop_normal.png
new file mode 100644
index 00000000..120aecd0
--- /dev/null
+++ b/subsonic-android/res/drawable/media_stop_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_stop_pressed.png b/subsonic-android/res/drawable/media_stop_pressed.png
new file mode 100644
index 00000000..b590abe8
--- /dev/null
+++ b/subsonic-android/res/drawable/media_stop_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_toggle_list.xml b/subsonic-android/res/drawable/media_toggle_list.xml
new file mode 100644
index 00000000..350818e7
--- /dev/null
+++ b/subsonic-android/res/drawable/media_toggle_list.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/media_toggle_list_pressed" />
+ <item android:drawable="@drawable/media_toggle_list_normal" />
+</selector> \ No newline at end of file
diff --git a/subsonic-android/res/drawable/media_toggle_list_normal.png b/subsonic-android/res/drawable/media_toggle_list_normal.png
new file mode 100644
index 00000000..cc269b65
--- /dev/null
+++ b/subsonic-android/res/drawable/media_toggle_list_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable/media_toggle_list_pressed.png b/subsonic-android/res/drawable/media_toggle_list_pressed.png
new file mode 100644
index 00000000..97b9a413
--- /dev/null
+++ b/subsonic-android/res/drawable/media_toggle_list_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable/menu_browse.png b/subsonic-android/res/drawable/menu_browse.png
new file mode 100644
index 00000000..3f1de60d
--- /dev/null
+++ b/subsonic-android/res/drawable/menu_browse.png
Binary files differ
diff --git a/subsonic-android/res/drawable/menu_home.png b/subsonic-android/res/drawable/menu_home.png
new file mode 100644
index 00000000..34943f66
--- /dev/null
+++ b/subsonic-android/res/drawable/menu_home.png
Binary files differ
diff --git a/subsonic-android/res/drawable/menu_now_playing.png b/subsonic-android/res/drawable/menu_now_playing.png
new file mode 100644
index 00000000..22f203a8
--- /dev/null
+++ b/subsonic-android/res/drawable/menu_now_playing.png
Binary files differ
diff --git a/subsonic-android/res/drawable/menu_playlists.png b/subsonic-android/res/drawable/menu_playlists.png
new file mode 100644
index 00000000..c01733d9
--- /dev/null
+++ b/subsonic-android/res/drawable/menu_playlists.png
Binary files differ
diff --git a/subsonic-android/res/drawable/menu_search.png b/subsonic-android/res/drawable/menu_search.png
new file mode 100644
index 00000000..94446db9
--- /dev/null
+++ b/subsonic-android/res/drawable/menu_search.png
Binary files differ
diff --git a/subsonic-android/res/drawable/menubar_button.xml b/subsonic-android/res/drawable/menubar_button.xml
new file mode 100644
index 00000000..06c2c8e7
--- /dev/null
+++ b/subsonic-android/res/drawable/menubar_button.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ 
+ <item android:state_pressed="true"
+ android:drawable="@drawable/menubar_button_pressed"/>
+
+ <item android:state_enabled="true"
+ android:drawable="@drawable/menubar_button_normal"/>
+
+ <item android:drawable="@drawable/menubar_button_disabled"/>
+
+</selector>
+
+ \ No newline at end of file
diff --git a/subsonic-android/res/drawable/menubar_button_disabled.9.png b/subsonic-android/res/drawable/menubar_button_disabled.9.png
new file mode 100644
index 00000000..94a48f7d
--- /dev/null
+++ b/subsonic-android/res/drawable/menubar_button_disabled.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/menubar_button_normal.9.png b/subsonic-android/res/drawable/menubar_button_normal.9.png
new file mode 100644
index 00000000..9ce38a61
--- /dev/null
+++ b/subsonic-android/res/drawable/menubar_button_normal.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/menubar_button_pressed.9.png b/subsonic-android/res/drawable/menubar_button_pressed.9.png
new file mode 100644
index 00000000..4dff0907
--- /dev/null
+++ b/subsonic-android/res/drawable/menubar_button_pressed.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/refresh.png b/subsonic-android/res/drawable/refresh.png
new file mode 100644
index 00000000..3838ba07
--- /dev/null
+++ b/subsonic-android/res/drawable/refresh.png
Binary files differ
diff --git a/subsonic-android/res/drawable/saved.png b/subsonic-android/res/drawable/saved.png
new file mode 100644
index 00000000..6c7c276f
--- /dev/null
+++ b/subsonic-android/res/drawable/saved.png
Binary files differ
diff --git a/subsonic-android/res/drawable/search.png b/subsonic-android/res/drawable/search.png
new file mode 100644
index 00000000..3f8913e2
--- /dev/null
+++ b/subsonic-android/res/drawable/search.png
Binary files differ
diff --git a/subsonic-android/res/drawable/select_album_play_all.xml b/subsonic-android/res/drawable/select_album_play_all.xml
new file mode 100644
index 00000000..7e6a81ac
--- /dev/null
+++ b/subsonic-android/res/drawable/select_album_play_all.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/select_album_play_all_pressed" />
+ <item android:drawable="@drawable/select_album_play_all_normal" />
+</selector> \ No newline at end of file
diff --git a/subsonic-android/res/drawable/select_album_play_all_normal.png b/subsonic-android/res/drawable/select_album_play_all_normal.png
new file mode 100644
index 00000000..1ec33286
--- /dev/null
+++ b/subsonic-android/res/drawable/select_album_play_all_normal.png
Binary files differ
diff --git a/subsonic-android/res/drawable/select_album_play_all_pressed.png b/subsonic-android/res/drawable/select_album_play_all_pressed.png
new file mode 100644
index 00000000..c3a18e77
--- /dev/null
+++ b/subsonic-android/res/drawable/select_album_play_all_pressed.png
Binary files differ
diff --git a/subsonic-android/res/drawable/select_artist_folder.png b/subsonic-android/res/drawable/select_artist_folder.png
new file mode 100644
index 00000000..5ae85406
--- /dev/null
+++ b/subsonic-android/res/drawable/select_artist_folder.png
Binary files differ
diff --git a/subsonic-android/res/drawable/slider_knob.png b/subsonic-android/res/drawable/slider_knob.png
new file mode 100644
index 00000000..ae21a4f9
--- /dev/null
+++ b/subsonic-android/res/drawable/slider_knob.png
Binary files differ
diff --git a/subsonic-android/res/drawable/stat_notify_playing.png b/subsonic-android/res/drawable/stat_notify_playing.png
new file mode 100644
index 00000000..fd92c188
--- /dev/null
+++ b/subsonic-android/res/drawable/stat_notify_playing.png
Binary files differ
diff --git a/subsonic-android/res/drawable/toast_frame.9.png b/subsonic-android/res/drawable/toast_frame.9.png
new file mode 100644
index 00000000..8f5d8119
--- /dev/null
+++ b/subsonic-android/res/drawable/toast_frame.9.png
Binary files differ
diff --git a/subsonic-android/res/drawable/unknown_album.png b/subsonic-android/res/drawable/unknown_album.png
new file mode 100644
index 00000000..c6e77088
--- /dev/null
+++ b/subsonic-android/res/drawable/unknown_album.png
Binary files differ
diff --git a/subsonic-android/res/drawable/unknown_album_large.png b/subsonic-android/res/drawable/unknown_album_large.png
new file mode 100644
index 00000000..50455c5d
--- /dev/null
+++ b/subsonic-android/res/drawable/unknown_album_large.png
Binary files differ
diff --git a/subsonic-android/res/layout-land/download.xml b/subsonic-android/res/layout-land/download.xml
new file mode 100644
index 00000000..79dcc650
--- /dev/null
+++ b/subsonic-android/res/layout-land/download.xml
@@ -0,0 +1,207 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <RelativeLayout android:orientation="horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="0dip"
+ android:layout_weight="1">
+
+ <RelativeLayout
+ android:id="@+id/download_control_layout"
+ android:layout_width="wrap_content"
+ android:layout_height="fill_parent"
+ android:layout_alignParentRight="true"
+ android:background="@color/mediaControlBackground"
+ >
+
+ <LinearLayout
+ android:orientation="horizontal"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignParentTop="true"
+ android:layout_alignParentLeft="true">
+
+ <ImageButton
+ android:id="@+id/download_previous"
+ android:src="@drawable/media_backward"
+ android:background="@android:color/transparent"
+ android:padding="0dip"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"
+ />
+ <ImageButton
+ android:id="@+id/download_pause"
+ android:src="@drawable/media_pause"
+ android:background="@android:color/transparent"
+ android:padding="0dip"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"
+ />
+ <ImageButton
+ android:id="@+id/download_stop"
+ android:src="@drawable/media_stop"
+ android:background="@android:color/transparent"
+ android:padding="0dip"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"
+ />
+ <ImageButton
+ android:id="@+id/download_start"
+ android:src="@drawable/media_start"
+ android:background="@android:color/transparent"
+ android:padding="0dip"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"
+ />
+ <ImageButton
+ android:id="@+id/download_next"
+ android:src="@drawable/media_forward"
+ android:background="@android:color/transparent"
+ android:padding="0dip"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"
+ />
+ </LinearLayout>
+
+ <TextView
+ android:id="@+id/download_status"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignParentBottom="true"
+ android:layout_centerHorizontal="true"
+ android:layout_marginBottom="8dip"
+ android:singleLine="true"
+ android:ellipsize="end"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="#c0c0c0"/>
+
+ <TextView
+ android:id="@+id/download_song_title"
+ android:layout_width="150dip"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_horizontal"
+ android:layout_above="@+id/download_status"
+ android:layout_centerHorizontal="true"
+ android:layout_marginLeft="12dip"
+ android:layout_marginRight="12dip"
+ android:maxLines="2"
+ android:ellipsize="end"
+ android:gravity="center_horizontal"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:textColor="@color/mediaControlForeground"/>
+
+ <LinearLayout
+ android:orientation="horizontal"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerHorizontal="true"
+ android:layout_centerVertical="true">
+
+ <ImageButton
+ android:id="@+id/download_shuffle"
+ android:src="@drawable/media_shuffle"
+ android:background="@android:color/transparent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:padding="9dip"/>
+ <ImageButton
+ android:id="@+id/download_repeat"
+ android:src="@drawable/media_repeat_off"
+ android:background="@android:color/transparent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:padding="9dip"/>
+ <ImageButton
+ android:id="@+id/download_toggle_list"
+ android:src="@drawable/media_toggle_list"
+ android:background="@android:color/transparent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:padding="9dip"/>
+ <Button
+ android:id="@+id/download_equalizer"
+ android:text="EQ"
+ android:textStyle="bold"
+ android:textSize="22sp"
+ android:visibility="gone"
+ android:background="@android:color/transparent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="3dip"
+ android:padding="9dip"
+ />
+ <Button
+ android:id="@+id/download_jukebox"
+ android:text="RC"
+ android:textStyle="bold"
+ android:textSize="22sp"
+ android:background="@android:color/transparent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="3dip"
+ android:padding="9dip"
+ />
+ <Button
+ android:id="@+id/download_visualizer"
+ android:text="VIS"
+ android:textStyle="bold"
+ android:textSize="22sp"
+ android:visibility="gone"
+ android:background="@android:color/transparent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="3dip"
+ android:padding="9dip"
+ />
+ </LinearLayout>
+
+ </RelativeLayout>
+
+ <net.sourceforge.subsonic.androidapp.util.MyViewFlipper
+ android:id="@+id/download_playlist_flipper"
+ android:layout_width="wrap_content"
+ android:layout_height="fill_parent"
+ android:layout_alignParentLeft="true"
+ android:layout_toLeftOf="@+id/download_control_layout"
+ >
+
+ <FrameLayout
+ android:id="@+id/download_album_art_layout"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="@drawable/album_art_background">
+ <ImageView
+ android:id="@+id/download_album_art_image"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:layout_marginTop="20dip"
+ android:scaleType="fitCenter"/>
+ <LinearLayout
+ android:id="@+id/download_visualizer_view_layout"
+ android:layout_width="fill_parent"
+ android:layout_height="60dip"
+ android:layout_marginLeft="60dip"
+ android:layout_marginRight="60dip"
+ android:layout_gravity="bottom|center_horizontal"/>
+ </FrameLayout>
+
+ <include layout="@layout/download_playlist"/>
+
+ </net.sourceforge.subsonic.androidapp.util.MyViewFlipper>
+
+ </RelativeLayout>
+
+ <include layout="@layout/download_slider"/>
+
+ <include layout="@layout/download_button_bar_flipper"/>
+
+</LinearLayout>
diff --git a/subsonic-android/res/layout-port/download.xml b/subsonic-android/res/layout-port/download.xml
new file mode 100644
index 00000000..73e94eb9
--- /dev/null
+++ b/subsonic-android/res/layout-port/download.xml
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <net.sourceforge.subsonic.androidapp.util.MyViewFlipper
+ android:id="@+id/download_playlist_flipper"
+ android:layout_width="fill_parent"
+ android:layout_height="0dip"
+ android:layout_weight="1">
+
+ <RelativeLayout
+ android:id="@+id/download_album_art_layout"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:layout_weight="1"
+ android:background="@drawable/album_art_background">
+
+ <ImageButton
+ android:id="@+id/download_repeat"
+ android:src="@drawable/media_repeat_off"
+ android:background="@android:color/transparent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="top|right"
+ android:paddingTop="24dip"
+ android:paddingLeft="8dip"
+ android:paddingBottom="12dip"/>
+
+ <Button
+ android:id="@+id/download_jukebox"
+ android:text="RC"
+ android:textStyle="bold"
+ android:textSize="22sp"
+ android:background="@android:color/transparent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="top|right"
+ android:layout_below="@+id/download_repeat"
+ android:paddingTop="12dip"
+ android:paddingLeft="14dip"
+ android:paddingBottom="15dip"/>
+
+ <Button
+ android:id="@+id/download_equalizer"
+ android:text="EQ"
+ android:textStyle="bold"
+ android:textSize="22sp"
+ android:background="@android:color/transparent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="top|right"
+ android:layout_alignParentRight="true"
+ android:paddingTop="24dip"
+ android:paddingRight="16dip"
+ android:paddingBottom="12dip"/>
+
+ <Button
+ android:id="@+id/download_visualizer"
+ android:text="VIS"
+ android:textStyle="bold"
+ android:textSize="22sp"
+ android:background="@android:color/transparent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="top|right"
+ android:layout_alignParentRight="true"
+ android:layout_below="@+id/download_equalizer"
+ android:layout_alignBottom="@+id/download_jukebox"
+ android:paddingTop="12dip"
+ android:paddingRight="12dip"
+ android:paddingBottom="12dip"/>
+
+ <ImageView
+ android:id="@+id/download_album_art_image"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerHorizontal="true"
+ android:layout_alignParentTop="true"
+ android:layout_marginTop="24dip"
+ android:scaleType="fitCenter"/>
+
+ <TextView
+ android:id="@+id/download_status"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignParentBottom="true"
+ android:layout_centerHorizontal="true"
+ android:singleLine="true"
+ android:ellipsize="end"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="#c0c0c0"/>
+
+ <TextView
+ android:id="@+id/download_song_title"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_horizontal"
+ android:layout_above="@+id/download_status"
+ android:layout_centerHorizontal="true"
+ android:layout_marginLeft="16dip"
+ android:layout_marginRight="16dip"
+ android:singleLine="true"
+ android:textColor="@color/mediaControlForeground"
+ android:textStyle="bold"
+ android:textSize="18sp"
+ android:ellipsize="end"/>
+
+ <LinearLayout
+ android:id="@+id/download_visualizer_view_layout"
+ android:layout_width="fill_parent"
+ android:layout_height="60dip"
+ android:layout_marginLeft="80dip"
+ android:layout_marginRight="80dip"
+ android:layout_gravity="center_horizontal"
+ android:layout_above="@+id/download_song_title"/>
+
+ </RelativeLayout>
+
+ <include layout="@layout/download_playlist"/>
+
+ </net.sourceforge.subsonic.androidapp.util.MyViewFlipper>
+
+ <LinearLayout android:orientation="horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="0dip"
+ android:background="@color/mediaControlBackground"
+ android:paddingTop="0dip"
+ android:paddingBottom="0dip">
+ <ImageButton
+ android:id="@+id/download_shuffle"
+ android:src="@drawable/media_shuffle"
+ android:background="@android:color/transparent"
+ android:layout_width="0dip"
+ android:layout_height="fill_parent"
+ android:layout_gravity="center_vertical|left"
+ android:layout_weight="1"
+ android:paddingLeft="4dip"/>
+ <ImageButton
+ android:id="@+id/download_previous"
+ android:src="@drawable/media_backward"
+ android:background="@android:color/transparent"
+ android:padding="0dip"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"/>
+ <ImageButton
+ android:id="@+id/download_pause"
+ android:src="@drawable/media_pause"
+ android:background="@android:color/transparent"
+ android:padding="0dip"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"/>
+ <ImageButton
+ android:id="@+id/download_stop"
+ android:src="@drawable/media_stop"
+ android:background="@android:color/transparent"
+ android:padding="0dip"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"/>
+ <ImageButton
+ android:id="@+id/download_start"
+ android:src="@drawable/media_start"
+ android:background="@android:color/transparent"
+ android:padding="0dip"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"/>
+ <ImageButton
+ android:id="@+id/download_next"
+ android:src="@drawable/media_forward"
+ android:background="@android:color/transparent"
+ android:padding="0dip"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"/>
+ <ImageButton
+ android:id="@+id/download_toggle_list"
+ android:src="@drawable/media_toggle_list"
+ android:background="@android:color/transparent"
+ android:layout_width="0dip"
+ android:layout_height="fill_parent"
+ android:layout_gravity="center_vertical|right"
+ android:layout_weight="1"
+ android:paddingRight="4dip"/>
+ </LinearLayout>
+
+ <include layout="@layout/download_slider"/>
+
+ <include layout="@layout/download_button_bar_flipper"/>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/action_bar.xml b/subsonic-android/res/layout/action_bar.xml
new file mode 100644
index 00000000..7439c0d8
--- /dev/null
+++ b/subsonic-android/res/layout/action_bar.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="fill_parent"
+ android:layout_height="45dp"
+ android:background="@drawable/menubar_button_disabled">
+
+ <ImageView
+ android:id="@+id/actionbar_home_icon"
+ android:src="@drawable/main_header_icon"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"
+ android:layout_alignParentTop="true"
+ android:layout_alignParentLeft="true"
+ android:layout_alignParentBottom="true"
+ android:paddingLeft="4dip"
+ android:paddingRight="4dip"
+ android:paddingTop="2dip"
+ android:paddingBottom="2dip"
+ android:scaleType="centerInside"
+ />
+
+ <ImageButton
+ android:id="@+id/action_button_2"
+ android:src="@drawable/action_search"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignParentRight="true"
+ android:layout_alignParentTop="true"
+ android:layout_alignParentBottom="true"
+ android:scaleType="center"
+ android:padding="5dp"
+ android:background="@drawable/actionbar_button"
+ />
+
+ <ImageButton
+ android:id="@+id/action_button_1"
+ android:src="@drawable/action_shuffle"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignParentTop="true"
+ android:layout_alignParentBottom="true"
+ android:layout_toLeftOf="@id/action_button_2"
+ android:scaleType="center"
+ android:padding="5dp"
+ android:background="@drawable/actionbar_button"
+ />
+
+ <TextView
+ android:id="@+id/actionbar_title_text"
+ android:text="Subsonic"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignParentTop="true"
+ android:layout_alignParentBottom="true"
+ android:layout_toLeftOf="@id/action_button_1"
+ android:layout_toRightOf="@id/actionbar_home_icon"
+ android:gravity="center_vertical"
+ android:textColor="#FFFFFF"
+ android:textSize="18sp"
+ android:textStyle="bold"
+ android:shadowColor="#000000"
+ android:shadowDx="1"
+ android:shadowDy="1"
+ android:shadowRadius="1"
+ android:lineSpacingMultiplier="0.85"
+ android:ellipsize="middle"
+ android:inputType="none"
+ />
+
+</RelativeLayout>
diff --git a/subsonic-android/res/layout/album_list_item.xml b/subsonic-android/res/layout/album_list_item.xml
new file mode 100644
index 00000000..15d999c3
--- /dev/null
+++ b/subsonic-android/res/layout/album_list_item.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="?android:attr/listPreferredItemHeight">>
+
+ <ImageView
+ android:id="@+id/album_coverart"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="left|center_vertical"
+ android:paddingLeft="6dip"/>
+
+ <LinearLayout
+ android:orientation="vertical"
+ android:layout_width="0dip"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:layout_gravity="left|center_vertical"
+ android:paddingLeft="6dip"
+ android:paddingRight="3dip">
+
+ <TextView
+ android:id="@+id/album_title"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:singleLine="true"
+ android:ellipsize="marquee"/>
+
+ <TextView
+ android:id="@+id/album_artist"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:singleLine="true"/>
+
+ </LinearLayout>
+
+ <ImageView
+ android:src="@drawable/list_item_artist"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="right|center_vertical"
+ android:paddingRight="6dip"/>
+
+</LinearLayout>
diff --git a/subsonic-android/res/layout/appwidget.xml b/subsonic-android/res/layout/appwidget.xml
new file mode 100644
index 00000000..233bc93f
--- /dev/null
+++ b/subsonic-android/res/layout/appwidget.xml
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:orientation="horizontal"
+ android:background="@drawable/appwidget_bg">
+<ImageView
+ android:id="@+id/appwidget_coverart"
+ android:layout_height="fill_parent"
+ android:layout_width="81dip"
+ android:scaleType="fitXY"
+ android:src="@drawable/appwidget_art_default"
+ android:clickable="true"
+ android:focusable="true"
+ android:background="@drawable/appwidget_button_left"/>
+<ImageView
+ android:layout_width="2dip"
+ android:layout_height="fill_parent"
+ android:background="@drawable/appwidget_divider_vertical"/>
+<LinearLayout
+ android:id="@+id/appwidget_top"
+ android:layout_height="fill_parent"
+ android:layout_width="fill_parent"
+ android:orientation="vertical"
+ android:clickable="true"
+ android:focusable="true"
+ android:background="@drawable/appwidget_button_left">
+ <TextView
+ android:id="@+id/title"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:minHeight="16sp"
+ android:textColor="@color/appwidget_text"
+ android:textStyle="bold"
+ android:textSize="16sp"
+ android:singleLine="true"
+ android:paddingLeft="5dip"
+ android:paddingRight="5dip"
+ android:fadingEdge="horizontal"
+ android:fadingEdgeLength="20dip"
+ android:ellipsize="none"/>
+ <TextView
+ android:id="@+id/artist"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textColor="@color/appwidget_text"
+ android:minHeight="12sp"
+ android:textSize="12sp"
+ android:singleLine="true"
+ android:paddingLeft="5dip"
+ android:paddingBottom="2dip"
+ android:fadingEdge="horizontal"
+ android:fadingEdgeLength="10dip"
+ android:ellipsize="none"/>
+ <ImageView
+ android:layout_width="fill_parent"
+ android:layout_height="2dip"
+ android:background="@drawable/appwidget_divider_horizontal"/>
+ <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:orientation="horizontal">
+ <ImageButton
+ android:id="@+id/control_previous"
+ android:layout_width="0dip"
+ android:layout_weight="1"
+ android:layout_height="fill_parent"
+ android:src="@drawable/ic_appwidget_music_previous"
+ android:background="@drawable/appwidget_button_center"
+ android:scaleType="center"/>
+ <ImageView
+ android:layout_width="2dip"
+ android:layout_height="fill_parent"
+ android:background="@drawable/appwidget_divider_vertical"/>
+ <ImageButton
+ android:id="@+id/control_play"
+ android:layout_width="0dip"
+ android:layout_weight="1"
+ android:layout_height="fill_parent"
+ android:src="@drawable/ic_appwidget_music_play"
+ android:background="@drawable/appwidget_button_center"
+ android:scaleType="center"/>
+ <ImageView
+ android:layout_width="2dip"
+ android:layout_height="fill_parent"
+ android:background="@drawable/appwidget_divider_vertical"/>
+ <ImageButton
+ android:id="@+id/control_next"
+ android:layout_width="0dip"
+ android:layout_weight="1"
+ android:layout_height="fill_parent"
+ android:src="@drawable/ic_appwidget_music_next"
+ android:background="@drawable/appwidget_button_right"
+ android:scaleType="center"/>
+ </LinearLayout>
+ </LinearLayout>
+</LinearLayout>
diff --git a/subsonic-android/res/layout/artist_list_item.xml b/subsonic-android/res/layout/artist_list_item.xml
new file mode 100644
index 00000000..8aaa42d0
--- /dev/null
+++ b/subsonic-android/res/layout/artist_list_item.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<TextView xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@android:id/text1"
+ android:drawableRight="@drawable/list_item_artist"
+ android:drawablePadding="6dip"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center_vertical"
+ android:paddingLeft="6dip"
+ android:paddingRight="6dip"
+ android:minHeight="50dip"/> \ No newline at end of file
diff --git a/subsonic-android/res/layout/button_bar.xml b/subsonic-android/res/layout/button_bar.xml
new file mode 100644
index 00000000..59b18437
--- /dev/null
+++ b/subsonic-android/res/layout/button_bar.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/button_bar"
+ android:orientation="vertical"
+ android:layout_gravity="bottom"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="1px"
+ android:background="@color/dividerColor"/>
+
+ <LinearLayout android:orientation="horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:gravity="center_horizontal">
+
+ <ImageButton android:id="@+id/button_bar_home"
+ android:src="@drawable/menu_home"
+ android:contentDescription="@string/button_bar.home"
+ android:background="@drawable/menubar_button"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"/>
+
+ <ImageButton android:id="@+id/button_bar_music"
+ android:src="@drawable/menu_browse"
+ android:contentDescription="@string/button_bar.browse"
+ android:background="@drawable/menubar_button"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"/>
+
+ <ImageButton android:id="@+id/button_bar_search"
+ android:src="@drawable/menu_search"
+ android:contentDescription="@string/button_bar.search"
+ android:background="@drawable/menubar_button"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"/>
+
+ <ImageButton android:id="@+id/button_bar_playlists"
+ android:src="@drawable/menu_playlists"
+ android:contentDescription="@string/button_bar.playlists"
+ android:background="@drawable/menubar_button"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"/>
+
+ <ImageButton android:id="@+id/button_bar_now_playing"
+ android:src="@drawable/menu_now_playing"
+ android:contentDescription="@string/button_bar.now_playing"
+ android:background="@drawable/menubar_button"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"/>
+
+ </LinearLayout>
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/download_button_bar_flipper.xml b/subsonic-android/res/layout/download_button_bar_flipper.xml
new file mode 100644
index 00000000..216f5802
--- /dev/null
+++ b/subsonic-android/res/layout/download_button_bar_flipper.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="utf-8"?>
+<net.sourceforge.subsonic.androidapp.util.MyViewFlipper
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/download_button_bar_flipper"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:background="@android:color/black">
+
+ <RelativeLayout
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:background="@android:color/black"
+ android:paddingLeft="8dip"
+ android:paddingRight="8dip">
+
+ <TextView
+ android:id="@+id/download_position"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignParentLeft="true"
+ android:layout_alignParentTop="true"
+ android:layout_marginRight="6dip"
+ android:text="0:00"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="@color/mediaControlForeground"/>
+ <TextView
+ android:id="@+id/download_duration"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignParentRight="true"
+ android:layout_alignParentTop="true"
+ android:layout_marginLeft="6dip"
+ android:text="-:--"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="@color/mediaControlForeground"/>
+ <TextView
+ android:id="@+id/download_artist"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_toRightOf="@+id/download_position"
+ android:layout_toLeftOf="@+id/download_duration"
+ android:layout_centerHorizontal="true"
+ android:layout_alignParentTop="true"
+ android:singleLine="true"
+ android:ellipsize="end"
+ android:gravity="center_horizontal"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="#c0c0c0"/>
+ <TextView
+ android:id="@+id/download_album"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerHorizontal="true"
+ android:layout_below="@+id/download_artist"
+ android:singleLine="true"
+ android:ellipsize="end"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="#c0c0c0"/>
+ </RelativeLayout>
+
+ <include layout="@layout/button_bar"/>
+
+</net.sourceforge.subsonic.androidapp.util.MyViewFlipper>
+
+
+
+
diff --git a/subsonic-android/res/layout/download_playlist.xml b/subsonic-android/res/layout/download_playlist.xml
new file mode 100644
index 00000000..42daee00
--- /dev/null
+++ b/subsonic-android/res/layout/download_playlist.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:layout_weight="1">
+
+ <TextView
+ android:id="@+id/download_empty"
+ android:text="@string/download.empty"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:padding="10dip"/>
+
+ <ListView
+ android:id="@+id/download_list"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:layout_weight="1"
+ android:cacheColorHint="#00000000"/>
+
+</LinearLayout> \ No newline at end of file
diff --git a/subsonic-android/res/layout/download_slider.xml b/subsonic-android/res/layout/download_slider.xml
new file mode 100644
index 00000000..a4c62ca2
--- /dev/null
+++ b/subsonic-android/res/layout/download_slider.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<net.sourceforge.subsonic.androidapp.util.HorizontalSlider
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ style="?android:attr/progressBarStyleHorizontal"
+ android:id="@+id/download_progress_bar"
+ android:indeterminate="false"
+ android:background="@color/mediaControlBackground"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingLeft="7dip"
+ android:paddingRight="7dip"
+ android:paddingTop="3dip"
+ android:paddingBottom="7dip"/>
diff --git a/subsonic-android/res/layout/equalizer.xml b/subsonic-android/res/layout/equalizer.xml
new file mode 100644
index 00000000..ee1a9560
--- /dev/null
+++ b/subsonic-android/res/layout/equalizer.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="@drawable/album_art_background"
+ android:padding="16dip">
+
+ <CheckBox
+ android:id="@+id/equalizer_enabled"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/equalizer.enabled"
+ android:textColor="#c0c0c0"
+ android:textAppearance="?android:attr/textAppearanceMedium"/>
+
+ <ScrollView
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+
+ <LinearLayout
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+
+ <LinearLayout
+ android:id="@+id/equalizer_layout"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"/>
+
+ <Button
+ android:id="@+id/equalizer_preset"
+ android:text="@string/equalizer.preset"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:layout_marginTop="20dip"
+ android:paddingLeft="40dip"
+ android:paddingRight="40dip"/>
+
+ </LinearLayout>
+ </ScrollView>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/equalizer_bar.xml b/subsonic-android/res/layout/equalizer_bar.xml
new file mode 100644
index 00000000..c34d1108
--- /dev/null
+++ b/subsonic-android/res/layout/equalizer_bar.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+
+ <TextView
+ android:id="@+id/equalizer.frequency"
+ android:textSize="12sp"
+ android:textColor="#c0c0c0"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="8dp"
+ android:layout_alignParentLeft="true"
+ />
+
+ <TextView
+ android:id="@+id/equalizer.level"
+ android:text="0 dB"
+ android:textSize="12sp"
+ android:textColor="#c0c0c0"
+ android:gravity="right"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="8dp"
+ android:layout_alignParentRight="true"
+ android:layout_toRightOf="@+id/equalizer.frequency"
+ />
+
+ <SeekBar
+ android:id="@+id/equalizer.bar"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_below="@+id/equalizer.frequency"
+ />
+
+
+</RelativeLayout>
+
diff --git a/subsonic-android/res/layout/help.xml b/subsonic-android/res/layout/help.xml
new file mode 100644
index 00000000..f22dee37
--- /dev/null
+++ b/subsonic-android/res/layout/help.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <LinearLayout android:id="@+id/help_buttons"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_weight="0"
+ android:layout_alignParentBottom="true"
+ android:padding="4dip"
+ android:gravity="center_horizontal"
+ android:background="#ffcccccc">
+
+ <Button android:id="@+id/help_back"
+ android:text="@string/help.back"
+ android:layout_width="wrap_content"
+ android:layout_height="fill_parent"
+ android:layout_marginRight="5dip"
+ android:paddingLeft="25dip"
+ android:paddingRight="25dip"/>
+
+ <Button android:id="@+id/help_close"
+ android:text="@string/help.close"
+ android:layout_width="wrap_content"
+ android:layout_height="fill_parent"
+ android:layout_marginLeft="5dip"
+ android:paddingLeft="25dip"
+ android:paddingRight="25dip"/>
+ </LinearLayout>
+
+
+ <WebView
+ android:id="@+id/help_contents"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_above="@id/help_buttons"
+ android:layout_weight="1"
+ android:fadingEdge="vertical"
+ android:fadingEdgeLength="12dip"/>
+
+ </RelativeLayout>
diff --git a/subsonic-android/res/layout/jukebox_volume.xml b/subsonic-android/res/layout/jukebox_volume.xml
new file mode 100644
index 00000000..e124734b
--- /dev/null
+++ b/subsonic-android/res/layout/jukebox_volume.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/toast_layout_root"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="@drawable/toast_frame">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/download.jukebox_volume"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:textColor="#ffffffff"
+ android:shadowColor="#bb000000"
+ android:shadowRadius="2.75"
+ android:paddingLeft="32dp"
+ android:paddingRight="32dp"
+ android:paddingBottom="12dp"
+ />
+
+ <ProgressBar android:id="@+id/jukebox_volume_progress_bar"
+ style="@android:style/Widget.ProgressBar.Horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingBottom="3dp"
+ />
+
+</LinearLayout> \ No newline at end of file
diff --git a/subsonic-android/res/layout/lyrics.xml b/subsonic-android/res/layout/lyrics.xml
new file mode 100644
index 00000000..4307d8dd
--- /dev/null
+++ b/subsonic-android/res/layout/lyrics.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <include layout="@layout/tab_progress"/>
+
+ <ScrollView
+ android:layout_width="fill_parent"
+ android:layout_height="0dip"
+ android:layout_weight="1.0">
+
+ <LinearLayout
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+ <TextView
+ android:id="@+id/lyrics_artist"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center_horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingLeft="10dip"
+ android:paddingRight="10dip"
+ android:paddingTop="10dip"
+ android:paddingBottom="4dip"
+ />
+
+ <TextView
+ android:id="@+id/lyrics_title"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center_horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingLeft="10dip"
+ android:paddingRight="10dip"
+ />
+
+ <TextView
+ android:id="@+id/lyrics_text"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:gravity="center_horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingLeft="10dip"
+ android:paddingRight="10dip"
+ />
+
+ </LinearLayout>
+
+ </ScrollView>
+
+ <include layout="@layout/button_bar"/>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/main.xml b/subsonic-android/res/layout/main.xml
new file mode 100644
index 00000000..e151f319
--- /dev/null
+++ b/subsonic-android/res/layout/main.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <include
+ layout="@layout/action_bar"
+ android:layout_width="fill_parent"
+ android:layout_height="45dp"
+ />
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="1px"
+ android:background="@color/dividerColor"/>
+
+ <ListView
+ android:id="@+id/main_list"
+ android:layout_width="fill_parent"
+ android:layout_height="0px"
+ android:layout_weight="1"/>
+
+ <View android:id="@+id/main_dummy"
+ android:layout_width="0px"
+ android:layout_height="0px"/>
+
+ <include
+ layout="@layout/button_bar"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"/>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/main_buttons.xml b/subsonic-android/res/layout/main_buttons.xml
new file mode 100644
index 00000000..969ad99e
--- /dev/null
+++ b/subsonic-android/res/layout/main_buttons.xml
@@ -0,0 +1,119 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+
+ <LinearLayout
+ android:id="@+id/main_select_server"
+ android:orientation="horizontal"
+ android:paddingTop="2dip"
+ android:paddingBottom="2dip"
+ android:paddingLeft="6dp"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:minHeight="?android:attr/listPreferredItemHeight">
+
+ <ImageView
+ android:src="@drawable/main_select_server"
+ android:layout_gravity="center_vertical"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"/>
+
+ <LinearLayout
+ android:orientation="vertical"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content">
+
+ <TextView android:id="@+id/main.select_server_1"
+ android:text="@string/main.select_server"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginLeft="10dip"
+ android:layout_marginTop="6dip"
+ android:textAppearance="?android:attr/textAppearanceLarge"/>
+
+ <TextView android:id="@+id/main.select_server_2"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginLeft="10dip"
+ android:textAppearance="?android:attr/textAppearanceSmall"/>
+
+ </LinearLayout>
+ </LinearLayout>
+
+ <TextView
+ android:id="@+id/main_albums"
+ android:text="@string/main.albums_title"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="#EFEFEF"
+ android:textStyle="bold"
+ android:background="#A5A5A5"
+ android:gravity="center_vertical"
+ android:paddingLeft="4dp"/>
+
+ <TextView
+ android:id="@+id/main_albums_newest"
+ android:text="@string/main.albums_newest"
+ android:drawableRight="@drawable/list_item_artist"
+ android:drawablePadding="6dip"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center_vertical"
+ android:paddingLeft="6dip"
+ android:paddingRight="6dip"
+ android:minHeight="50dip"/>
+ <TextView
+ android:id="@+id/main_albums_recent"
+ android:text="@string/main.albums_recent"
+ android:drawableRight="@drawable/list_item_artist"
+ android:drawablePadding="6dip"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center_vertical"
+ android:paddingLeft="6dip"
+ android:paddingRight="6dip"
+ android:minHeight="50dip"/>
+ <TextView
+ android:id="@+id/main_albums_frequent"
+ android:text="@string/main.albums_frequent"
+ android:drawableRight="@drawable/list_item_artist"
+ android:drawablePadding="6dip"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center_vertical"
+ android:paddingLeft="6dip"
+ android:paddingRight="6dip"
+ android:minHeight="50dip"/>
+ <TextView
+ android:id="@+id/main_albums_highest"
+ android:text="@string/main.albums_highest"
+ android:drawableRight="@drawable/list_item_artist"
+ android:drawablePadding="6dip"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center_vertical"
+ android:paddingLeft="6dip"
+ android:paddingRight="6dip"
+ android:minHeight="50dip"/>
+ <TextView
+ android:id="@+id/main_albums_random"
+ android:text="@string/main.albums_random"
+ android:drawableRight="@drawable/list_item_artist"
+ android:drawablePadding="6dip"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center_vertical"
+ android:paddingLeft="6dip"
+ android:paddingRight="6dip"
+ android:minHeight="50dip"/>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/notification.xml b/subsonic-android/res/layout/notification.xml
new file mode 100644
index 00000000..c2edfb9b
--- /dev/null
+++ b/subsonic-android/res/layout/notification.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:padding="3dp">
+ <ImageView
+ android:id="@+id/notification_image"
+ android:layout_width="wrap_content"
+ android:layout_height="fill_parent"
+ android:layout_marginRight="10dp"
+ android:layout_marginLeft="5dp"/>
+ <TextView
+ android:id="@+id/notification_title"
+ android:layout_height="wrap_content"
+ android:layout_width="fill_parent"
+ android:textSize="16sp"
+ android:textStyle="bold"
+ android:textColor="@color/notificationTitle"
+ android:singleLine="true"
+ android:layout_toRightOf="@id/notification_image"
+ android:layout_alignParentTop="true"/>
+ <TextView
+ android:id="@+id/notification_artist"
+ android:layout_height="wrap_content"
+ android:layout_width="fill_parent"
+ android:textSize="15sp"
+ android:textColor="@color/notificationArtist"
+ android:singleLine="true"
+ android:layout_toRightOf="@id/notification_image"
+ android:layout_below="@id/notification_title"/>
+</RelativeLayout>
diff --git a/subsonic-android/res/layout/play_video.xml b/subsonic-android/res/layout/play_video.xml
new file mode 100644
index 00000000..6a9f3f74
--- /dev/null
+++ b/subsonic-android/res/layout/play_video.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <WebView
+ android:id="@+id/play_video_contents"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"/>
+
+</FrameLayout>
diff --git a/subsonic-android/res/layout/playlist_list_item.xml b/subsonic-android/res/layout/playlist_list_item.xml
new file mode 100644
index 00000000..20706dc9
--- /dev/null
+++ b/subsonic-android/res/layout/playlist_list_item.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<TextView xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@android:id/text1"
+ android:drawableRight="@drawable/list_item_playlist"
+ android:drawablePadding="6dip"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center_vertical"
+ android:paddingLeft="6dip"
+ android:paddingRight="6dip"
+ android:minHeight="50dip"/> \ No newline at end of file
diff --git a/subsonic-android/res/layout/progress.xml b/subsonic-android/res/layout/progress.xml
new file mode 100644
index 00000000..4a693cb3
--- /dev/null
+++ b/subsonic-android/res/layout/progress.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="horizontal"
+ android:layout_weight="1"
+ android:layout_width="0dip"
+ android:layout_height="fill_parent"
+ android:padding="10dp">
+
+ <ProgressBar
+ android:layout_width="wrap_content"
+ android:layout_height="fill_parent"
+ android:layout_marginRight="10dp"/>
+
+ <TextView
+ android:id="@+id/progress_message"
+ android:text="@string/progress.wait"
+ android:layout_width="wrap_content"
+ android:layout_height="fill_parent"/>
+
+</LinearLayout> \ No newline at end of file
diff --git a/subsonic-android/res/layout/save_playlist.xml b/subsonic-android/res/layout/save_playlist.xml
new file mode 100644
index 00000000..a0272f37
--- /dev/null
+++ b/subsonic-android/res/layout/save_playlist.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/save_playlist_root"
+ android:padding="10dip"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <EditText
+ android:id="@+id/save_playlist_name"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:inputType="text"
+ android:singleLine="true"/>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/search.xml b/subsonic-android/res/layout/search.xml
new file mode 100644
index 00000000..f65bcb36
--- /dev/null
+++ b/subsonic-android/res/layout/search.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <include layout="@layout/action_bar"/>
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="1px"
+ android:background="@color/dividerColor"/>
+
+ <include layout="@layout/tab_progress"/>
+
+ <ListView
+ android:id="@+id/search_list"
+ android:layout_width="fill_parent"
+ android:layout_height="0dip"
+ android:layout_weight="1.0"
+ android:fastScrollEnabled="true"
+ />
+
+ <include layout="@layout/button_bar"/>
+
+</LinearLayout> \ No newline at end of file
diff --git a/subsonic-android/res/layout/search_buttons.xml b/subsonic-android/res/layout/search_buttons.xml
new file mode 100644
index 00000000..10b72166
--- /dev/null
+++ b/subsonic-android/res/layout/search_buttons.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+
+ <TextView
+ android:id="@+id/search_search"
+ android:text="@string/search.search"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:drawablePadding="0dp"
+ android:drawableLeft="@drawable/search"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center"
+ android:padding="12dp"/>
+
+ <TextView
+ android:id="@+id/search_artists"
+ android:text="@string/search.artists"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="#EFEFEF"
+ android:textStyle="bold"
+ android:background="#A5A5A5"
+ android:gravity="center_vertical"
+ android:paddingLeft="4dp"/>
+
+ <TextView
+ android:id="@+id/search_albums"
+ android:text="@string/search.albums"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="#EFEFEF"
+ android:textStyle="bold"
+ android:background="#A5A5A5"
+ android:gravity="center_vertical"
+ android:paddingLeft="4dp"/>
+
+ <TextView
+ android:id="@+id/search_songs"
+ android:text="@string/search.songs"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="#EFEFEF"
+ android:textStyle="bold"
+ android:background="#A5A5A5"
+ android:gravity="center_vertical"
+ android:paddingLeft="4dp"/>
+
+ <TextView
+ android:id="@+id/search_more_artists"
+ android:text="@string/search.more"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:gravity="center"
+ android:paddingTop="8dp"
+ android:paddingBottom="8dp"/>
+
+ <TextView
+ android:id="@+id/search_more_albums"
+ android:text="@string/search.more"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:gravity="center"
+ android:paddingTop="8dp"
+ android:paddingBottom="8dp"/>
+
+ <TextView
+ android:id="@+id/search_more_songs"
+ android:text="@string/search.more"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:gravity="center"
+ android:paddingTop="8dp"
+ android:paddingBottom="8dp"/>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/select_album.xml b/subsonic-android/res/layout/select_album.xml
new file mode 100644
index 00000000..54c4b74a
--- /dev/null
+++ b/subsonic-android/res/layout/select_album.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <include layout="@layout/action_bar"/>
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="1px"
+ android:background="@color/dividerColor"/>
+
+ <include layout="@layout/tab_progress"/>
+
+ <TextView
+ android:id="@+id/select_album_empty"
+ android:text="@string/select_album.empty"
+ android:visibility="gone"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:padding="10dip"/>
+
+ <ListView android:id="@+id/select_album_entries"
+ android:textFilterEnabled="true"
+ android:layout_width="fill_parent"
+ android:layout_height="0dip"
+ android:layout_weight="1.0"
+ android:fastScrollEnabled="true"
+ />
+
+ <LinearLayout android:orientation="horizontal"
+ android:layout_marginTop="6dp"
+ android:layout_marginBottom="3dp"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+
+ <Button android:id="@+id/select_album_select"
+ android:text="@string/select_album.select"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:visibility="gone"
+ android:layout_marginLeft="6dp"
+ android:layout_marginRight="3dp"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="fill_parent"/>
+
+ <Button android:id="@+id/select_album_play_now"
+ android:text="@string/common.play_now"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:visibility="gone"
+ android:layout_marginLeft="3dp"
+ android:layout_marginRight="3dp"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="fill_parent"/>
+
+ <Button android:id="@+id/select_album_play_last"
+ android:text="@string/common.play_last"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:visibility="gone"
+ android:layout_marginLeft="3dp"
+ android:layout_marginRight="6dp"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="fill_parent"/>
+
+ </LinearLayout>
+
+ <include layout="@layout/button_bar"/>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/select_album_footer.xml b/subsonic-android/res/layout/select_album_footer.xml
new file mode 100644
index 00000000..06727db4
--- /dev/null
+++ b/subsonic-android/res/layout/select_album_footer.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="horizontal"
+ android:background="@android:color/transparent"
+ android:paddingTop="6dp"
+ android:paddingBottom="0dp"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+
+ <Button android:id="@+id/select_album_pin"
+ android:text="@string/common.pin"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:layout_marginLeft="6dp"
+ android:layout_marginRight="3dp"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="fill_parent"/>
+
+ <Button android:id="@+id/select_album_unpin"
+ android:text="@string/common.unpin"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:layout_marginLeft="3dp"
+ android:layout_marginRight="3dp"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="fill_parent"/>
+
+ <Button android:id="@+id/select_album_delete"
+ android:text="@string/common.delete"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:layout_marginLeft="3dp"
+ android:layout_marginRight="6dp"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="fill_parent"/>
+
+ <Button android:id="@+id/select_album_more"
+ android:text="@string/select_album.more"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:visibility="gone"
+ android:layout_marginLeft="6dp"
+ android:layout_marginRight="6dp"
+ android:layout_weight="1"
+ android:layout_width="0dp"
+ android:layout_height="fill_parent"/>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/select_album_header.xml b/subsonic-android/res/layout/select_album_header.xml
new file mode 100644
index 00000000..7f5fb767
--- /dev/null
+++ b/subsonic-android/res/layout/select_album_header.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+
+ <LinearLayout
+ android:orientation="horizontal"
+ android:background="@drawable/menubar_button_normal"
+ android:paddingTop="6dip"
+ android:paddingBottom="4dip"
+ android:paddingLeft="6dp"
+ android:paddingRight="6dp"
+ android:layout_weight="1"
+ android:layout_width="fill_parent"
+ android:layout_height="0dip">
+
+ <ImageView
+ android:id="@+id/select_album_cover_art"
+ android:layout_gravity="center_vertical"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"/>
+
+ <LinearLayout
+ android:orientation="vertical"
+ android:layout_weight="1"
+ android:layout_width="0dip"
+ android:layout_height="wrap_content">
+
+ <TextView
+ android:id="@+id/select_album_text1"
+ android:singleLine="true"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginLeft="10dip"
+ android:layout_marginRight="10dip"
+ android:textColor="@android:color/primary_text_light"
+ android:textAppearance="?android:attr/textAppearanceMedium"/>
+
+ <TextView
+ android:id="@+id/select_album_text2"
+ android:singleLine="true"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginLeft="10dip"
+ android:layout_marginRight="10dip"
+ android:textColor="@android:color/secondary_text_light"
+ android:textAppearance="?android:attr/textAppearanceSmall"/>
+
+ </LinearLayout>
+
+ <ImageButton
+ android:id="@+id/select_album_play_all"
+ android:src="@drawable/select_album_play_all"
+ android:background="@android:color/transparent"
+ android:layout_gravity="center_vertical"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"/>
+
+ </LinearLayout>
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="1px"
+ android:background="@color/dividerColor"/>
+
+</LinearLayout>
diff --git a/subsonic-android/res/layout/select_artist.xml b/subsonic-android/res/layout/select_artist.xml
new file mode 100644
index 00000000..7cf6fc77
--- /dev/null
+++ b/subsonic-android/res/layout/select_artist.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <include layout="@layout/action_bar"/>
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="1px"
+ android:background="@color/dividerColor"/>
+
+ <include layout="@layout/tab_progress"/>
+
+ <ListView android:id="@+id/select_artist_list"
+ android:textFilterEnabled="true"
+ android:fastScrollEnabled="true"
+ android:layout_width="fill_parent"
+ android:layout_height="0dip"
+ android:layout_weight="1.0"/>
+
+ <include layout="@layout/button_bar"/>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/select_artist_header.xml b/subsonic-android/res/layout/select_artist_header.xml
new file mode 100644
index 00000000..247eb806
--- /dev/null
+++ b/subsonic-android/res/layout/select_artist_header.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/select_artist_folder"
+ android:orientation="horizontal"
+ android:paddingTop="2dip"
+ android:paddingBottom="2dip"
+ android:paddingLeft="6dp"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:minHeight="?android:attr/listPreferredItemHeight">
+
+ <ImageView
+ android:src="@drawable/select_artist_folder"
+ android:layout_gravity="center_vertical"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"/>
+
+ <LinearLayout
+ android:orientation="vertical"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content">
+
+ <TextView android:id="@+id/select_artist_folder_1"
+ android:text="@string/select_artist.folder"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginLeft="10dip"
+ android:layout_marginTop="6dip"
+ android:textAppearance="?android:attr/textAppearanceLarge"/>
+
+ <TextView android:id="@+id/select_artist_folder_2"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginLeft="10dip"
+ android:textAppearance="?android:attr/textAppearanceSmall"/>
+
+ </LinearLayout>
+</LinearLayout> \ No newline at end of file
diff --git a/subsonic-android/res/layout/select_playlist.xml b/subsonic-android/res/layout/select_playlist.xml
new file mode 100644
index 00000000..c23e764b
--- /dev/null
+++ b/subsonic-android/res/layout/select_playlist.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <include layout="@layout/action_bar"/>
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="1px"
+ android:background="@color/dividerColor"/>
+
+ <include layout="@layout/tab_progress"/>
+
+ <TextView
+ android:id="@+id/select_playlist_empty"
+ android:text="@string/select_playlist.empty"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:padding="10dip"
+ android:visibility="gone"/>
+
+ <ListView android:id="@+id/select_playlist_list"
+ android:layout_width="fill_parent"
+ android:layout_height="0dip"
+ android:layout_weight="1.0"
+ android:fastScrollEnabled="true"
+ />
+
+ <include layout="@layout/button_bar"/>
+
+</LinearLayout>
+
diff --git a/subsonic-android/res/layout/song_list_item.xml b/subsonic-android/res/layout/song_list_item.xml
new file mode 100644
index 00000000..2163ef72
--- /dev/null
+++ b/subsonic-android/res/layout/song_list_item.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="?android:attr/listPreferredItemHeight">
+
+ <CheckedTextView
+ android:id="@+id/song_check"
+ android:layout_width="wrap_content"
+ android:layout_height="fill_parent"
+ android:gravity="center_vertical"
+ android:checkMark="?android:attr/textCheckMark"
+ android:paddingLeft="3dip"/>
+
+ <LinearLayout android:orientation="vertical"
+ android:layout_width="0dip"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:layout_gravity="center_vertical">
+
+ <LinearLayout android:orientation="horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical">
+
+ <TextView
+ android:id="@+id/song_title"
+ android:layout_width="0dip"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:layout_gravity="left|center_vertical"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:singleLine="true"
+ android:ellipsize="marquee"
+ android:drawablePadding="6dip"
+ android:paddingLeft="6dip"
+ android:paddingRight="6dip"/>
+
+ <TextView
+ android:id="@+id/song_status"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="right|center_vertical"
+ android:drawablePadding="1dip"
+ android:paddingRight="6dip"/>
+ </LinearLayout>
+
+ <LinearLayout android:orientation="horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical">
+
+ <TextView
+ android:id="@+id/song_artist"
+ android:layout_width="0dip"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:layout_gravity="left|center_vertical"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:singleLine="true"
+ android:ellipsize="middle"
+ android:paddingLeft="6dip"/>
+
+ <TextView
+ android:id="@+id/song_duration"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="right|center_vertical"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:singleLine="true"
+ android:paddingLeft="3dip"
+ android:paddingRight="9dip"/>
+
+ </LinearLayout>
+ </LinearLayout>
+</LinearLayout>
diff --git a/subsonic-android/res/layout/tab_progress.xml b/subsonic-android/res/layout/tab_progress.xml
new file mode 100644
index 00000000..6a88600c
--- /dev/null
+++ b/subsonic-android/res/layout/tab_progress.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/tab_progress"
+ android:orientation="horizontal"
+ android:visibility="gone"
+ android:padding="10dp"
+ android:layout_gravity="top"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+
+ <ProgressBar
+ android:layout_width="16dp"
+ android:layout_height="16dp"
+ android:layout_gravity="center_vertical"
+ android:layout_marginRight="6dp"/>
+
+ <TextView
+ android:id="@+id/tab_progress_message"
+ android:text="@string/progress.wait"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_vertical"/>
+
+</LinearLayout> \ No newline at end of file
diff --git a/subsonic-android/res/menu/main.xml b/subsonic-android/res/menu/main.xml
new file mode 100644
index 00000000..27698f81
--- /dev/null
+++ b/subsonic-android/res/menu/main.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item
+ android:id="@+id/menu_exit"
+ android:icon="@drawable/ic_menu_exit"
+ android:title="@string/menu.exit"
+ />
+
+ <item
+ android:id="@+id/menu_settings"
+ android:icon="@drawable/ic_menu_settings"
+ android:title="@string/menu.settings"
+ />
+
+ <item
+ android:id="@+id/menu_help"
+ android:icon="@drawable/ic_menu_help"
+ android:title="@string/menu.help"
+ />
+
+</menu>
diff --git a/subsonic-android/res/menu/nowplaying.xml b/subsonic-android/res/menu/nowplaying.xml
new file mode 100644
index 00000000..28bcb5ef
--- /dev/null
+++ b/subsonic-android/res/menu/nowplaying.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item
+ android:id="@+id/menu_shuffle"
+ android:icon="@drawable/ic_menu_shuffle"
+ android:title="@string/download.menu_shuffle"
+ />
+
+ <item
+ android:id="@+id/menu_save_playlist"
+ android:icon="@drawable/ic_menu_save"
+ android:title="@string/download.menu_save"
+ />
+
+ <item
+ android:id="@+id/menu_remove_all"
+ android:icon="@drawable/ic_menu_remove_all"
+ android:title="@string/download.menu_remove_all"
+ />
+
+ <item
+ android:id="@+id/menu_screen_on_off"
+ android:icon="@drawable/ic_menu_screen_on_off"
+ android:title="@string/download.menu_screen_on"
+ />
+</menu>
diff --git a/subsonic-android/res/menu/nowplaying_context.xml b/subsonic-android/res/menu/nowplaying_context.xml
new file mode 100644
index 00000000..16fb47d7
--- /dev/null
+++ b/subsonic-android/res/menu/nowplaying_context.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="utf-8"?>
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item
+ android:id="@+id/menu_show_album"
+ android:title="@string/download.menu_show_album"
+ />
+
+ <item
+ android:id="@+id/menu_lyrics"
+ android:title="@string/download.menu_lyrics"
+ />
+
+ <item
+ android:id="@+id/menu_remove"
+ android:title="@string/download.menu_remove"
+ />
+
+ <item
+ android:id="@+id/menu_remove_all"
+ android:title="@string/download.menu_remove_all"
+ />
+
+ <item
+ android:id="@+id/menu_shuffle"
+ android:title="@string/download.menu_shuffle"
+ />
+
+ <item
+ android:id="@+id/menu_save_playlist"
+ android:title="@string/download.menu_save"
+ />
+
+</menu>
diff --git a/subsonic-android/res/menu/select_album_context.xml b/subsonic-android/res/menu/select_album_context.xml
new file mode 100644
index 00000000..299d4d01
--- /dev/null
+++ b/subsonic-android/res/menu/select_album_context.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item
+ android:id="@+id/album_menu_play_now"
+ android:title="@string/common.play_now"
+ />
+
+ <item
+ android:id="@+id/album_menu_play_last"
+ android:title="@string/common.play_last"
+ />
+
+ <item
+ android:id="@+id/album_menu_pin"
+ android:title="@string/common.pin"
+ />
+
+</menu>
diff --git a/subsonic-android/res/menu/select_artist_context.xml b/subsonic-android/res/menu/select_artist_context.xml
new file mode 100644
index 00000000..fc4a45ba
--- /dev/null
+++ b/subsonic-android/res/menu/select_artist_context.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item
+ android:id="@+id/artist_menu_play_now"
+ android:title="@string/common.play_now"
+ />
+
+ <item
+ android:id="@+id/artist_menu_play_last"
+ android:title="@string/common.play_last"
+ />
+
+ <item
+ android:id="@+id/artist_menu_pin"
+ android:title="@string/common.pin"
+ />
+
+</menu>
diff --git a/subsonic-android/res/menu/select_song_context.xml b/subsonic-android/res/menu/select_song_context.xml
new file mode 100644
index 00000000..c6393e77
--- /dev/null
+++ b/subsonic-android/res/menu/select_song_context.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item
+ android:id="@+id/song_menu_play_now"
+ android:title="@string/common.play_now"
+ />
+
+ <item
+ android:id="@+id/song_menu_play_next"
+ android:title="@string/common.play_next"
+ />
+
+ <item
+ android:id="@+id/song_menu_play_last"
+ android:title="@string/common.play_last"
+ />
+
+</menu>
diff --git a/subsonic-android/res/values-fr/strings.xml b/subsonic-android/res/values-fr/strings.xml
new file mode 100644
index 00000000..a2e1f660
--- /dev/null
+++ b/subsonic-android/res/values-fr/strings.xml
@@ -0,0 +1,208 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="common.appname">Subsonic</string>
+ <string name="common.ok">OK</string>
+ <string name="common.save">Enregistrer</string>
+ <string name="common.cancel">Annuler</string>
+
+ <string name="main.welcome_title">Bienvenue!</string>
+ <string name="main.welcome_text">Bienvenue dans Subsonic! L\'application est configurée pour utiliser le serveur démo de Subsonic.
+ Après avoir configuré votre serveur personnel (disponible à partir de <b>subsonic.org</b>), veuillez accéder aux <b>Paramètres</b> et modifier la configuration pour vous y connecter.</string>
+ <string name="main.select_server">Sélectionner un serveur</string>
+ <string name="main.shuffle">Lecture aléatoire</string>
+ <string name="main.offline">Hors-ligne</string>
+ <string name="main.settings">Paramètres</string>
+ <string name="main.albums_title">Albums</string>
+ <string name="main.albums_newest">Plus récents</string>
+ <string name="main.albums_random">Aléatoire</string>
+ <string name="main.albums_highest">Mieux cotés</string>
+ <string name="main.albums_recent">Récemment joués</string>
+ <string name="main.albums_frequent">Fréquemment joués</string>
+
+ <!--<string name="menu.exit">TODO: Exit</string>-->
+ <!--<string name="menu.settings">TODO: Settings</string>-->
+ <!--<string name="menu.help">TODO: Help</string>-->
+
+ <string name="playlist.label">Playlists</string>
+
+ <string name="help.label">Aide</string>
+ <string name="help.title">Bienvenue dans Subsonic!</string>
+ <string name="help.back">Retour</string>
+ <string name="help.close">Fermer</string>
+ <string name="help.url">file:///android_asset/html/fr/index.html</string>
+ <string name="help.loading">Chargement...</string>
+
+ <string name="play_video.loading">Chargement de la vidéo...</string>
+ <string name="play_video.noplugin">Veuillez installer Adobe Flash Player à partir du marché Android.</string>
+
+ <string name="search.label">Recherche</string>
+ <string name="search.title">Recherche</string>
+ <string name="search.search">Cliquer pour rechercher</string>
+ <string name="search.no_match">Aucun résultat, veuillez essayer à nouveau</string>
+ <string name="search.artists">Artistes</string>
+ <string name="search.albums">Albums</string>
+ <string name="search.songs">Pièces</string>
+ <string name="search.more">Afficher plus</string>
+
+ <string name="progress.wait">Veuillez patienter...</string>
+
+ <string name="music_library.label">Bibliothèque musicale</string>
+ <string name="music_library.label_offline">Musique hors-ligne</string>
+
+ <string name="select_album.empty">Aucune musique trouvée</string>
+ <string name="select_album.select">Tout sélectionner</string>
+ <!--<string name="select_album.n_selected">TODO: %d tracks selected.</string>-->
+ <!--<string name="select_album.n_unselected">TODO: %d tracks unselected.</string>-->
+ <string name="select_album.more">Plus</string>
+ <string name="select_album.offline">Hors-ligne</string>
+ <string name="select_album.searching">Recherche en cours...</string>
+ <string name="select_album.no_sdcard">Erreur: Aucune carte SD disponible.</string>
+ <string name="select_album.no_network">Avis: Aucun réseau disponible.</string>
+ <string name="select_album.not_licensed">Serveur sans licence. %d jours d\'essai restant.</string>
+ <string name="select_album.donate_dialog_message">Obtenez des téléchargements illimités en donnant à Subsonic.</string>
+ <string name="select_album.donate_dialog_now">Maintenant</string>
+ <string name="select_album.donate_dialog_later">Plus tard</string>
+ <string name="select_album.donate_dialog_0_trial_days_left">La période d\'essai est terminée</string>
+
+ <string name="select_playlist.empty">Aucune playlist sur le serveur</string>
+
+ <string name="download.empty">Playlist vide</string>
+ <string name="download.playerstate_downloading">Téléchargement - %s</string>
+ <string name="download.playerstate_buffering">Mise en tampon</string>
+ <string name="download.playerstate_playing_shuffle">En jeu aléatoire</string>
+ <string name="download.menu_show_album">Afficher l\'album</string>
+ <string name="download.menu_lyrics">Paroles</string>
+ <string name="download.menu_remove">Retirer la pièce</string>
+ <string name="download.menu_remove_all">Retirer tout</string>
+ <string name="download.menu_shuffle">Mélanger</string>
+ <string name="download.menu_save">Enregistrer la playlist</string>
+ <string name="download.menu_shuffle_notification">Playlist mélangée</string>
+ <string name="download.playlist_title">Enregistrer la playlist</string>
+ <string name="download.playlist_name">Saisissez le nom de la playlist:</string>
+ <string name="download.playlist_saving">Enregistrement de la playlist \"%s\"...</string>
+ <string name="download.playlist_done">Playlist enregistrée avec succès.</string>
+ <string name="download.playlist_error">Échec de l\'enregistrement de la playlist, veuillez réessayer plus tard.</string>
+
+ <string name="song_details.all">%2$s, %1$s</string>
+ <string name="song_details.kbps">%d Kb/s</string>
+
+ <string name="lyrics.nomatch">Aucune parole trouvée</string>
+
+ <string name="error.label">Erreur</string>
+
+ <string name="settings.title">Paramètres de Subsonic</string>
+ <string name="settings.test_connection_title">Tester la connexion</string>
+ <string name="settings.servers_title">Serveurs</string>
+ <string name="settings.server_unused1">Inutilisé 1</string>
+ <string name="settings.server_unused2">Inutilisé 2</string>
+ <string name="settings.server_name">Nom</string>
+ <string name="settings.server_address">Adresse du serveur</string>
+ <string name="settings.server_username">Nom d\'usager</string>
+ <string name="settings.server_password">Mot de passe</string>
+ <string name="settings.cache_title">Cache musicale</string>
+ <string name="settings.preload">Pièces à pré-charger</string>
+ <string name="settings.cache_size">Taille de la cache</string>
+ <string name="settings.testing_connection">Connexion en cours de test...</string>
+ <string name="settings.testing_ok">Connexion correcte</string>
+ <string name="settings.testing_unlicensed">Connection correcte. Serveur sans licence.</string>
+ <string name="settings.connection_failure">Connection échouée.</string>
+ <string name="settings.invalid_url">Veuillez spécifier un URL valide.</string>
+ <string name="settings.invalid_username">Veuillez spécifier un nom d\'usager valide (sans espace à la fin).</string>
+ <string name="settings.appearance_title">Apparence</string>
+ <string name="settings.theme_title">Thème</string>
+ <string name="settings.theme_wheat">Blé</string>
+ <string name="settings.theme_light">Clair</string>
+ <string name="settings.theme_dark">Sombre</string>
+ <string name="settings.network_title">Réseau</string>
+ <string name="settings.max_bitrate_wifi">Débit maximal - Wi-Fi</string>
+ <string name="settings.max_bitrate_mobile">Débit maximal - Mobile</string>
+ <string name="settings.max_bitrate_32">32 Kb/s</string>
+ <string name="settings.max_bitrate_64">64 Kb/s</string>
+ <string name="settings.max_bitrate_80">80 Kb/s</string>
+ <string name="settings.max_bitrate_96">96 Kb/s</string>
+ <string name="settings.max_bitrate_112">112 Kb/s</string>
+ <string name="settings.max_bitrate_128">128 Kb/s</string>
+ <string name="settings.max_bitrate_160">160 Kb/s</string>
+ <string name="settings.max_bitrate_192">192 Kb/s</string>
+ <string name="settings.max_bitrate_256">256 Kb/s</string>
+ <string name="settings.max_bitrate_320">320 Kb/s</string>
+ <string name="settings.max_bitrate_unlimited">Illimité</string>
+ <string name="settings.preload_1">1 pièce</string>
+ <string name="settings.preload_2">2 pièces</string>
+ <string name="settings.preload_3">3 pièces</string>
+ <string name="settings.preload_5">5 pièces</string>
+ <string name="settings.preload_10">10 pièces</string>
+ <string name="settings.preload_unlimited">Illimité</string>
+ <string name="settings.cache_size_100">100 Mo</string>
+ <string name="settings.cache_size_200">200 Mo</string>
+ <string name="settings.cache_size_500">500 Mo</string>
+ <string name="settings.cache_size_1000">1 Go</string>
+ <string name="settings.cache_size_2000">2 Go</string>
+ <string name="settings.cache_size_5000">5 Go</string>
+ <string name="settings.cache_size_10000">10 Go</string>
+ <string name="settings.cache_size_20000">20 Go</string>
+ <string name="settings.cache_size_unlimited">Illimité</string>
+ <string name="settings.clear_search_history">Effacer l\'historique des recherches</string>
+ <string name="settings.search_history_cleared">Historique des recherches effacé</string>
+ <string name="settings.other_title">Autres paramètres</string>
+ <!--<string name="settings.scrobble_title">TODO: Scrobble to Last.fm</string>-->
+ <!--<string name="settings.scrobble_summary">TODO: Remember to set up your Last.fm user and password on the Subsonic server</string>-->
+ <string name="settings.hide_media_title">Masquer aux autres</string>
+ <string name="settings.hide_media_summary">Masquer les fichiers musicaux et les couvertures d\'album aux autres applis (Gallerie, Musique, etc.)</string>
+ <string name="settings.hide_media_toast">Prendra effet la prochaine fois qu\'Android recensera les médias disponibles sur l\'appareil.</string>
+ <string name="settings.media_button_title">Boutons média</string>
+ <string name="settings.media_button_summary">Répondre au boutons média de l\'appareil, du casque et du Bluetooth</string>
+ <!--<string name="settings.screen_lit_title">TODO: Keep screen on</string>-->
+ <!--<string name="settings.screen_lit_summary">TODO: Keeping the screen on when downloading may improve download speed</string>-->
+
+ <string name="music_service.retry">Une erreur de réseau s\'est produite. Essai %1$d de %2$d.</string>
+
+ <string name="background_task.wait">Veuillez patienter...</string>
+ <string name="background_task.loading">Chargement.</string>
+ <string name="background_task.no_network">Cette application requiert un accès au réseau. Veuillez activer le Wi-Fi ou le réseau mobile.</string>
+ <string name="background_task.network_error">Une erreur réseau est survenue. Veuillez vérifier l\'adresse du serveur ou réessayer plus tard.</string>
+ <string name="background_task.not_found">Ressource non trouvée. Veuillez vérifier l\'adresse du serveur.</string>
+ <string name="background_task.parse_error">Réplique incomprise. Veuillez vérifier l\'adresse du serveur.</string>
+
+ <string name="service.connecting">Contact du serveur, veuillez patienter.</string>
+
+ <string name="parser.reading">Lecture du serveur.</string>
+ <string name="parser.reading_done">Lecture du serveur. Terminé!</string>
+ <string name="parser.upgrade_client">Versions incompatible. Veuillez mette à jour l\'application Android Subsonic.</string>
+ <string name="parser.upgrade_server">Versions incompatible. Veuillez mette à jour le serveur Subsonic.</string>
+ <string name="parser.not_authenticated">Mauvais nom d\'usager ou mot de passe.</string>
+ <string name="parser.artist_count">%d artistes récupérés.</string>
+
+ <string name="select_artist.refresh">Rafraîchir</string>
+ <string name="select_artist.folder">Sélectionner le dossier</string>
+ <string name="select_artist.all_folders">Tous les dossiers</string>
+
+ <string name="widget.initial_text">Touchez pour sélectionner une pièce</string>
+ <string name="widget.sdcard_busy">Carte SD non disponible</string>
+ <string name="widget.sdcard_missing">Aucune carte SD</string>
+
+ <string name="util.bytes_format.gigabyte">0.00 Go</string>
+ <string name="util.bytes_format.megabyte">0.00 Mo</string>
+ <string name="util.bytes_format.kilobyte">0 Ko</string>
+ <string name="util.bytes_format.byte">0 o</string>
+
+ <plurals name="select_album_n_songs">
+ <item quantity="zero">Aucune pièce</item>
+ <item quantity="one">Une pièce</item>
+ <item quantity="other">%d pièces</item>
+ </plurals>
+ <plurals name="select_album_n_songs_downloading">
+ <item quantity="one">Une pièce prévue pour téléchargement.</item>
+ <item quantity="other">%d pièces prévues pour téléchargement.</item>
+ </plurals>
+ <plurals name="select_album_n_songs_added">
+ <item quantity="one">Une pièce ajoutée à la file de lecture.</item>
+ <item quantity="other">%d pièces ajoutées à la file de lecture.</item>
+ </plurals>
+ <plurals name="select_album_donate_dialog_n_trial_days_left">
+ <item quantity="one">Un jour restant à la période d\'essai</item>
+ <item quantity="other">%d jours restant à la période d\'essai</item>
+ </plurals>
+
+</resources>
diff --git a/subsonic-android/res/values-v11/colors.xml b/subsonic-android/res/values-v11/colors.xml
new file mode 100644
index 00000000..f5a422bb
--- /dev/null
+++ b/subsonic-android/res/values-v11/colors.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <color name="notificationArtist">#bababa</color>
+ <color name="notificationTitle">#dddddd</color>
+</resources>
diff --git a/subsonic-android/res/values/arrays.xml b/subsonic-android/res/values/arrays.xml
new file mode 100644
index 00000000..0338997a
--- /dev/null
+++ b/subsonic-android/res/values/arrays.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string-array name="themeValues">
+ <item>wheat</item>
+ <item>light</item>
+ <item>dark</item>
+ </string-array>
+
+ <string-array name="themeNames">
+ <item>@string/settings.theme_wheat</item>
+ <item>@string/settings.theme_light</item>
+ <item>@string/settings.theme_dark</item>
+ </string-array>
+
+ <string-array name="preloadCountValues">
+ <item>1</item>
+ <item>2</item>
+ <item>3</item>
+ <item>5</item>
+ <item>10</item>
+ <item>-1</item>
+ </string-array>
+
+ <string-array name="preloadCountNames">
+ <item>@string/settings.preload_1</item>
+ <item>@string/settings.preload_2</item>
+ <item>@string/settings.preload_3</item>
+ <item>@string/settings.preload_5</item>
+ <item>@string/settings.preload_10</item>
+ <item>@string/settings.preload_unlimited</item>
+ </string-array>
+
+ <string-array name="cacheSizeValues">
+ <item>100</item>
+ <item>200</item>
+ <item>500</item>
+ <item>1000</item>
+ <item>2000</item>
+ <item>5000</item>
+ <item>10000</item>
+ <item>20000</item>
+ <item>-1</item>
+ </string-array>
+
+ <string-array name="cacheSizeNames">
+ <item>@string/settings.cache_size_100</item>
+ <item>@string/settings.cache_size_200</item>
+ <item>@string/settings.cache_size_500</item>
+ <item>@string/settings.cache_size_1000</item>
+ <item>@string/settings.cache_size_2000</item>
+ <item>@string/settings.cache_size_5000</item>
+ <item>@string/settings.cache_size_10000</item>
+ <item>@string/settings.cache_size_20000</item>
+ <item>@string/settings.cache_size_unlimited</item>
+ </string-array>
+
+ <string-array name="maxBitrateValues">
+ <item>32</item>
+ <item>64</item>
+ <item>80</item>
+ <item>96</item>
+ <item>112</item>
+ <item>128</item>
+ <item>160</item>
+ <item>192</item>
+ <item>256</item>
+ <item>320</item>
+ <item>0</item>
+ </string-array>
+
+ <string-array name="maxBitrateNames">
+ <item>@string/settings.max_bitrate_32</item>
+ <item>@string/settings.max_bitrate_64</item>
+ <item>@string/settings.max_bitrate_80</item>
+ <item>@string/settings.max_bitrate_96</item>
+ <item>@string/settings.max_bitrate_112</item>
+ <item>@string/settings.max_bitrate_128</item>
+ <item>@string/settings.max_bitrate_160</item>
+ <item>@string/settings.max_bitrate_192</item>
+ <item>@string/settings.max_bitrate_256</item>
+ <item>@string/settings.max_bitrate_320</item>
+ <item>@string/settings.max_bitrate_unlimited</item>
+ </string-array>
+
+</resources> \ No newline at end of file
diff --git a/subsonic-android/res/values/colors.xml b/subsonic-android/res/values/colors.xml
new file mode 100644
index 00000000..67bb3933
--- /dev/null
+++ b/subsonic-android/res/values/colors.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <color name="mediaControlBackground">#000000</color>
+ <color name="mediaControlForeground">#F0F0F0</color>
+ <color name="dividerColor">#555555</color>
+ <color name="appwidget_text">#FFFFFF</color>
+ <color name="notificationArtist">#434343</color>
+ <color name="notificationTitle">#000000</color>
+
+ <color name="wheatBackground">#F1F0E6</color>
+ <color name="wheatForeground1">#494B26</color>
+ <color name="wheatForeground2">#830009</color>
+</resources> \ No newline at end of file
diff --git a/subsonic-android/res/values/strings.xml b/subsonic-android/res/values/strings.xml
new file mode 100644
index 00000000..c6a372c3
--- /dev/null
+++ b/subsonic-android/res/values/strings.xml
@@ -0,0 +1,242 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="common.appname">Subsonic</string>
+ <string name="common.ok">OK</string>
+ <string name="common.save">Save</string>
+ <string name="common.cancel">Cancel</string>
+ <string name="common.play_now">Play now</string>
+ <string name="common.play_next">Play next</string>
+ <string name="common.play_last">Play last</string>
+ <string name="common.pin">Pin</string>
+ <string name="common.unpin">Unpin</string>
+ <string name="common.delete">Delete</string>
+
+ <string name="button_bar.home">Subsonic home</string>
+ <string name="button_bar.browse">Media library</string>
+ <string name="button_bar.search">Search</string>
+ <string name="button_bar.playlists">Playlists</string>
+ <string name="button_bar.now_playing">Now playing</string>
+
+ <string name="main.welcome_title">Welcome!</string>
+ <string name="main.welcome_text">Welcome to Subsonic! The app is currently configured to use the Subsonic demo server. After you\'ve
+ set up your personal server (available from <b>subsonic.org</b>), please go to <b>Settings</b> and change the configuration to connect to it.</string>
+ <string name="main.select_server">Select server</string>
+ <string name="main.shuffle">Shuffle play</string>
+ <string name="main.offline">Offline</string>
+ <string name="main.settings">Settings</string>
+ <string name="main.albums_title">Albums</string>
+ <string name="main.albums_newest">Recently added</string>
+ <string name="main.albums_recent">Recently played</string>
+ <string name="main.albums_frequent">Most played</string>
+ <string name="main.albums_highest">Top rated</string>
+ <string name="main.albums_random">Random</string>
+
+ <string name="menu.exit">Exit</string>
+ <string name="menu.settings">Settings</string>
+ <string name="menu.help">Help</string>
+
+ <string name="playlist.label">Playlists</string>
+
+ <string name="help.label">Help</string>
+ <string name="help.title">Welcome to Subsonic!</string>
+ <string name="help.back">Back</string>
+ <string name="help.close">Close</string>
+ <string name="help.url">file:///android_asset/html/en/index.html</string>
+ <string name="help.loading">Loading...</string>
+
+ <string name="play_video.loading">Loading video...</string>
+ <string name="play_video.noplugin">Please install Adobe Flash Player from Android Market.</string>
+
+ <string name="search.label">Search</string>
+ <string name="search.title">Search</string>
+ <string name="search.search">Click to search</string>
+ <string name="search.no_match">No matches, please try again</string>
+ <string name="search.artists">Artists</string>
+ <string name="search.albums">Albums</string>
+ <string name="search.songs">Songs</string>
+ <string name="search.more">Show more</string>
+
+ <string name="progress.wait">Please wait...</string>
+
+ <string name="music_library.label">Media library</string>
+ <string name="music_library.label_offline">Offline media</string>
+
+ <string name="select_album.empty">No media found</string>
+ <string name="select_album.select">Select all</string>
+ <string name="select_album.n_selected">%d tracks selected.</string>
+ <string name="select_album.n_unselected">%d tracks unselected.</string>
+ <string name="select_album.more">More</string>
+ <string name="select_album.offline">Offline</string>
+ <string name="select_album.searching">Searching...</string>
+ <string name="select_album.no_sdcard">Error: No SD card available.</string>
+ <string name="select_album.no_network">Warning: No network available.</string>
+ <string name="select_album.not_licensed">Server not licensed. %d trial days left.</string>
+ <string name="select_album.donate_dialog_message">Get unlimited downloads by donating to Subsonic.</string>
+ <string name="select_album.donate_dialog_now">Now</string>
+ <string name="select_album.donate_dialog_later">Later</string>
+ <string name="select_album.donate_dialog_0_trial_days_left">Trial period is over</string>
+
+ <string name="select_playlist.empty">No saved playlists on server</string>
+
+ <string name="download.empty">Playlist is empty</string>
+ <string name="download.playerstate_downloading">Downloading - %s</string>
+ <string name="download.playerstate_buffering">Buffering</string>
+ <string name="download.playerstate_playing_shuffle">Playing shuffle</string>
+ <string name="download.menu_show_album">Show album</string>
+ <string name="download.menu_lyrics">Lyrics</string>
+ <string name="download.menu_remove">Remove song</string>
+ <string name="download.menu_remove_all">Remove all</string>
+ <string name="download.menu_screen_on">Screen on</string>
+ <string name="download.menu_screen_off">Screen off</string>
+ <string name="download.menu_shuffle">Shuffle</string>
+ <string name="download.menu_save">Save playlist</string>
+ <string name="download.menu_shuffle_notification">Playlist was shuffled</string>
+ <string name="download.playlist_title">Save playlist</string>
+ <string name="download.playlist_name">Enter the playlist name:</string>
+ <string name="download.playlist_saving">Saving playlist \"%s\"...</string>
+ <string name="download.playlist_done">Playlist was successfully saved.</string>
+ <string name="download.playlist_error">Failed to save playlist, please try later.</string>
+ <string name="download.repeat_off">Repeat off</string>
+ <string name="download.repeat_all">Repeat all</string>
+ <string name="download.repeat_single">Repeat song</string>
+ <string name="download.visualizer_on">Turned on visualizer.</string>
+ <string name="download.visualizer_off">Turned off visualizer.</string>
+ <string name="download.jukebox_on">Turned on remote control. Music is played on the computer.</string>
+ <string name="download.jukebox_off">Turned off remote control. Music is played on the phone.</string>
+ <string name="download.jukebox_volume">Remote volume</string>
+ <string name="download.jukebox_server_too_old">Remote control is not supported. Please upgrade your Subsonic server.</string>
+ <string name="download.jukebox_offline">Remote control is not available in offline mode.</string>
+ <string name="download.jukebox_not_authorized">Remote control is not allowed. Please enable jukebox mode in <b>Users &gt; Settings</b> on your Subsonic server.</string>
+
+ <string name="song_details.all">%1$s %2$s</string>
+ <string name="song_details.kbps">%d kbps</string>
+
+ <string name="lyrics.nomatch">No lyrics found</string>
+
+ <string name="error.label">Error</string>
+
+ <string name="settings.title">Subsonic settings</string>
+ <string name="settings.test_connection_title">Test connection</string>
+ <string name="settings.servers_title">Servers</string>
+ <string name="settings.server_unused1">Unused 1</string>
+ <string name="settings.server_unused2">Unused 2</string>
+ <string name="settings.server_name">Name</string>
+ <string name="settings.server_address">Server address</string>
+ <string name="settings.server_username">Username</string>
+ <string name="settings.server_password">Password</string>
+ <string name="settings.cache_title">Music cache</string>
+ <string name="settings.preload">Songs to preload</string>
+ <string name="settings.cache_size">Cache size</string>
+ <string name="settings.cache_location">Cache location</string>
+ <string name="settings.cache_location_error">Invalid cache location. Using default.</string>
+ <string name="settings.testing_connection">Testing connection...</string>
+ <string name="settings.testing_ok">Connection is OK</string>
+ <string name="settings.testing_unlicensed">Connection is OK. Server unlicensed.</string>
+ <string name="settings.connection_failure">Connection failure.</string>
+ <string name="settings.invalid_url">Please specify a valid URL.</string>
+ <string name="settings.invalid_username">Please specify a valid username (no trailing spaces).</string>
+ <string name="settings.appearance_title">Appearance</string>
+ <string name="settings.theme_title">Theme</string>
+ <string name="settings.theme_wheat">Wheat</string>
+ <string name="settings.theme_light">Light</string>
+ <string name="settings.theme_dark">Dark</string>
+ <string name="settings.network_title">Network</string>
+ <string name="settings.max_bitrate_wifi">Max bitrate - Wi-Fi</string>
+ <string name="settings.max_bitrate_mobile">Max bitrate - Mobile</string>
+ <string name="settings.max_bitrate_32">32 Kbps</string>
+ <string name="settings.max_bitrate_64">64 Kbps</string>
+ <string name="settings.max_bitrate_80">80 Kbps</string>
+ <string name="settings.max_bitrate_96">96 Kbps</string>
+ <string name="settings.max_bitrate_112">112 Kbps</string>
+ <string name="settings.max_bitrate_128">128 Kbps</string>
+ <string name="settings.max_bitrate_160">160 Kbps</string>
+ <string name="settings.max_bitrate_192">192 Kbps</string>
+ <string name="settings.max_bitrate_256">256 Kbps</string>
+ <string name="settings.max_bitrate_320">320 Kbps</string>
+ <string name="settings.max_bitrate_unlimited">Unlimited</string>
+ <string name="settings.wifi_required_title">Wi-Fi streaming only</string>
+ <string name="settings.wifi_required_summary">Only stream media if connected to Wi-Fi</string>
+ <string name="settings.preload_1">1 song</string>
+ <string name="settings.preload_2">2 songs</string>
+ <string name="settings.preload_3">3 songs</string>
+ <string name="settings.preload_5">5 songs</string>
+ <string name="settings.preload_10">10 songs</string>
+ <string name="settings.preload_unlimited">Unlimited</string>
+ <string name="settings.cache_size_100">100 MB</string>
+ <string name="settings.cache_size_200">200 MB</string>
+ <string name="settings.cache_size_500">500 MB</string>
+ <string name="settings.cache_size_1000">1 GB</string>
+ <string name="settings.cache_size_2000">2 GB</string>
+ <string name="settings.cache_size_5000">5 GB</string>
+ <string name="settings.cache_size_10000">10 GB</string>
+ <string name="settings.cache_size_20000">20 GB</string>
+ <string name="settings.cache_size_unlimited">Unlimited</string>
+ <string name="settings.clear_search_history">Clear search history</string>
+ <string name="settings.search_history_cleared">Search history cleared</string>
+ <string name="settings.other_title">Other settings</string>
+ <string name="settings.scrobble_title">Scrobble to Last.fm</string>
+ <string name="settings.scrobble_summary">Remember to set up your Last.fm user and password on the Subsonic server</string>
+ <string name="settings.hide_media_title">Hide from other</string>
+ <string name="settings.hide_media_summary">Hide music files from other apps.</string>
+ <string name="settings.hide_media_toast">Takes effect next time Android scans your phone for music.</string>
+ <string name="settings.media_button_title">Media buttons</string>
+ <string name="settings.media_button_summary">Respond to phone, headset and Bluetooth media buttons</string>
+ <string name="settings.screen_lit_title">Keep screen on</string>
+ <string name="settings.screen_lit_summary">Keeping the screen on while downloading improves download speed.</string>
+
+ <string name="music_service.retry">A network error occurred. Retrying %1$d of %2$d.</string>
+
+ <string name="background_task.wait">Please wait...</string>
+ <string name="background_task.loading">Loading.</string>
+ <string name="background_task.no_network">This program requires network access. Please turn on Wi-Fi or mobile network.</string>
+ <string name="background_task.network_error">A network error occurred. Please check the server address or try again later.</string>
+ <string name="background_task.not_found">Resource not found. Please check the server address.</string>
+ <string name="background_task.parse_error">Didn\'t understand the reply. Please check the server address.</string>
+
+ <string name="service.connecting">Contacting server, please wait.</string>
+
+ <string name="parser.reading">Reading from server.</string>
+ <string name="parser.reading_done">Reading from server. Done!</string>
+ <string name="parser.upgrade_client">Incompatible versions. Please upgrade Subsonic Android app.</string>
+ <string name="parser.upgrade_server">Incompatible versions. Please upgrade Subsonic server.</string>
+ <string name="parser.not_authenticated">Wrong username or password.</string>
+ <string name="parser.not_authorized">Not authorized. Check user permissions in Subsonic server.</string>
+ <string name="parser.artist_count">Got %d artists.</string>
+
+ <string name="select_artist.refresh">Refresh</string>
+ <string name="select_artist.folder">Select folder</string>
+ <string name="select_artist.all_folders">All folders</string>
+
+ <string name="equalizer.label">Equalizer</string>
+ <string name="equalizer.enabled">Enabled</string>
+ <string name="equalizer.preset">Select preset</string>
+
+ <string name="widget.initial_text">Touch to select music</string>
+ <string name="widget.sdcard_busy">SD card unavailable</string>
+ <string name="widget.sdcard_missing">No SD card</string>
+
+ <string name="util.bytes_format.gigabyte">0.00 GB</string>
+ <string name="util.bytes_format.megabyte">0.00 MB</string>
+ <string name="util.bytes_format.kilobyte">0 KB</string>
+ <string name="util.bytes_format.byte">0 B</string>
+
+ <plurals name="select_album_n_songs">
+ <item quantity="zero">No songs</item>
+ <item quantity="one">One song</item>
+ <item quantity="other">%d songs</item>
+ </plurals>
+ <plurals name="select_album_n_songs_downloading">
+ <item quantity="one">One song scheduled for download.</item>
+ <item quantity="other">%d songs scheduled for download.</item>
+ </plurals>
+ <plurals name="select_album_n_songs_added">
+ <item quantity="one">One song added to play queue.</item>
+ <item quantity="other">%d songs added to play queue.</item>
+ </plurals>
+ <plurals name="select_album_donate_dialog_n_trial_days_left">
+ <item quantity="one">One day left of trial period</item>
+ <item quantity="other">%d days left of trial period</item>
+ </plurals>
+
+</resources>
diff --git a/subsonic-android/res/values/styles.xml b/subsonic-android/res/values/styles.xml
new file mode 100644
index 00000000..a970fe1b
--- /dev/null
+++ b/subsonic-android/res/values/styles.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <style name="Wheat" parent="android:Theme.Light">
+ <item name="android:windowBackground">@color/wheatBackground</item>
+ <item name="android:textColorPrimary">@color/wheatForeground1</item>
+ <item name="android:textColorSecondary">@color/wheatForeground2</item>
+ <item name="android:listViewStyle">@style/WheatListView</item>
+ </style>
+
+ <style name="WheatListView" parent="android:style/Widget.ListView.White">
+ <item name="android:cacheColorHint">@color/wheatBackground</item>
+ </style>
+
+</resources>
diff --git a/subsonic-android/res/xml/appwidget_info.xml b/subsonic-android/res/xml/appwidget_info.xml
new file mode 100644
index 00000000..f1e8e308
--- /dev/null
+++ b/subsonic-android/res/xml/appwidget_info.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
+ android:minWidth="294dip"
+ android:minHeight="72dip"
+ android:updatePeriodMillis="0"
+ android:initialLayout="@layout/appwidget"/> \ No newline at end of file
diff --git a/subsonic-android/res/xml/searchable.xml b/subsonic-android/res/xml/searchable.xml
new file mode 100644
index 00000000..7822e98c
--- /dev/null
+++ b/subsonic-android/res/xml/searchable.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<searchable xmlns:android="http://schemas.android.com/apk/res/android"
+ android:label="@string/common.appname"
+ android:hint="@string/search.title"
+ android:voiceSearchMode="showVoiceSearchButton|launchRecognizer"
+ android:voiceLanguageModel="web_search"
+ android:searchSuggestAuthority="net.sourceforge.subsonic.androidapp.provider.SearchSuggestionProvider"
+ android:searchSuggestSelection=" ?" >
+</searchable> \ No newline at end of file
diff --git a/subsonic-android/res/xml/settings.xml b/subsonic-android/res/xml/settings.xml
new file mode 100644
index 00000000..427826ac
--- /dev/null
+++ b/subsonic-android/res/xml/settings.xml
@@ -0,0 +1,200 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
+ android:title="@string/settings.title">
+
+ <PreferenceCategory
+ android:title="@string/settings.servers_title">
+
+ <PreferenceScreen
+ android:key="server1">
+
+ <EditTextPreference
+ android:key="serverName1"
+ android:title="@string/settings.server_name"
+ android:defaultValue="Subsonic demo"/>
+
+ <EditTextPreference
+ android:key="serverUrl1"
+ android:title="@string/settings.server_address"
+ android:defaultValue="http://demo.subsonic.org"
+ android:inputType="textUri"/>
+
+ <EditTextPreference
+ android:key="username1"
+ android:title="@string/settings.server_username"
+ android:defaultValue="android-guest"/>
+
+ <EditTextPreference
+ android:key="password1"
+ android:title="@string/settings.server_password"
+ android:password="true"
+ android:defaultValue="guest"
+ android:summary="****"/>
+
+ <Preference
+ android:key="testConnection1"
+ android:title="@string/settings.test_connection_title"
+ android:persistent="false"/>
+
+ </PreferenceScreen>
+
+ <PreferenceScreen
+ android:key="server2">
+
+ <EditTextPreference
+ android:key="serverName2"
+ android:title="@string/settings.server_name"
+ android:defaultValue="@string/settings.server_unused1"/>
+
+ <EditTextPreference
+ android:key="serverUrl2"
+ android:title="@string/settings.server_address"
+ android:defaultValue="http://yourhost"
+ android:inputType="textUri"/>
+
+ <EditTextPreference
+ android:key="username2"
+ android:title="@string/settings.server_username"/>
+
+ <EditTextPreference
+ android:key="password2"
+ android:title="@string/settings.server_password"
+ android:password="true"
+ android:summary="****"/>
+
+ <Preference
+ android:key="testConnection2"
+ android:title="@string/settings.test_connection_title"
+ android:persistent="false"/>
+
+ </PreferenceScreen>
+
+ <PreferenceScreen
+ android:key="server3">
+
+ <EditTextPreference
+ android:key="serverName3"
+ android:title="@string/settings.server_name"
+ android:defaultValue="@string/settings.server_unused2"/>
+
+ <EditTextPreference
+ android:key="serverUrl3"
+ android:title="@string/settings.server_address"
+ android:defaultValue="http://yourhost"
+ android:inputType="textUri"/>
+
+ <EditTextPreference
+ android:key="username3"
+ android:title="@string/settings.server_username"/>
+
+ <EditTextPreference
+ android:key="password3"
+ android:title="@string/settings.server_password"
+ android:password="true"
+ android:summary="****"/>
+
+ <Preference
+ android:key="testConnection3"
+ android:title="@string/settings.test_connection_title"
+ android:persistent="false"/>
+
+ </PreferenceScreen>
+
+ </PreferenceCategory>
+
+ <PreferenceCategory
+ android:title="@string/settings.appearance_title">
+
+ <ListPreference
+ android:title="@string/settings.theme_title"
+ android:key="theme"
+ android:defaultValue="wheat"
+ android:entryValues="@array/themeValues"
+ android:entries="@array/themeNames"/>
+
+ </PreferenceCategory>
+
+ <PreferenceCategory
+ android:title="@string/settings.network_title">
+
+ <ListPreference
+ android:title="@string/settings.max_bitrate_wifi"
+ android:key="maxBitrateWifi"
+ android:defaultValue="0"
+ android:entryValues="@array/maxBitrateValues"
+ android:entries="@array/maxBitrateNames"/>
+
+ <ListPreference
+ android:title="@string/settings.max_bitrate_mobile"
+ android:key="maxBitrateMobile"
+ android:defaultValue="0"
+ android:entryValues="@array/maxBitrateValues"
+ android:entries="@array/maxBitrateNames"/>
+
+ <CheckBoxPreference
+ android:title="@string/settings.wifi_required_title"
+ android:summary="@string/settings.wifi_required_summary"
+ android:key="wifiRequiredForDownload"
+ android:defaultValue="false"/>
+
+ </PreferenceCategory>
+
+ <PreferenceCategory
+ android:title="@string/settings.cache_title">
+
+ <ListPreference
+ android:title="@string/settings.cache_size"
+ android:key="cacheSize"
+ android:defaultValue="500"
+ android:entryValues="@array/cacheSizeValues"
+ android:entries="@array/cacheSizeNames"/>
+
+ <EditTextPreference
+ android:title="@string/settings.cache_location"
+ android:key="cacheLocation"/>
+
+ <ListPreference
+ android:title="@string/settings.preload"
+ android:key="preloadCount"
+ android:defaultValue="3"
+ android:entryValues="@array/preloadCountValues"
+ android:entries="@array/preloadCountNames"/>
+
+ </PreferenceCategory>
+
+ <PreferenceCategory
+ android:title="@string/settings.other_title">
+
+ <CheckBoxPreference
+ android:title="@string/settings.scrobble_title"
+ android:summary="@string/settings.scrobble_summary"
+ android:key="scrobble"
+ android:defaultValue="false"/>
+
+ <CheckBoxPreference
+ android:title="@string/settings.hide_media_title"
+ android:summary="@string/settings.hide_media_summary"
+ android:key="hideMedia"
+ android:defaultValue="false"/>
+
+ <CheckBoxPreference
+ android:title="@string/settings.media_button_title"
+ android:summary="@string/settings.media_button_summary"
+ android:key="mediaButtons"
+ android:defaultValue="true"/>
+
+ <CheckBoxPreference
+ android:title="@string/settings.screen_lit_title"
+ android:summary="@string/settings.screen_lit_summary"
+ android:key="screenLitOnDownload"
+ android:defaultValue="true"/>
+
+ <Preference
+ android:key="clearSearchHistory"
+ android:title="@string/settings.clear_search_history"
+ android:persistent="false"/>
+
+ </PreferenceCategory>
+
+</PreferenceScreen>