android:orientation="vertical" >\r
\r
<ImageView\r
+ android:id="@+id/bottom_action_bar_control_divider"\r
android:layout_width="match_parent"\r
android:layout_height="@dimen/bottom_action_bar_divider_height"\r
android:background="@color/holo_blue_dark" />\r
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+
+ <!-- App name -->
+ <string name="app_name">Apollo</string>
+
+ <!-- Content descriptions for the Bottom Action Bar -->
+ <string name="cd_favorite">Als Favorit markieren</string>
+ <string name="cd_search">Titel durchsuchen</string>
+ <string name="cd_overflow">Weitere Optionen</string>
+ <string name="cd_bottom_action_bar_album_art">Album-Cover für diesen Titel</string>
+ <string name="cd_repeat">Titel wiederholen</string>
+ <string name="cd_previous">Vorheriger Titel</string>
+ <string name="cd_play">Abspielen und Pausieren</string>
+ <string name="cd_next">Nächster Titel</string>
+ <string name="cd_shuffle">Zufällige Wiedergabe</string>
+
+ <!-- AudioPlayer title -->
+ <string name="nowplaying">Aktueller Titel</string>
+
+ <!-- Used to indicate the number of albums for an artist -->
+ <plurals name="Nalbums">
+
+ <!-- Number of albums is one -->
+ <item quantity="one">1 Album</item>
+ <!-- Number of albums is more than one -->
+ <item quantity="other"><xliff:g id="count">%d</xliff:g> Alben</item>
+ </plurals>
+
+ <!-- Used to indicate the number of songs for an album -->
+
+ <plurals name="Nsongs">
+
+ <!-- Number of songs is one -->
+ <item quantity="one">1 Titel</item>
+ <item quantity="other"><xliff:g id="count">%d</xliff:g> Titel</item>
+ </plurals>
+
+ <!-- Toasts after adding song(s) to playlists -->
+ <plurals name="NNNtrackstoplaylist">
+
+ <!-- message shown when one song was added -->
+ <item quantity="one">1 Titel zur Wiedergabeliste hinzugefügt</item>
+ <!-- message shown when zero or more than one song was added -->
+ <item quantity="other"><xliff:g id="number" example="27">%d</xliff:g> Titel zur Wiedergabeliste hinzugefügt</item>
+ </plurals>
+
+ <!-- Headers -->
+ <string name="album_header">Alben</string>
+ <string name="track_header">Titel</string>
+
+ <!-- Options MenuItems -->
+ <string name="settings">Einstellungen</string>
+ <string name="shuffle_all">Alle zufällig anordnen</string>
+ <string name="share">Titel teilen</string>
+ <string name="play_store">Play Store</string>
+
+ <!-- Set track as ringtone -->
+ <string name="set_as_ringtone">\"<xliff:g id="name" example="Alarm Bell">%s</xliff:g>\" als Klingelton verwenden</string>
+
+ <!-- Transient popup message shown after renaming a playlist -->
+ <string name="rename_playlist">Wiedergabeliste umbenennen</string>
+
+ <!-- Shuffle and repeat messages -->
+ <string name="repeat_one">aktuellen Titel wiederholen</string>
+ <string name="repeat_all">alle Titel wiederholen</string>
+ <string name="repeat_off">Wiederholung aus</string>
+ <string name="shuffle_off">Zufällige Wiedergabe aus</string>
+ <string name="shuffle_on">Zufällige Wiedergabe an</string>
+
+ <!-- Share Intent -->
+ <string name="now_listening_to">Aktueller Titel:</string>
+ <string name="by">von</string>
+ <string name="share_track_using">Titel teilen</string>
+
+ <!-- ContextMenu items -->
+ <string name="play_all">Alle wiedergeben</string>
+ <string name="add_to_playlist">Zu Wiedergabeliste</string>
+ <string name="use_as_ringtone">Als Klingelton verwenden</string>
+ <string name="delete_playlist">Wiedergabeliste löschen</string>
+ <string name="search">Suchen</string>
+ <string name="remove">Löschen</string>
+
+ <!-- App Widgets -->
+ <string name="apollo_1x1">Apollo (1x1)</string>
+ <string name="apollo_4x1">Apollo (4x1)</string>
+ <string name="apollo_4x2">Apollo (4x2)</string>
+
+ <!-- Unknown genre name -->
+ <string name="unknown">Unbekannt</string>
+
+ <!-- Settings -->
+ <string name="about">Über Apollo</string>
+ <string name="eqalizer">Equalizer</string>
+ <string name="header_interface">Oberfläche</string>
+ <string name="themes">Designs</string>
+ <string name="apollo_themes">Apollo-Design auswählen</string>
+ <string name="select_theme">Design auswählen</string>
+ <string name="version">Apollo-Version</string>
+
+ <!-- layout Buttons -->
+ <string name="apply_theme">Design anwenden</string>
+ <string name="get_more_themes">Weitere Designs herunterladen</string>
+
+ <!-- Playlists menu -->
+ <string name="favorite">Favoriten</string>
+ <string name="queue">Zur Warteschlange hinzufügen</string>
+ <string name="new_playlist">Neue Wiedergabeliste</string>
+ <string name="new_playlist_name_template">Wiedergabeliste <xliff:g id="number">%d</xliff:g></string>
+ <string name="save">Speichern</string>
+ <string name="overwrite">Überschreiben</string>
+
+ <!-- Something went wrong -->
+ <string name="error">Fehler</string>
+
+</resources>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_name">Apollo</string>
+ <string name="cd_favorite">Marcar como favorita</string>
+ <string name="cd_search">Buscar en tu música</string>
+ <string name="cd_overflow">Ver más opciones</string>
+ <string name="cd_bottom_action_bar_album_art">Carátula para esta canción</string>
+ <string name="cd_repeat">Repetir una o todas</string>
+ <string name="cd_previous">Saltar hacia atrás</string>
+ <string name="cd_play">Reproducir y pausar</string>
+ <string name="cd_next">Saltar hacia delante</string>
+ <string name="cd_shuffle">Pistas aleatorias</string>
+ <string name="nowplaying">Reproduciendo</string>
+
+ <plurals name="Nalbums">
+ <item quantity="one">1 álbum</item>
+ <item quantity="other"><xliff:g id="count">%d</xliff:g> álbumes</item>
+ </plurals>
+
+ <plurals name="Nsongs">
+ <item quantity="one">1 canción</item>
+ <item quantity="other"><xliff:g id="count">%d</xliff:g> canciones</item>
+ </plurals>
+
+ <plurals name="NNNtrackstoplaylist">
+ <item quantity="one">1 canción añadida a la lista de reproducción</item>
+ <item quantity="other"><xliff:g id="number" example="27">%d</xliff:g> canciones añadidas a la lista de reproducción.</item>
+ </plurals>
+
+ <string name="album_header">LISTA DE ALBUMES</string>
+ <string name="track_header">LISTA DE CANCIONES</string>
+
+ <string name="settings">Ajustes</string>
+ <string name="shuffle_all">Reproducción Aleatoria</string>
+ <string name="share">Compartir</string>
+ <string name="play_store">Play Store</string>
+
+ <string name="set_as_ringtone">\"<xliff:g id="name" example="Alarm Bell">%s</xliff:g>\" establecer como tono de llamada</string>
+
+ <string name="rename_playlist">Renombrar lista de reproducción</string>
+
+ <string name="repeat_one">Repetir una</string>
+ <string name="repeat_all">Repetir todas</string>
+ <string name="repeat_off">No repetir</string>
+ <string name="shuffle_off">Modo aleatorio apagado</string>
+ <string name="shuffle_on">Modo aleatorio encendido</string>
+
+ <string name="now_listening_to">Escuchando:</string>
+ <string name="by">por</string>
+ <string name="share_track_using">Compartir canción usando</string>
+
+ <string name="play_all">Reproducir todo</string>
+ <string name="add_to_playlist">Añadir a la lista de reproducción</string>
+ <string name="use_as_ringtone">Establecer como tono de llamada</string>
+ <string name="delete_playlist">Eliminar lista de reproducción</string>
+ <string name="search">Buscar</string>
+ <string name="remove">Eliminar de la lista de reproducción</string>
+
+ <string name="apollo_1x1">Apollo (1x1)</string>
+ <string name="apollo_4x1">Apollo (4x1)</string>
+ <string name="apollo_4x2">Apollo (4x2)</string>
+
+ <string name="unknown">Desconocido</string>
+
+ <string name="about">Acerca de Apollo</string>
+ <string name="eqalizer">Ecualizador</string>
+ <string name="header_interface">Interfaz</string>
+ <string name="themes">Temas</string>
+ <string name="apollo_themes">Seleccione un tema para Apollo</string>
+ <string name="select_theme">Seleccione su tema</string>
+ <string name="version">Versión de Apollo</string>
+
+ <string name="apply_theme">Aplicar tema</string>
+ <string name="get_more_themes">Obtener más temas</string>
+
+ <string name="favorite">Favoritos</string>
+ <string name="queue">Cola</string>
+ <string name="new_playlist">Nuevo</string>
+ <string name="new_playlist_name_template">Lista de reproducción <xliff:g id="number">%d</xliff:g></string>
+ <string name="save">Guardar</string>
+ <string name="overwrite">Sobreescribir</string>
+
+ <!-- Tabs -->
+ <string name="tab_recent">RECIENTES</string>
+ <string name="tab_artists">ARTISTAS</string>
+ <string name="tab_albums">ALBUMES</string>
+ <string name="tab_songs">CANCIONES</string>
+ <string name="tab_playlists">LISTAS</string>
+ <string name="tab_genres">GENEROS</string>
+
+ <string name="error">Error</string>
+
+</resources>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>\r
+<!-- Copyright (C) 2012 The CyanogenMod Project\r
+\r
+ Licensed under the Apache License, Version 2.0 (the "License");\r
+ you may not use this file except in compliance with the License.\r
+ You may obtain a copy of the License at\r
+\r
+ http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+ Unless required by applicable law or agreed to in writing, software\r
+ distributed under the License is distributed on an "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ See the License for the specific language governing permissions and\r
+ limitations under the License.\r
+-->\r
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">\r
+ <string name="app_name">Apollo</string>\r
+ <string name="cd_favorite">Aggiungi questa canzone ai preferiti</string>\r
+ <string name="cd_search">Cerca nella tua musica</string>\r
+ <string name="cd_overflow">Visualizza più opzioni</string>\r
+ <string name="cd_bottom_action_bar_album_art">Copertina Album di questa canzone</string>\r
+ <string name="cd_repeat">Ripeti una o tutte</string>\r
+ <string name="cd_previous">Traccia precedente</string>\r
+ <string name="cd_play">Play e pausa</string>\r
+ <string name="cd_next">Traccia successiva</string>\r
+ <string name="cd_shuffle">Riproduzione casuale</string>\r
+ <string name="nowplaying">In esecuzione</string>\r
+ <plurals name="Nalbums">\r
+ <item quantity="one">Un album</item>\r
+ <item quantity="other"><xliff:g id="count">%d</xliff:g> album</item>\r
+ </plurals>\r
+ <plurals name="Nsongs">\r
+ <item quantity="one">Una canzone</item>\r
+ <item quantity="other"><xliff:g id="count">%d</xliff:g> canzoni</item>\r
+ </plurals>\r
+ <plurals name="NNNtrackstoplaylist">\r
+ <item quantity="one">Una canzone aggiunta alla playlist</item>\r
+ <item quantity="other"><xliff:g id="number" example="27">%d</xliff:g> canzoni aggiunte alla playlist</item>\r
+ </plurals>\r
+ <string name="album_header">ALBUM</string>\r
+ <string name="track_header">TRACCE</string>\r
+ <string name="settings">Impostazioni</string>\r
+ <string name="shuffle_all">Riproduzione casuale</string>\r
+ <string name="share">Condividi</string>\r
+ <string name="play_store">Play Store</string>\r
+ <string name="set_as_ringtone">\"<xliff:g id="name" example="Alarm Bell">%s</xliff:g>\" imposta come suoneria</string>\r
+ <string name="rename_playlist">Rinomina playlist</string>\r
+ <string name="repeat_one">Ripeti una volta</string>\r
+ <string name="repeat_all">Ripeti tutti</string>\r
+ <string name="repeat_off">Ripeti disattivato</string>\r
+ <string name="shuffle_off">Riproduzione casuale disattivata</string>\r
+ <string name="shuffle_on">Riproduzione casuale attivata</string>\r
+ <string name="now_listening_to">Stai ascoltando:</string>\r
+ <string name="by">by</string>\r
+ <string name="share_track_using">Condividi canzone usando</string>\r
+ <string name="play_all">Riproduci tutti</string>\r
+ <string name="add_to_playlist">Aggiungi alla playlist</string>\r
+ <string name="use_as_ringtone">Usa come suoneria</string>\r
+ <string name="delete_playlist">Cancella playlist</string>\r
+ <string name="search">Cerca</string>\r
+ <string name="remove">Rimuovi dalla playlist</string>\r
+ <string name="apollo_1x1">Apollo (1x1)</string>\r
+ <string name="apollo_4x1">Apollo (4x1)</string>\r
+ <string name="apollo_4x2">Apollo (4x2)</string>\r
+ <string name="unknown">Sconosciuto</string>\r
+ <string name="about">About Apollo</string>\r
+ <string name="eqalizer">Equalizzatore</string>\r
+ <string name="header_interface">Interfaccia</string>\r
+ <string name="themes">Temi</string>\r
+ <string name="apollo_themes">Seleziona un tema per Apollo</string>\r
+ <string name="select_theme">Seleziona il tema</string>\r
+ <string name="version">Versione Apollo</string>\r
+ <string name="apply_theme">Applica tema</string>\r
+ <string name="get_more_themes">Ottieni altri temi</string>\r
+ <string name="favorite">Preferiti</string>\r
+ <string name="queue">Coda</string>\r
+ <string name="new_playlist">Nuova</string>\r
+ <string name="new_playlist_name_template">Playlist <xliff:g id="number">%d</xliff:g></string>\r
+ <string name="save">Salva</string>\r
+ <string name="overwrite">Sovrascrivi</string>\r
+ <string name="tab_recent">RECENTI</string>\r
+ <string name="tab_artists">ARTISTI</string>\r
+ <string name="tab_albums">ALBUM</string>\r
+ <string name="tab_songs">TRACCE</string>\r
+ <string name="tab_playlists">PLAYLIST</string>\r
+ <string name="tab_genres">GENERI</string>\r
+ <string name="error">Errore</string>\r
+</resources>\r
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+
+<resources>
+
+ <string-array name="tab_titles">
+ <item>@string/tab_recent</item>
+ <item>@string/tab_artists</item>
+ <item>@string/tab_albums</item>
+ <item>@string/tab_songs</item>
+ <item>@string/tab_playlists</item>
+ <item>@string/tab_genres</item>
+ </string-array>
+
+</resources>
<string name="version">Apollo Version</string>\r
\r
<!-- Settings keys -->\r
- <string name="key_themes">themepreview</string>\r
- <string name="key_themes_package">themePackageName</string>\r
- <string name="key_themes_preferences">themePrefences</string>\r
- <string name="key_build_version">build_version</string>\r
+ <string name="key_themes" translatable="false">themepreview</string>\r
+ <string name="key_themes_package" translatable="false">themePackageName</string>\r
+ <string name="key_themes_preferences" translatable="false">themePrefences</string>\r
+ <string name="key_build_version" translatable="false">build_version</string>\r
\r
<!-- Theme layout Buttons -->\r
<string name="apply_theme">Apply theme</string>\r
<string name="save">Save</string>\r
<string name="overwrite">Overwrite</string>\r
\r
+ <!-- Tabs -->\r
+ <string name="tab_recent">RECENT</string>\r
+ <string name="tab_artists">ARTISTS</string>\r
+ <string name="tab_albums">ALBUMS</string>\r
+ <string name="tab_songs">SONGS</string>\r
+ <string name="tab_playlists">PLAYLISTS</string>\r
+ <string name="tab_genres">GENRES</string>\r
+\r
<!-- Something went wrong -->\r
<string name="error">Error</string>\r
\r
-</resources>
\ No newline at end of file
+</resources>\r
import android.view.View.OnClickListener;\r
import android.view.ViewGroup;\r
import android.widget.ImageButton;\r
+import android.widget.ImageView;\r
import android.widget.Toast;\r
\r
import com.andrew.apollo.service.ApolloService;\r
\r
private ImageButton mRepeat, mPrev, mPlay, mNext, mShuffle;\r
\r
+ private ImageView mDivider;\r
+\r
// Notify if repeat or shuffle changes\r
private Toast mToast;\r
\r
toggleShuffle();\r
}\r
});\r
+\r
+ mDivider = (ImageView)root.findViewById(R.id.bottom_action_bar_control_divider);\r
// Theme chooser\r
ThemeUtils.setImageButton(getActivity(), mPrev, "apollo_previous");\r
ThemeUtils.setImageButton(getActivity(), mNext, "apollo_next");\r
+ ThemeUtils.setBackgroundColor(getActivity(), mDivider, "bottom_action_bar_info_divider");\r
return root;\r
}\r
\r
// Last.fm API\r
public String LASTFM_API_KEY = "0bec3f7ec1f914d7c960c12a916c8fb3";\r
\r
- // Tab titles\r
- public String[] mTitles = {\r
- "RECENT", "ARTISTS", "ALBUMS", "SONGS", "PLAYLISTS", "GENRES"\r
- };\r
-\r
// SharedPreferences\r
public String APOLLO = "Apollo", APOLLO_PREFERENCES = "apollopreferences",\r
ARTIST_IMAGE = "artistimage", ARTIST_IMAGE_ORIGINAL = "artistimageoriginal",\r
import com.andrew.apollo.R;\r
import com.andrew.apollo.utils.ThemeUtils;\r
\r
-public class ScrollingTabsAdapter implements TabAdapter, Constants {\r
+public class ScrollingTabsAdapter implements TabAdapter {\r
\r
private final FragmentActivity activity;\r
\r
\r
@Override\r
public View getView(int position) {\r
-\r
LayoutInflater inflater = activity.getLayoutInflater();\r
final Button tab = (Button)inflater.inflate(R.layout.tabs, null);\r
+ final String[] mTitles = activity.getResources().getStringArray(R.array.tab_titles);\r
\r
if (position < mTitles.length)\r
tab.setText(mTitles[position]);\r
@Override\r
public void onReceive(Context context, Intent intent) {\r
if (mGridView != null) {\r
- mGridView.invalidateViews();\r
+ mAlbumAdapter.notifyDataSetChanged();\r
}\r
}\r
\r
@Override\r
public void onReceive(Context context, Intent intent) {\r
if (mGridView != null) {\r
- mGridView.invalidateViews();\r
+ mArtistAdapter.notifyDataSetChanged();\r
}\r
}\r
\r
@Override\r
public void onReceive(Context context, Intent intent) {\r
if (mGridView != null) {\r
- mGridView.invalidateViews();\r
+ mQuickQueueAdapter.notifyDataSetChanged();\r
// Scroll to the currently playing track in the queue\r
mGridView.postDelayed(new Runnable() {\r
@Override\r
@Override\r
public void onReceive(Context context, Intent intent) {\r
if (mListView != null) {\r
- mListView.invalidateViews();\r
+ mArtistAlbumAdapter.notifyDataSetChanged();\r
}\r
}\r
\r
@Override\r
public void onReceive(Context context, Intent intent) {\r
if (mListView != null) {\r
- mListView.invalidateViews();\r
+ mRecentlyAddedAdapter.notifyDataSetChanged();\r
}\r
}\r
\r
if (Audio.Albums.CONTENT_TYPE.equals(mimeType)) {\r
long albumId = getArguments().getLong(BaseColumns._ID);\r
where.append(" AND " + AudioColumns.ALBUM_ID + "=" + albumId);\r
- sortOrder = Audio.Albums.DEFAULT_SORT_ORDER;\r
+ sortOrder = Audio.Media.TRACK + ", " + sortOrder;\r
} else if (Audio.Artists.CONTENT_TYPE.equals(mimeType)) {\r
sortOrder = MediaColumns.TITLE;\r
long artist_id = getArguments().getLong(BaseColumns._ID);\r
@Override\r
public void onReceive(Context context, Intent intent) {\r
if (mListView != null) {\r
- mListView.invalidateViews();\r
+ mTrackAdapter.notifyDataSetChanged();\r
// Scroll to the currently playing track in the queue\r
if (mPlaylistId == PLAYLIST_QUEUE)\r
mListView.postDelayed(new Runnable() {\r