Reorganized settings, added more options to customize the now playing screen, added gradients to make UI elements visible on light album covers, fixed a bug with cardview background, fixed typos, increased version code, synced strings,

This commit is contained in:
Karim Abou Zeid 2015-06-10 23:02:14 +02:00
commit a87320fcc9
43 changed files with 607 additions and 135 deletions

View file

@ -27,8 +27,8 @@ android {
applicationId "com.kabouzeid.gramophone"
minSdkVersion 16
targetSdkVersion 22
versionCode 31
versionName "0.9.15b DEV"
versionCode 32
versionName "0.9.17b dev-1"
}
buildTypes {

View file

@ -2,6 +2,7 @@ package com.kabouzeid.gramophone.ui.activities;
import android.animation.Animator;
import android.content.Intent;
import android.content.res.ColorStateList;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Color;
@ -9,8 +10,10 @@ import android.graphics.PorterDuff;
import android.os.Build;
import android.os.Bundle;
import android.support.v7.graphics.Palette;
import android.support.v7.widget.CardView;
import android.support.v7.widget.Toolbar;
import android.transition.Transition;
import android.util.TypedValue;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
@ -71,31 +74,44 @@ public class MusicControllerActivity extends AbsFabActivity {
private ImageButton repeatButton;
private ImageButton shuffleButton;
private View mediaControllerContainer;
private CardView playbackControllerCard;
private Toolbar toolbar;
private int lastFooterColor = -1;
private int lastTextColor = -2;
private boolean killThreads = false;
private boolean opaqueToolBar = PreferenceUtils.getInstance(this).opaqueToolbarNowPlaying();
private boolean forceSquareAlbumArt = PreferenceUtils.getInstance(this).forceAlbumArtSquared();
private final boolean opaqueStatusBar = PreferenceUtils.getInstance(this).opaqueStatusbarNowPlaying();
private final boolean opaqueToolBar = opaqueStatusBar && PreferenceUtils.getInstance(this).opaqueToolbarNowPlaying();
private final boolean forceSquareAlbumArt = PreferenceUtils.getInstance(this).forceAlbumArtSquared();
private final boolean smallerTitleBox = PreferenceUtils.getInstance(this).smallerTitileBoxNowPlaying();
private final boolean traditionalProgressSlider = PreferenceUtils.getInstance(this).traditionalProgressSliderNowPlaying();
private final boolean showPlaybackControllerCard = PreferenceUtils.getInstance(this).playbackControllerCardNowPlaying();
@Override
protected void onCreate(Bundle savedInstanceState) {
setStatusBarTransparent();
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_music_controller);
setContentView(traditionalProgressSlider ? R.layout.activity_music_controller_traditional_progress_slider : R.layout.activity_music_controller);
initViews();
albumArtBackground.setAlpha(0.7f);
moveSeekBarIntoPlace();
adjustTitleBoxSize();
setUpPlaybackControllerCard();
setUpMusicControllers();
albumArtBackground.setAlpha(0.7f);
albumArt.forceSquare(forceSquareAlbumArt);
setToolbarOpaque(opaqueToolBar);
if (opaqueStatusBar) {
if (opaqueToolBar) {
alignAlbumArtToToolbar();
} else {
alignAlbumArtToStatusBar();
}
} else {
alignAlbumArtToTop();
}
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
@ -133,11 +149,29 @@ public class MusicControllerActivity extends AbsFabActivity {
private void moveSeekBarIntoPlace() {
// RelativeLayout.LayoutParams lp = (RelativeLayout.LayoutParams) progressSlider.getLayoutParams();
// progressSlider.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
// final int seekBarMarginLeftRight = getResources().getDimensionPixelSize(R.dimen.seek_bar_margin_left_right);
// lp.setMargins(seekBarMarginLeftRight, 0, seekBarMarginLeftRight, -(progressSlider.getMeasuredHeight() / 2));
// progressSlider.setLayoutParams(lp);
if (traditionalProgressSlider) {
RelativeLayout.LayoutParams lp = (RelativeLayout.LayoutParams) progressSlider.getLayoutParams();
progressSlider.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
final int seekBarMarginLeftRight = getResources().getDimensionPixelSize(R.dimen.seek_bar_margin_left_right);
lp.setMargins(seekBarMarginLeftRight, 0, seekBarMarginLeftRight, -(progressSlider.getMeasuredHeight() / 2));
progressSlider.setLayoutParams(lp);
}
}
private void adjustTitleBoxSize() {
int paddingTopBottom = smallerTitleBox ? getResources().getDimensionPixelSize(R.dimen.title_box_padding_small) : getResources().getDimensionPixelSize(R.dimen.title_box_padding_large);
footer.setPadding(footer.getPaddingLeft(), paddingTopBottom, footer.getPaddingRight(), paddingTopBottom);
songTitle.setPadding(songTitle.getPaddingLeft(), songTitle.getPaddingTop(), songTitle.getPaddingRight(), smallerTitleBox ? getResources().getDimensionPixelSize(R.dimen.title_box_text_spacing_small) : getResources().getDimensionPixelSize(R.dimen.title_box_text_spacing_large));
songArtist.setPadding(songArtist.getPaddingLeft(), smallerTitleBox ? getResources().getDimensionPixelSize(R.dimen.title_box_text_spacing_small) : getResources().getDimensionPixelSize(R.dimen.title_box_text_spacing_large), songArtist.getPaddingRight(), songArtist.getPaddingBottom());
songTitle.setTextSize(TypedValue.COMPLEX_UNIT_PX, smallerTitleBox ? getResources().getDimensionPixelSize(R.dimen.title_box_title_text_size_small) : getResources().getDimensionPixelSize(R.dimen.title_box_title_text_size_large));
songArtist.setTextSize(TypedValue.COMPLEX_UNIT_PX, smallerTitleBox ? getResources().getDimensionPixelSize(R.dimen.title_box_caption_text_size_small) : getResources().getDimensionPixelSize(R.dimen.title_box_caption_text_size_large));
}
private void setUpPlaybackControllerCard(){
playbackControllerCard.setVisibility(showPlaybackControllerCard ? View.VISIBLE : View.GONE);
mediaControllerContainer.setBackgroundColor(showPlaybackControllerCard ? Color.TRANSPARENT : Util.resolveColor(this, R.attr.music_controller_container_color));
}
private void initViews() {
@ -155,6 +189,7 @@ public class MusicControllerActivity extends AbsFabActivity {
progressSlider = (SeekBar) findViewById(R.id.progress_slider);
mediaControllerContainer = findViewById(R.id.media_controller_container);
toolbar = (Toolbar) findViewById(R.id.toolbar);
playbackControllerCard = (CardView) findViewById(R.id.playback_controller_card);
}
private void setUpMusicControllers() {
@ -164,8 +199,16 @@ public class MusicControllerActivity extends AbsFabActivity {
setUpProgressSlider();
}
private static void setTint(SeekBar seekBar, int color) {
seekBar.getThumb().setColorFilter(color, PorterDuff.Mode.SRC_IN);
private void setTint(SeekBar seekBar, int color) {
ColorStateList s1 = ColorStateList.valueOf(color);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
seekBar.setThumbTintList(s1);
if (traditionalProgressSlider) seekBar.setProgressTintList(s1);
} else {
seekBar.getThumb().setColorFilter(color, PorterDuff.Mode.SRC_IN);
if (traditionalProgressSlider)
seekBar.getProgressDrawable().setColorFilter(color, PorterDuff.Mode.SRC_IN);
}
}
private void setUpProgressSlider() {
@ -341,9 +384,6 @@ public class MusicControllerActivity extends AbsFabActivity {
animateColorChange(defaultBarColor);
animateTextColorChange(textColor);
currentSongProgress.setTextColor(DialogUtils.resolveColor(MusicControllerActivity.this, R.attr.themed_drawable_color));
totalSongDuration.setTextColor(DialogUtils.resolveColor(MusicControllerActivity.this, R.attr.themed_drawable_color));
notifyTaskColorChange(defaultBarColor);
}
@ -363,7 +403,7 @@ public class MusicControllerActivity extends AbsFabActivity {
}
setTint(progressSlider, !ThemeSingleton.get().darkTheme && getThemeColorAccent() == Color.WHITE ? Color.BLACK : getThemeColorAccent());
if (opaqueToolBar) setStatusBarColor(newColor);
if (opaqueStatusBar) setStatusBarColor(newColor);
else setStatusBarColor(Color.TRANSPARENT);
if (Util.isAtLeastLollipop() && PreferenceUtils.getInstance(this).coloredNavigationBarCurrentPlayingEnabled())
@ -498,16 +538,24 @@ public class MusicControllerActivity extends AbsFabActivity {
return super.onOptionsItemSelected(item);
}
private void setToolbarOpaque(boolean toolbarOpaque) {
private void alignAlbumArtToTop() {
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) findViewById(R.id.album_art_frame).getLayoutParams();
if (!toolbarOpaque) {
if (Build.VERSION.SDK_INT > 16) {
params.removeRule(RelativeLayout.BELOW);
} else {
params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT);
params.addRule(RelativeLayout.ABOVE, R.id.footer_frame);
}
} else params.addRule(RelativeLayout.BELOW, R.id.toolbar_frame);
if (Build.VERSION.SDK_INT > 16) {
params.removeRule(RelativeLayout.BELOW);
} else {
params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT);
params.addRule(RelativeLayout.ABOVE, R.id.footer_frame);
}
}
private void alignAlbumArtToToolbar() {
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) findViewById(R.id.album_art_frame).getLayoutParams();
params.addRule(RelativeLayout.BELOW, R.id.toolbar);
}
private void alignAlbumArtToStatusBar() {
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) findViewById(R.id.album_art_frame).getLayoutParams();
params.addRule(RelativeLayout.BELOW, R.id.status_bar);
}
}

View file

@ -65,7 +65,8 @@ public class SettingsActivity extends AbsBaseActivity implements ColorChooserDia
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.pref_general);
addPreferencesFromResource(R.xml.pref_ui);
addPreferencesFromResource(R.xml.pref_colors);
addPreferencesFromResource(R.xml.pref_now_playing_screen);
addPreferencesFromResource(R.xml.pref_audio);
final Preference defaultStartPage = findPreference("default_start_page");

View file

@ -87,7 +87,7 @@ public abstract class AbsTagEditorActivity extends AbsBaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(getContentViewResId());
setContentView(getContentViewLayout());
getIntentExtras();
@ -206,7 +206,7 @@ public abstract class AbsTagEditorActivity extends AbsBaseActivity {
}
}
protected abstract int getContentViewResId();
protected abstract int getContentViewLayout();
protected abstract List<String> getSongPaths();

View file

@ -167,7 +167,7 @@ public class AlbumTagEditorActivity extends AbsTagEditorActivity implements Text
}
@Override
protected int getContentViewResId() {
protected int getContentViewLayout() {
return R.layout.activity_album_tag_editor;
}

View file

@ -101,7 +101,7 @@ public class SongTagEditorActivity extends AbsTagEditorActivity implements TextW
}
@Override
protected int getContentViewResId() {
protected int getContentViewLayout() {
return R.layout.activity_song_tag_editor;
}

View file

@ -35,7 +35,11 @@ public final class PreferenceUtils {
public static final String ALBUM_GRID_COLUMNS = "album_grid_columns";
public static final String ALBUM_GRID_COLUMNS_LAND = "album_grid_columns_land";
public static final String OPAQUE_TOOLBAR_NOW_PLAYING = "opaque_toolbar_now_playing";
public static final String OPAQUE_STATUSBAR_NOW_PLAYING = "opaque_statusbar_now_playing";
public static final String FORCE_SQUARE_ALBUM_ART = "force_square_album_art";
public static final String SMALLER_TITLE_BOX_NOW_PLAYING = "smaller_title_box_now_playing";
public static final String TRADITIONAL_PROGRESS_SLIDER_NOW_PLAYING = "traditional_progress_slider_now_playing";
public static final String PLAYBACK_CONTROLLER_CARD_NOW_PLAYING = "playback_controller_card_now_playing";
private static PreferenceUtils sInstance;
@ -159,6 +163,10 @@ public final class PreferenceUtils {
// mPreferences.edit().putBoolean(COLORED_NAVIGATION_BAR_OTHER_SCREENS, coloredNavbar).commit();
// }
public final boolean opaqueStatusbarNowPlaying() {
return mPreferences.getBoolean(OPAQUE_STATUSBAR_NOW_PLAYING, false);
}
public final boolean opaqueToolbarNowPlaying() {
return mPreferences.getBoolean(OPAQUE_TOOLBAR_NOW_PLAYING, false);
}
@ -167,6 +175,18 @@ public final class PreferenceUtils {
return mPreferences.getBoolean(FORCE_SQUARE_ALBUM_ART, false);
}
public final boolean playbackControllerCardNowPlaying() {
return mPreferences.getBoolean(PLAYBACK_CONTROLLER_CARD_NOW_PLAYING, false);
}
public final boolean smallerTitileBoxNowPlaying() {
return mPreferences.getBoolean(SMALLER_TITLE_BOX_NOW_PLAYING, false);
}
public final boolean traditionalProgressSliderNowPlaying() {
return mPreferences.getBoolean(TRADITIONAL_PROGRESS_SLIDER_NOW_PLAYING, false);
}
// public final boolean downloadMissingArtistImages() {
// return mPreferences.getBoolean(DOWNLOAD_MISSING_ARTIST_IMAGES, true);
// }

View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<size
android:height="16dp"
android:width="16dp" />
<solid android:color="@color/black" />
</shape>

View file

@ -69,6 +69,8 @@
</LinearLayout>
<include layout="@layout/shadow_statusbar_actionbar" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"

View file

@ -128,6 +128,11 @@
</com.github.ksoichiro.android.observablescrollview.ObservableScrollView>
<View
android:layout_width="match_parent"
android:layout_height="?actionBarSize"
android:background="@drawable/shadow_down" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
style="@style/Toolbar"

View file

@ -70,6 +70,8 @@
</LinearLayout>
<include layout="@layout/shadow_statusbar_actionbar" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"

View file

@ -3,6 +3,7 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context="com.kabouzeid.gramophone.ui.activities.MusicControllerActivity">
<!-- BOTTOM-->
@ -68,10 +69,10 @@
android:background="?default_bar_color"
android:elevation="@dimen/toolbar_elevation"
android:orientation="vertical"
android:paddingBottom="32dp"
android:paddingBottom="@dimen/title_box_padding_large"
android:paddingLeft="72dp"
android:paddingRight="72dp"
android:paddingTop="32dp"
android:paddingTop="@dimen/title_box_padding_large"
android:transitionName="@string/transition_album_text"
tools:ignore="UnusedAttribute">
@ -82,19 +83,16 @@
android:fontFamily="sans-serif-medium"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Title"
android:textColor="?attr/title_text_color"
android:textSize="24sp" />
android:textColor="?attr/title_text_color" />
<TextView
android:id="@+id/song_artist"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="sans-serif"
android:paddingTop="4dp"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Caption"
android:textColor="?attr/caption_text_color"
android:textSize="14sp" />
android:textColor="?attr/caption_text_color" />
</LinearLayout>
@ -103,17 +101,24 @@
android:layout_width="match_parent"
android:layout_height="@dimen/media_controller_container_height"
android:background="?music_controller_container_color"
android:paddingLeft="16dp"
android:paddingRight="16dp"
tools:ignore="ContentDescription,UnusedAttribute">
<android.support.v7.widget.CardView
app:cardBackgroundColor="?music_controller_container_color"
android:id="@+id/playback_controller_card"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="16dp" />
<ImageButton
android:elevation="8dp"
android:id="@+id/prev_button"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_centerVertical="true"
android:layout_marginEnd="-8dp"
android:layout_marginRight="-8dp"
android:layout_marginEnd="@dimen/tmp_now_playing_skip_rewind_margin"
android:layout_marginRight="@dimen/tmp_now_playing_skip_rewind_margin"
android:layout_toLeftOf="@+id/fab"
android:layout_toStartOf="@+id/fab"
android:background="?round_selector"
@ -122,12 +127,13 @@
android:src="@drawable/ic_skip_previous_white_48dp" />
<ImageButton
android:elevation="8dp"
android:id="@+id/next_button"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_centerVertical="true"
android:layout_marginLeft="-8dp"
android:layout_marginStart="-8dp"
android:layout_marginLeft="@dimen/tmp_now_playing_skip_rewind_margin"
android:layout_marginStart="@dimen/tmp_now_playing_skip_rewind_margin"
android:layout_toEndOf="@+id/fab"
android:layout_toRightOf="@+id/fab"
android:background="?round_selector"
@ -136,28 +142,30 @@
android:src="@drawable/ic_skip_next_white_48dp" />
<ImageButton
android:elevation="8dp"
android:id="@+id/repeat_button"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginLeft="8dp"
android:layout_marginStart="8dp"
android:layout_marginLeft="24dp"
android:layout_marginStart="24dp"
android:background="?round_selector"
android:padding="22dp"
android:scaleType="fitCenter"
android:src="@drawable/ic_repeat_white_48dp" />
<ImageButton
android:elevation="8dp"
android:id="@+id/shuffle_button"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:layout_marginEnd="24dp"
android:layout_marginRight="24dp"
android:background="?round_selector"
android:padding="22dp"
android:scaleType="fitCenter"
@ -167,7 +175,7 @@
android:id="@+id/fab"
style="@style/PlayPauseFab"
android:layout_centerInParent="true"
android:layout_margin="@dimen/tmp_no_fab_margin" />
android:layout_margin="0dp" />
</RelativeLayout>
@ -202,18 +210,16 @@
<!-- TOOLBAR-->
<LinearLayout
android:id="@+id/toolbar_frame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<include layout="@layout/shadow_statusbar_actionbar" />
<include layout="@layout/status_bar" />
<include
android:id="@+id/status_bar"
layout="@layout/status_bar" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
style="@style/Toolbar"
android:background="#00000000" />
</LinearLayout>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
style="@style/Toolbar"
android:layout_below="@id/status_bar"
android:background="#00000000" />
</RelativeLayout>

View file

@ -0,0 +1,225 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.kabouzeid.gramophone.ui.activities.MusicControllerActivity">
<!-- BOTTOM-->
<LinearLayout
android:id="@+id/footer_frame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="?android:colorBackground"
android:orientation="vertical">
<LinearLayout
android:id="@+id/footer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?default_bar_color"
android:elevation="@dimen/toolbar_elevation"
android:orientation="vertical"
android:paddingBottom="@dimen/title_box_padding_large"
android:paddingLeft="72dp"
android:paddingRight="72dp"
android:paddingTop="@dimen/title_box_padding_large"
android:transitionName="@string/transition_album_text"
tools:ignore="UnusedAttribute">
<TextView
android:id="@+id/song_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-medium"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Title"
android:textColor="?attr/title_text_color" />
<TextView
android:id="@+id/song_artist"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="sans-serif"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Caption"
android:textColor="?attr/caption_text_color" />
</LinearLayout>
<RelativeLayout
android:id="@+id/media_controller_container"
android:layout_width="match_parent"
android:layout_height="@dimen/media_controller_container_height"
android:background="?music_controller_container_color"
tools:ignore="ContentDescription,UnusedAttribute">
<android.support.v7.widget.CardView
app:cardBackgroundColor="?music_controller_container_color"
android:id="@+id/playback_controller_card"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="16dp" />
<ImageButton
android:elevation="8dp"
android:id="@+id/prev_button"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/tmp_now_playing_skip_rewind_margin"
android:layout_marginRight="@dimen/tmp_now_playing_skip_rewind_margin"
android:layout_toLeftOf="@+id/fab"
android:layout_toStartOf="@+id/fab"
android:background="?round_selector"
android:padding="22dp"
android:scaleType="fitCenter"
android:src="@drawable/ic_skip_previous_white_48dp" />
<ImageButton
android:elevation="8dp"
android:id="@+id/next_button"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/tmp_now_playing_skip_rewind_margin"
android:layout_marginStart="@dimen/tmp_now_playing_skip_rewind_margin"
android:layout_toEndOf="@+id/fab"
android:layout_toRightOf="@+id/fab"
android:background="?round_selector"
android:padding="22dp"
android:scaleType="fitCenter"
android:src="@drawable/ic_skip_next_white_48dp" />
<ImageButton
android:elevation="8dp"
android:id="@+id/repeat_button"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginLeft="24dp"
android:layout_marginStart="24dp"
android:background="?round_selector"
android:padding="22dp"
android:scaleType="fitCenter"
android:src="@drawable/ic_repeat_white_48dp" />
<ImageButton
android:elevation="8dp"
android:id="@+id/shuffle_button"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginEnd="24dp"
android:layout_marginRight="24dp"
android:background="?round_selector"
android:padding="22dp"
android:scaleType="fitCenter"
android:src="@drawable/ic_shuffle_white_48dp" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
style="@style/PlayPauseFab"
android:layout_centerInParent="true"
android:layout_margin="0dp" />
</RelativeLayout>
</LinearLayout>
<!-- ALBUMART-->
<FrameLayout
android:id="@+id/album_art_frame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/footer_frame"
android:background="@color/black">
<ImageView
android:id="@+id/album_art_background"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
tools:ignore="ContentDescription" />
<com.kabouzeid.gramophone.views.SquareIfPlaceImageView
android:id="@+id/album_art"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:scaleType="centerCrop"
android:src="@drawable/default_album_art"
android:transitionName="@string/transition_album_cover"
tools:ignore="ContentDescription,UnusedAttribute" />
<RelativeLayout
android:id="@+id/progress_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="@drawable/shadow_up">
<TextView
android:id="@+id/song_current_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:fontFamily="sans-serif-medium"
android:gravity="center_vertical|left|end"
android:padding="16dp"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Title"
android:textColor="@android:color/white"
android:textSize="16sp"
tools:ignore="RtlHardcoded,RtlSymmetry,SmallSp" />
<TextView
android:id="@+id/song_total_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:fontFamily="sans-serif-medium"
android:gravity="center_vertical|right|end"
android:padding="16dp"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.AppCompat.Title"
android:textColor="@android:color/white"
android:textSize="16sp"
tools:ignore="RtlHardcoded,RtlSymmetry,SmallSp" />
</RelativeLayout>
</FrameLayout>
<!-- PROGRESS SLIDER-->
<SeekBar
android:id="@+id/progress_slider"
style="@style/TraditionalMusicProgressSlider"
android:layout_above="@+id/footer_frame"
android:elevation="2dp"
tools:ignore="UnusedAttribute" />
<!-- TOOLBAR-->
<include layout="@layout/shadow_statusbar_actionbar" />
<include
android:id="@+id/status_bar"
layout="@layout/status_bar" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
style="@style/Toolbar"
android:layout_below="@id/status_bar"
android:background="#00000000" />
</RelativeLayout>

View file

@ -5,11 +5,11 @@
android:layout_height="148dp"
android:layout_marginRight="8dp"
android:layout_marginEnd="8dp"
app:cardBackgroundColor="?default_bar_color"
app:elevation="3dp"
android:foreground="?rect_selector">
<LinearLayout
android:background="?default_bar_color"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

View file

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:orientation="vertical"
android:id="@+id/dummy_statusbar_actionbar"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<View
android:layout_width="match_parent"
android:layout_height="@dimen/status_bar_padding" />
<View
android:layout_width="match_parent"
android:layout_height="?actionBarSize" />
</LinearLayout>
<View
android:layout_alignBottom="@id/dummy_statusbar_actionbar"
android:layout_alignTop="@id/dummy_statusbar_actionbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/shadow_down" />
</RelativeLayout>

View file

@ -77,7 +77,6 @@
<string name="light_theme_name">فاتح</string>
<string name="dark_theme_name">داكن</string>
<string name="equalizer">المعادل</string>
<string name="pref_header_ui">واجهة المستخدم</string>
<string name="pref_title_general_theme">الثيم العام</string>
<string name="pref_header_audio">الصوت</string>
<string name="pref_header_general">عام</string>

View file

@ -73,7 +73,6 @@
<string name="light_theme_name">Světlý</string>
<string name="dark_theme_name">Tmavý</string>
<string name="equalizer">Ekvalizér</string>
<string name="pref_header_ui">Prostředí</string>
<string name="pref_title_general_theme">Motiv</string>
<string name="pref_header_audio">Zvuk</string>
<string name="pref_header_general">Všeobecné</string>

View file

@ -96,7 +96,8 @@ Willst du <b>%1$d</b> Titel aus der Playlist entfernen?
<string name="light_theme_name">Hell</string>
<string name="dark_theme_name">Dunkel</string>
<string name="equalizer">Equalizer</string>
<string name="pref_header_ui">Oberfläche</string>
<string name="pref_header_colors">Farben</string>
<string name="pref_header_now_playing_screen">Now Playing Ansicht</string>
<string name="pref_title_general_theme">Generelles Design</string>
<string name="pref_header_audio">Audio</string>
<string name="pref_header_general">Generell</string>
@ -112,6 +113,11 @@ Willst du <b>%1$d</b> Titel aus der Playlist entfernen?
<string name="pref_title_colored_navigation_bar_other_screens">Überall sonst</string>
<string name="pref_title_colored_album_footers">Farbige Balken unter den Alben</string>
<string name="pref_title_force_square_album_art">Quadratisches Album Cover erzwingen</string>
<string name="pref_title_opaque_toolbar_now_playing">Undurchsichtige Toolbar</string>
<string name="pref_title_opaque_statusbar_now_playing">Undurchsichtige Statusbar</string>
<string name="pref_title_smaller_title_box_now_playing">Kleinere Titel Box</string>
<string name="pref_title_traditional_progress_slider_now_playing">Traditioneller Progress Slider</string>
<string name="pref_title_playback_controller_card_now_playing">Zeige Karte unter wiedergabe Bedienelementen</string>
<string name="no_equalizer">Es wurde kein Equalizer gefunden</string>
<string name="no_audio_ID">"Keine Audio ID, spiele etwas ab und versuche es erneut."</string>
<string name="navigation_drawer_open">Öffne Navigation Drawer</string>
@ -139,6 +145,11 @@ Willst du <b>%1$d</b> Titel aus der Playlist entfernen?
<string name="pref_only_lollipop">"Nur auf Android Lollipop verfügbar"</string>
<string name="pref_summary_colored_album_footers">"Die Titel der Alben im Raster passend zu ihrer Cover Farbe färben."</string>
<string name="pref_summary_force_square_album_art">Das Album Cover in der now playing Ansicht wird gezwungen quadratisch zu sein</string>
<string name="pref_summary_opaque_toolbar_now_playing">Die Toolbar ist undurchsichtig und bedeckt nicht das Album Cover.</string>
<string name="pref_summary_opaque_statusbar_now_playing">Die Statusbar ist undurchsichtig und bedeckt nicht das Album Cover.</string>
<string name="pref_summary_smaller_title_box_now_playing">Die Box unter dem Album Cover wo der Song Titel und Interpret ist ist kleiner.</string>
<string name="pref_summary_traditional_progress_slider_now_playing">Benutzt den normalen Progress Slider anstatt der kleinen Leiste unter dem Album Cover.</string>
<string name="pref_summary_playback_controller_card_now_playing">Zeigt eine Karte unter den wiedergabe Bedienelementen (play/pause etc.).</string>
<string name="failed_download_albumart">"Das Cover für dieses Album konnte nicht heruntergeladen werden."</string>
<string name="search_hint">Durchsuche deine Mediathek</string>
<string name="rescanning_media">Medien werden erneut eingescannt...</string>

View file

@ -81,7 +81,6 @@
<string name="light_theme_name">Ανοιχτό</string>
<string name="dark_theme_name">Σκούρο</string>
<string name="equalizer">Εξισωτής</string>
<string name="pref_header_ui">Γραφικό περιβάλλον</string>
<string name="pref_title_general_theme">Γενικό θέμα</string>
<string name="pref_header_audio">Ήχος</string>
<string name="pref_header_general">Γενικά</string>

View file

@ -3,8 +3,8 @@
<string name="what_do_you_want_to_share">¿Qué quieres compartir?</string>
<string name="currently_listening_to_x_by_x">Escuchando %1$s de %2$s</string>
<string name="the_audio_file">El archivo de audio</string>
<string name="do_you_want_to_set_x_as_ringtone">¿Quieres establecer %1$s como politono?</string>
<string name="x_has_been_set_as_ringtone">%1$s ha sido establecido como politono.</string>
<string name="do_you_want_to_set_x_as_ringtone">Quiere establecer %1$s como tono de llamada?</string>
<string name="x_has_been_set_as_ringtone">%1$s ha sido establecido como tono de llamada</string>
<string name="action_set_as_ringtone">Establecer como tono de llamada</string>
<string name="action_share">Compartir</string>
<string name="action_settings">"Ajustes"</string>
@ -40,7 +40,7 @@
<string name="album_or_artist_empty">El campo título del álbum o el artista del álbum está vacío</string>
<string name="writing_file_number">Escribiendo archivo</string>
<string name="saving_changes">Guardando cambios...</string>
<string name="title_activity_album_tag_editor">Editor de las etiquetas del álbum activo</string>
<string name="title_activity_album_tag_editor">Editor de etiquetas del album</string>
<string name="label_details">Detalles</string>
<string name="label_file_name">Nombre del archivo</string>
<string name="label_file_path">Ubicación del archivo</string>
@ -60,12 +60,13 @@
<string name="action_re_download_artist_image">Actualizar imagen del artista</string>
<string name="updating">Actualizando...</string>
<string name="added_title_to_playing_queue">"1 título añadido a la cola de reproducción"</string>
<string name="added_x_titles_to_playing_queue">%1$d título(s) añadido(s) a la cola de reproducción</string>
<string name="added_x_titles_to_playing_queue">Añadir %1$d a la cola de reproducción</string>
<string name="title_activity_playlist_detail">Actividad de la lista de reproducción</string>
<string name="action_remove_from_playlist">Eliminar de la lista de reproducción</string>
<string name="new_playlist_action">Nueva lista de reproducción...</string>
<string name="action_grid_columns">Columnas de la cuadrícula</string>
<string name="action_grid_columns_land">Columnas de la cuadrícula (apaisado)</string>
<string name="inserted_x_songs_into_playlist">Agregadas %1$d canciones a la lista de reproducción</string>
<string name="inserted_x_songs_into_playlist">Insertar %1$d canciones a la lista de reproducción</string>
<string name="created_playlist_x">Lista de reproducción %1$s creada</string>
<string name="deleted_playlist_x">Lista de reproducción %1$s borrada</string>
<string name="couldnot_create_playlist_x">No se puede crear la lista de reproducción %1$s</string>
@ -75,8 +76,12 @@
]]></string>
<string name="delete_song_x"><![CDATA[¿Seguro que deseas eliminar la canción <b>%1$s</b>?]]></string>
<string name="delete_x_songs"><![CDATA[¿Seguro que desea borrar <b>%1$d</b> canciones?]]></string>
<string name="remove_song_x_from_playlist"><![CDATA[Quiere remover la canción </b>%1$s<b> de la lista de reproducción?]]></string>
<string name="remove_x_songs_from_playlist"><![CDATA[Quiere remover </b>%1$d<b> canciones de la lista de reproducción?]]></string>
<string name="delete_song_title">Borrar canción</string>
<string name="delete_songs_title">Borrar canciones</string>
<string name="remove_song_from_playlist_title">Remover canción de la lista de reproducción?</string>
<string name="remove_songs_from_playlist_title">Eliminar canciones de la lista de reproducción?</string>
<string name="rename_playlist_title">Renombrar lista de reproducción</string>
<string name="delete_playlist_title">Borrar lista de reproducción</string>
<string name="delete_playlists_title">Eliminar listas de reproducción</string>
@ -88,16 +93,15 @@
<string name="light_theme_name">Claro</string>
<string name="dark_theme_name">Oscuro</string>
<string name="equalizer">Ecualizador</string>
<string name="pref_header_ui">Interfaz</string>
<string name="pref_title_general_theme">Tema general</string>
<string name="pref_header_audio">Audio</string>
<string name="pref_header_general">General</string>
<string name="pref_summary_colored_navigation_bar">Selecciona en qué secciones la barra debe tener color</string>
<string name="pref_title_navigation_bar">Color en la barra de navegación</string>
<string name="pref_title_set_default_start_page">Establecer como página de inicio</string>
<string name="pref_title_set_default_start_page">Pagina de inicio</string>
<string name="title_activity_settings">Ajustes</string>
<string name="pref_title_colored_navigation_bar_artists">Barra de navegación en Vista del Artista coloreada</string>
<string name="pref_title_colored_navigation_bar_albums">Barra de navegación de Vista del Álbum coloreada</string>
<string name="pref_title_colored_navigation_bar_albums">Ver por artista</string>
<string name="pref_title_colored_navigation_bar_current_playing">Ver reproducción</string>
<string name="pref_title_colored_navigation_bar_playlists">Ver lista de reproducción</string>
<string name="pref_title_colored_navigation_bar_tag_editor">Editor de etiquetas</string>
@ -110,17 +114,23 @@
<string name="navigation_drawer_open">Abrir barra de navegación</string>
<string name="navigation_drawer_close">"Cerrar la barra de navegación "</string>
<string name="delete_action">Borrar</string>
<string name="remove_action">Eliminar</string>
<string name="rename_action">Renombrar</string>
<string name="create_action">Crear</string>
<string name="x_selected">%1$d seleccionado</string>
<string name="select">Seleccionar</string>
<string name="default_str">Por defecto</string>
<string name="primary_color">Color Primario</string>
<string name="accent_color">Color Secundario</string>
<string name="primary_color_desc">El color principal por defecto es índigo.</string>
<string name="accent_color_desc">El color secundario por defecto es rosado.</string>
<string name="accent_color_desc">El color de énfasis es rosado</string>
<string name="update_image">Actualizar imagen</string>
<string name="playlist_empty_text">La lista de reproducción se encuentra vacía</string>
<string name="no_playlists">No hay listas de reproducción</string>
<string name="no_albums">No hay álbumes</string>
<string name="no_songs">No hay canciones</string>
<string name="no_artists">No hay artistas</string>
<string name="empty">Vacío</string>
<string name="playlist_name">Nombre de la lista de reproducción</string>
<string name="song">Canción</string>
<string name="pref_only_lollipop">"Solamente disponible en Lollipop"</string>

View file

@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="what_do_you_want_to_share">Qu\'est-ce que vous voulez partager ?</string>
<string name="currently_listening_to_x_by_x">Vous écoutez %1$ss de %2$s</string>
<string name="what_do_you_want_to_share">Que voulez-vous partager ?</string>
<string name="currently_listening_to_x_by_x">En train d\'écouter %1$ss de %2$s</string>
<string name="the_audio_file">Le fichier audio</string>
<string name="do_you_want_to_set_x_as_ringtone">Voulez-vous définir %1$ss comme sonnerie?</string>
<string name="x_has_been_set_as_ringtone">%1$s a été défini comme sonnerie.</string>
<string name="do_you_want_to_set_x_as_ringtone">Voulez-vous définir %1$ss en tant que sonnerie ?</string>
<string name="x_has_been_set_as_ringtone">%1$s a été définie comme sonnerie.</string>
<string name="action_set_as_ringtone">Définir comme sonnerie</string>
<string name="action_share">Partager</string>
<string name="action_settings">"Paramètres"</string>
@ -54,7 +54,7 @@
<string name="label_current_playing_queue">File de lecture</string>
<string name="save_as_playlist">Sauvegarder</string>
<string name="credits_3">Icône par</string>
<string name="credits_1">"Phonograph est un lecteur de musique entièrement gratuit avec le concept de Material Design créé par"</string>
<string name="credits_1">"Phonograph est un lecteur de musique entièrement gratuit suivant le concept du Material Design. Phonograph vous est apporté par"</string>
<string name="title_activity_search">Rechercher</string>
<string name="no_results">Aucun résultat</string>
<string name="action_re_download_artist_image">Actualiser l\'image de l\'artiste</string>
@ -69,30 +69,31 @@
<string name="created_playlist_x">La playlist %1$s a été créée.</string>
<string name="deleted_playlist_x">Playlist %1$s supprimée.</string>
<string name="couldnot_create_playlist_x">Impossible de créer la playlist %1$s.</string>
<string name="delete_playlist_x"><![CDATA[ Voulez-vous supprimer la playlist <b>%1$s</b> ? ]]></string>
<string name="delete_playlist_x"><![CDATA[Voulez-vous supprimer la playlist <b>%1$s</b> ?]]></string>
<string name="delete_x_playlists"><![CDATA[Voulez-vous supprimer les playlists <b>%1$d</b> ?]]></string>
<string name="delete_song_x"><![CDATA[ Voulez-vous supprimer le titre <b>%1$s</b> ? ]]></string>
<string name="delete_x_songs"><![CDATA[ Voulez-vous supprimer <b>%1$d</b> titres ? ]]></string>
<string name="delete_song_x"><![CDATA[Voulez-vous supprimer <b>%1$s</b> ?]]></string>
<string name="delete_x_songs"><![CDATA[Voulez-vous supprimer <b>%1$d</b> titres ?]]></string>
<string name="remove_song_x_from_playlist"><![CDATA[Voulez-vous retirer <b>%1$s</b> de la playlist?]]></string>
<string name="remove_x_songs_from_playlist"><![CDATA[Voulez-vous retirer <b>%1$d</b> titres de la playlist?]]></string>
<string name="delete_song_title">Supprimer le titre</string>
<string name="delete_songs_title">Supprimer les titres</string>
<string name="remove_song_from_playlist_title">Retirer de la playlist</string>
<string name="remove_songs_from_playlist_title">Retirer les titres de la playlist</string>
<string name="rename_playlist_title">Renommer la playlist</string>
<string name="delete_playlist_title">Supprimer la playlist</string>
<string name="delete_playlists_title">Supprimer les playlists</string>
<string name="add_playlist_title">"Ajouter à la playlist"</string>
<string name="new_playlist_title">Nouvelle playlist</string>
<string name="delete_warning">"Attention : Cette action ne peut être annulée"</string>
<string name="shuffle_all">Aléatoire</string>
<string name="last_opened">Récents</string>
<string name="last_opened">Récemment ouverts</string>
<string name="light_theme_name">Clair</string>
<string name="dark_theme_name">Sombre</string>
<string name="equalizer">Égaliseur</string>
<string name="pref_header_ui">Interface</string>
<string name="pref_title_general_theme">Thème général</string>
<string name="pref_header_audio">Audio</string>
<string name="pref_header_general">Général</string>
<string name="pref_summary_colored_navigation_bar">Dans quelle vue la barre navigation doit être colorée.</string>
<string name="pref_summary_colored_navigation_bar">Dans quelles vues la barre navigation doit être colorée.</string>
<string name="pref_title_navigation_bar">Barre de navigation colorée</string>
<string name="pref_title_set_default_start_page">Page d\'accueil par défaut</string>
<string name="title_activity_settings">Paramètres</string>
@ -103,34 +104,44 @@
<string name="pref_title_colored_navigation_bar_tag_editor">Éditeur d\'infos</string>
<string name="pref_title_colored_navigation_bar_other_screens">Partout ailleurs</string>
<string name="pref_title_colored_album_footers">Bas d\'album coloré</string>
<string name="pref_title_force_square_album_art">Vignette carrée</string>
<string name="pref_title_opaque_toolbar_now_playing">Barre d\'outil opaque</string>
<string name="no_equalizer">Aucun égaliseur trouvé</string>
<string name="no_audio_ID">"Aucun ID audio, jouez quelque chose et réessayez."</string>
<string name="navigation_drawer_open">Ouvrir le volet de navigation</string>
<string name="navigation_drawer_close">"Fermer le volet de navigation"</string>
<string name="delete_action">Supprimer</string>
<string name="remove_action">Retirer</string>
<string name="rename_action">Renommer</string>
<string name="create_action">Créer</string>
<string name="x_selected">%1$d séléctionné(s)</string>
<string name="select">Sélectionner</string>
<string name="default_str">Par défaut</string>
<string name="primary_color">Couleur primaire</string>
<string name="primary_color">Couleur principale</string>
<string name="accent_color">Couleur secondaire</string>
<string name="primary_color_desc">La couleur primaire du thème (indigo par défaut)</string>
<string name="primary_color_desc">La couleur principale du thème (indigo par défaut)</string>
<string name="accent_color_desc">La couleur secondaire du thème (rose par défaut)</string>
<string name="update_image">Actualiser l\'image</string>
<string name="playlist_empty_text">La playlist est vide</string>
<string name="no_playlists">Aucune playlist</string>
<string name="no_albums">Aucun album</string>
<string name="no_songs">Aucun titre</string>
<string name="no_artists">Aucun artiste</string>
<string name="empty">Vide</string>
<string name="playlist_name">Nom de la playlist</string>
<string name="song">Titre</string>
<string name="pref_only_lollipop">"Uniquement disponible sur Lollipop."</string>
<string name="pref_summary_colored_album_footers">"Les bas d\'album dans la grille sont colorés avec la palette de la couverture."</string>
<string name="failed_download_albumart">"Impossible de télécharger la pochette pour cet album."</string>
<string name="pref_summary_colored_album_footers">"Les bas d\'album dans la grille sont colorés avec la palette de la vignette."</string>
<string name="pref_summary_force_square_album_art">La vignette de l\'album dans l\'écran de lecture en cours est forcée à rester carrée.</string>
<string name="pref_summary_opaque_toolbar_now_playing">La barre d\'outil dans l\'écran de lecture en cours est opaque et recouvre maintenant l\'album.</string>
<string name="failed_download_albumart">"Impossible de télécharger la vignette pour cet album."</string>
<string name="search_hint">Rechercher votre bibliothèque...</string>
<string name="rescanning_media">Réanalyse des médias…</string>
<string name="other">Autre</string>
<string-array name="update_album_cover_options">
<item>Télécharger depuis Last.fm</item>
<item>Choisir depuis le stockage interne</item>
<item>Choisir sur l\'appareil</item>
<item>Recherche internet</item>
<item>Supprimer la couverture</item>
<item>Supprimer la vignette</item>
</string-array>
</resources>

View file

@ -88,7 +88,6 @@
<string name="light_theme_name">Chiaro</string>
<string name="dark_theme_name">Scuro</string>
<string name="equalizer">Equalizzatore</string>
<string name="pref_header_ui">Interfaccia</string>
<string name="pref_title_general_theme">Tema</string>
<string name="pref_header_audio">Audio</string>
<string name="pref_header_general">Generali</string>

View file

@ -90,7 +90,6 @@
<string name="light_theme_name">밝은 테마</string>
<string name="dark_theme_name">어두운 테마</string>
<string name="equalizer">이퀄라이저</string>
<string name="pref_header_ui">UI</string>
<string name="pref_title_general_theme">전체적인 테마</string>
<string name="pref_header_audio">오디오</string>
<string name="pref_header_general">일반</string>

View file

@ -62,6 +62,7 @@
<string name="added_title_to_playing_queue">"1 titel toegevoegd aan de afspeelwachtrij."</string>
<string name="added_x_titles_to_playing_queue">%1$d titels toegevoegd aan de afspeellijst.</string>
<string name="title_activity_playlist_detail">"Afspeellijst activiteit "</string>
<string name="action_remove_from_playlist">Verwijder uit afspeellijst</string>
<string name="new_playlist_action">Nieuwe afspeellijst...</string>
<string name="action_grid_columns">Rasterkolommen</string>
<string name="action_grid_columns_land">Rasterkolommen (Land)</string>
@ -73,8 +74,12 @@
<string name="delete_x_playlists"><![CDATA[Wil je <b>%1$d</b> afspeellijsten verwijderen?]]></string>
<string name="delete_song_x"><![CDATA[Wil je het nummer <b>%1$s</b> verwijderen?]]></string>
<string name="delete_x_songs"><![CDATA[Wil je <b>%1$d</b> nummers verwijderen?]]></string>
<string name="remove_song_x_from_playlist"><![CDATA[Wil je het nummer <b>%1$s</b> verwijderen uit de afspeellijst?]]></string>
<string name="remove_x_songs_from_playlist"><![CDATA[Wil je <b>%1$d</b> nummers verwijderen uit de afspeellijst?]]></string>
<string name="delete_song_title">Verwijder nummer</string>
<string name="delete_songs_title">Verwijder nummers</string>
<string name="remove_song_from_playlist_title">Verwijder nummer uit afspeellijst</string>
<string name="remove_songs_from_playlist_title">Verwijder nummers uit afspeellijst</string>
<string name="rename_playlist_title">Hernoem afspeellijst</string>
<string name="delete_playlist_title">Verwijder afspeellijst</string>
<string name="delete_playlists_title">Verwijder afspeellijst</string>
@ -86,7 +91,6 @@
<string name="light_theme_name">Licht</string>
<string name="dark_theme_name">Donker</string>
<string name="equalizer">Equalizer</string>
<string name="pref_header_ui">Uiterlijk</string>
<string name="pref_title_general_theme">Algemeen thema</string>
<string name="pref_header_audio">Audio</string>
<string name="pref_header_general">Algemeen</string>
@ -108,8 +112,10 @@
<string name="navigation_drawer_open">Open navigatiebalk</string>
<string name="navigation_drawer_close">"Sluit navigatiebalk"</string>
<string name="delete_action">Verwijderen</string>
<string name="remove_action">Verwijderen</string>
<string name="rename_action">Hernoemen</string>
<string name="create_action">Aanmaken</string>
<string name="x_selected">%1$d geselecteerd</string>
<string name="select">Selecteer</string>
<string name="default_str">Standaard</string>
<string name="primary_color">Primaire kleur</string>
@ -119,6 +125,10 @@
<string name="update_image">Afbeelding bijwerken</string>
<string name="playlist_empty_text">Deze afspeellijst is leeg</string>
<string name="no_playlists">Geen afspeellijsten</string>
<string name="no_albums">Geen albums</string>
<string name="no_songs">Geen nummers</string>
<string name="no_artists">Geen artiesten</string>
<string name="empty">Leeg</string>
<string name="playlist_name">Afspeellijstnaam</string>
<string name="song">Nummer</string>
<string name="pref_only_lollipop">"Alleen beschikbaar op Lollipop. "</string>

View file

@ -87,7 +87,6 @@
<string name="light_theme_name">Lys</string>
<string name="dark_theme_name">Mørk</string>
<string name="equalizer">Equalizer</string>
<string name="pref_header_ui">Brukargrensesnitt</string>
<string name="pref_title_general_theme">Generelt tema</string>
<string name="pref_header_audio">Audio</string>
<string name="pref_header_general">Generelt</string>

View file

@ -62,6 +62,7 @@
<string name="added_title_to_playing_queue">"Dodano 1 tytuł do kolejki odtwarzania"</string>
<string name="added_x_titles_to_playing_queue">Dodano %1$d tytuły do kolejki odtwarzania</string>
<string name="title_activity_playlist_detail">Aktywność list odtwarzania</string>
<string name="action_remove_from_playlist">Usuń z listy odtwarzania</string>
<string name="new_playlist_action">Nowa lista odtwarzania...</string>
<string name="action_grid_columns">Siatka kolumn</string>
<string name="action_grid_columns_land">Siatka kolumn (poziomo)</string>
@ -69,12 +70,16 @@
<string name="created_playlist_x">Utworzono listę odtwarzania %1$s</string>
<string name="deleted_playlist_x">Usunięto listę odtwarzania %1$s</string>
<string name="couldnot_create_playlist_x">Nie można utworzyć listy odtwarzania %1$s</string>
<string name="delete_playlist_x"><![CDATA[ Czy chcesz usunąć listę odtwarzania <b>%1$s</b>? ]]></string>
<string name="delete_x_playlists"><![CDATA[Czy chcesz usunąć <b>%1$d</b> listy odtwarzania? ]]></string>
<string name="delete_playlist_x"><![CDATA[Czy chcesz usunąć listę odtwarzania <b>%1$s</b>?]]></string>
<string name="delete_x_playlists"><![CDATA[Czy chcesz usunąć <b>%1$d</b> listy odtwarzania?]]></string>
<string name="delete_song_x"><![CDATA[ Czy chcesz usunąć utwór <b>%1$s</b>? ]]></string>
<string name="delete_x_songs"><![CDATA[ Czy chcesz usunąć <b>%1$d</b> utworów? ]]></string>
<string name="remove_song_x_from_playlist"><![CDATA[Czy chcesz usunąć <b>%1$s</b> z listy odtwarzania?]]></string>
<string name="remove_x_songs_from_playlist"><![CDATA[Czy chcesz usunąć <b>%1$d</b> z listy odtwarzania?]]></string>
<string name="delete_song_title">Usuwanie utworu</string>
<string name="delete_songs_title">Usuń utwory</string>
<string name="remove_song_from_playlist_title">Usuń utwór z listy odtwarzania</string>
<string name="remove_songs_from_playlist_title">Usuń utwory z listy odtwarzania</string>
<string name="rename_playlist_title">Zmień nazwę listy odtwarzania</string>
<string name="delete_playlist_title">Usuń listę odtwarzania</string>
<string name="delete_playlists_title">Usuń listy odtwarzania</string>
@ -86,7 +91,6 @@
<string name="light_theme_name">Jasny</string>
<string name="dark_theme_name">Ciemny</string>
<string name="equalizer">Korektor</string>
<string name="pref_header_ui">Wygląd</string>
<string name="pref_title_general_theme">Styl tła motywu</string>
<string name="pref_header_audio">Dźwięk</string>
<string name="pref_header_general">Ogólne</string>
@ -108,8 +112,10 @@
<string name="navigation_drawer_open">Otwórz pasek nawigacji</string>
<string name="navigation_drawer_close">"Zamknij pasek nawigacji"</string>
<string name="delete_action">Usuń</string>
<string name="remove_action">Usuń</string>
<string name="rename_action">Zmień</string>
<string name="create_action">Utwórz</string>
<string name="x_selected">%1$d zaznaczono</string>
<string name="select">Wybierz</string>
<string name="default_str">Domyślny</string>
<string name="primary_color">Kolor podstawowy</string>
@ -119,6 +125,10 @@
<string name="update_image">Zmiana obrazu</string>
<string name="playlist_empty_text">Lista odtwarzania jest pusta</string>
<string name="no_playlists">Brak list odtwarzania</string>
<string name="no_albums">Brak albumów</string>
<string name="no_songs">Brak utworów</string>
<string name="no_artists">Brak wykonawców</string>
<string name="empty">Pusty</string>
<string name="playlist_name">Nazwa listy odtwarzania</string>
<string name="song">Utwór</string>
<string name="pref_only_lollipop">"Dostępne tylko w androidzie Lollipop"</string>

View file

@ -88,7 +88,6 @@
<string name="light_theme_name">Claro</string>
<string name="dark_theme_name">Escuro</string>
<string name="equalizer">Equalizador</string>
<string name="pref_header_ui">Interface</string>
<string name="pref_title_general_theme">Tema geral</string>
<string name="pref_header_audio">Áudio</string>
<string name="pref_header_general">Geral</string>

View file

@ -58,7 +58,6 @@
<string name="light_theme_name">Claro</string>
<string name="dark_theme_name">Escuro</string>
<string name="equalizer">Equalizador</string>
<string name="pref_header_ui">UI</string>
<string name="pref_title_general_theme">Tema geral</string>
<string name="pref_header_audio">Áudio</string>
<string name="pref_header_general">Geral</string>

View file

@ -72,7 +72,6 @@
<string name="light_theme_name">Light (Alb)</string>
<string name="dark_theme_name">Dark (Negru)</string>
<string name="equalizer">Egalizator</string>
<string name="pref_header_ui">Interfaţă</string>
<string name="pref_title_general_theme">Temă generală</string>
<string name="pref_header_audio">Audio</string>
<string name="pref_header_general">General</string>

View file

@ -81,7 +81,6 @@
<string name="light_theme_name">Светлая</string>
<string name="dark_theme_name">Тёмная</string>
<string name="equalizer">Эквалайзер</string>
<string name="pref_header_ui">Пользовательский интерфейс</string>
<string name="pref_title_general_theme">Общая тема</string>
<string name="pref_header_audio">Аудио</string>
<string name="pref_header_general">Общее</string>

View file

@ -76,7 +76,6 @@ Vill du radera <b>%1$d</b> låtar?
<string name="light_theme_name">Ljus</string>
<string name="dark_theme_name">Mörk</string>
<string name="equalizer">Equalizer</string>
<string name="pref_header_ui">UI</string>
<string name="pref_title_general_theme">Allmänt tema</string>
<string name="pref_header_audio">Ljud</string>
<string name="pref_header_general">Allmänt</string>

View file

@ -86,7 +86,6 @@
<string name="light_theme_name">ık</string>
<string name="dark_theme_name">Koyu</string>
<string name="equalizer">Ekolayzır</string>
<string name="pref_header_ui">Kullanıcı Arayüzü</string>
<string name="pref_title_general_theme">Genel tema</string>
<string name="pref_header_audio">Ses</string>
<string name="pref_header_general">Genel</string>

View file

@ -4,5 +4,5 @@
<dimen name="navigation_drawer_header_height">165dp</dimen>
<dimen name="fab_margin">16dp</dimen>
<dimen name="tmp_no_fab_margin">0dp</dimen>
<dimen name="tmp_now_playing_skip_rewind_margin">-8dp</dimen>
</resources>

View file

@ -19,7 +19,6 @@
<style name="Theme.MaterialMusic.Notification.Title" parent="@android:style/TextAppearance.Material.Notification.Title" />
<style name="PlayPauseFab" parent="PlayPauseFabParent">
<item name="borderWidth">0dp</item>
<item name="android:transitionName">@string/transition_fab</item>
</style>
@ -33,4 +32,10 @@
<item name="android:padding">0dp</item>
</style>
<style name="TraditionalMusicProgressSlider" parent="TraditionalMusicProgressSliderParent">
<item name="android:elevation">2dp</item>
<item name="android:padding">0dp</item>
<item name="android:progressBackgroundTint">@android:color/transparent</item>
</style>
</resources>

View file

@ -62,6 +62,7 @@
<string name="added_title_to_playing_queue">"该曲目已加入播放队列"</string>
<string name="added_x_titles_to_playing_queue">%1$d首曲目已加入播放队列</string>
<string name="title_activity_playlist_detail">播放列表操作</string>
<string name="action_remove_from_playlist">从播放列表移除</string>
<string name="new_playlist_action">新建播放列表</string>
<string name="action_grid_columns">专辑列数</string>
<string name="action_grid_columns_land">专辑列数(横屏)</string>
@ -79,8 +80,12 @@
<string name="delete_x_songs"><![CDATA[
确认要删除以下<b>%1$d</b>首歌曲?
]]></string>
<string name="remove_song_x_from_playlist"><![CDATA[你想从播放列表中移除<b>%1$s</b>吗?]]></string>
<string name="remove_x_songs_from_playlist"><![CDATA[你想从播放列表中移除这<b>%1$d</b>首歌曲吗?]]></string>
<string name="delete_song_title">删除歌曲</string>
<string name="delete_songs_title">删除歌曲</string>
<string name="remove_song_from_playlist_title">从播放列表移除歌曲</string>
<string name="remove_songs_from_playlist_title">从播放列表移除歌曲</string>
<string name="rename_playlist_title">重命名播放列表</string>
<string name="delete_playlist_title">删除播放列表</string>
<string name="delete_playlists_title">删除播放列表</string>
@ -92,7 +97,6 @@
<string name="light_theme_name">浅色</string>
<string name="dark_theme_name">暗色</string>
<string name="equalizer">均衡器</string>
<string name="pref_header_ui">界面</string>
<string name="pref_title_general_theme">全局主题</string>
<string name="pref_header_audio">声音</string>
<string name="pref_header_general">通用</string>
@ -114,8 +118,10 @@
<string name="navigation_drawer_open">弹出导航抽屉</string>
<string name="navigation_drawer_close">"关闭导航抽屉"</string>
<string name="delete_action">删除</string>
<string name="remove_action">移除</string>
<string name="rename_action">重命名</string>
<string name="create_action">创建</string>
<string name="x_selected">已选择%1$d</string>
<string name="select">选择</string>
<string name="default_str">默认</string>
<string name="primary_color">主色调Primary颜色</string>
@ -125,6 +131,10 @@
<string name="update_image">更新图像</string>
<string name="playlist_empty_text">播放列表是空的</string>
<string name="no_playlists">没有播放列表</string>
<string name="no_albums">没有专辑</string>
<string name="no_songs">没有曲目</string>
<string name="no_artists">没有艺术家</string>
<string name="empty"></string>
<string name="playlist_name">播放列表名称</string>
<string name="song">歌曲</string>
<string name="pref_only_lollipop">"仅适用于 Lollipop"</string>

View file

@ -92,7 +92,6 @@
<string name="light_theme_name">明亮</string>
<string name="dark_theme_name">暗沉</string>
<string name="equalizer">均衡器</string>
<string name="pref_header_ui">使用者介面</string>
<string name="pref_title_general_theme">主題</string>
<string name="pref_header_audio">音訊</string>
<string name="pref_header_general">通用</string>

View file

@ -57,5 +57,15 @@ http://developer.android.com/guide/topics/appwidgets/index.html#CreatingLayout
<!-- ONLY 0dp WHILE THERE IS THE BUG IN DESIGN SUPPORT LIBRARY 22.2.0-->
<dimen name="fab_margin">0dp</dimen>
<dimen name="tmp_no_fab_margin">-16dp</dimen>
<dimen name="tmp_now_playing_skip_rewind_margin">-24dp</dimen>
<dimen name="title_box_padding_small">16dp</dimen>
<dimen name="title_box_padding_large">32dp</dimen>
<dimen name="title_box_title_text_size_small">@dimen/abc_text_size_title_material</dimen>
<dimen name="title_box_title_text_size_large">24sp</dimen>
<dimen name="title_box_caption_text_size_small">@dimen/abc_text_size_caption_material</dimen>
<dimen name="title_box_caption_text_size_large">14sp</dimen>
<dimen name="title_box_text_spacing_small">0dp</dimen>
<dimen name="title_box_text_spacing_large">2dp</dimen>
</resources>

View file

@ -91,7 +91,8 @@
<string name="light_theme_name">Light</string>
<string name="dark_theme_name">Dark</string>
<string name="equalizer">Equalizer</string>
<string name="pref_header_ui">UI</string>
<string name="pref_header_colors">Colors</string>
<string name="pref_header_now_playing_screen">Now playing screen</string>
<string name="pref_title_general_theme">General theme</string>
<string name="pref_header_audio">Audio</string>
<string name="pref_header_general">General</string>
@ -107,7 +108,11 @@
<string name="pref_title_colored_navigation_bar_other_screens">Everywhere else</string>
<string name="pref_title_colored_album_footers">Colored album footers</string>
<string name="pref_title_force_square_album_art">Force square album art</string>
<string name="pref_title_opaque_toolbar_now_playing">Opaque toolbar now playing</string>
<string name="pref_title_opaque_toolbar_now_playing">Opaque toolbar</string>
<string name="pref_title_opaque_statusbar_now_playing">Opaque statusbar</string>
<string name="pref_title_smaller_title_box_now_playing">Smaller title box</string>
<string name="pref_title_traditional_progress_slider_now_playing">Traditional progress slider</string>
<string name="pref_title_playback_controller_card_now_playing">Show card below playback controllers</string>
<string name="no_equalizer">No equalizer found</string>
<string name="no_audio_ID">"No audio ID, play something and try again."</string>
<string name="navigation_drawer_open">Open navigation drawer</string>
@ -135,7 +140,11 @@
<string name="pref_only_lollipop">"Only available on Lollipop."</string>
<string name="pref_summary_colored_album_footers">"Album footers in the grid are colored with the album cover\'s palette."</string>
<string name="pref_summary_force_square_album_art">Album art in the now playing view is forced to be squared.</string>
<string name="pref_summary_opaque_toolbar_now_playing">The toolbar in the now playing view is opaque and no longer covers the album art.</string>
<string name="pref_summary_opaque_toolbar_now_playing">The toolbar is opaque and do not cover the album art.</string>
<string name="pref_summary_opaque_statusbar_now_playing">The statusbar is opaque and do not cover the album art.</string>
<string name="pref_summary_smaller_title_box_now_playing">The box below the album art where the song title and artist goes is smaller.</string>
<string name="pref_summary_traditional_progress_slider_now_playing">Uses the normal progress slider instead of the small bar below the album art.</string>
<string name="pref_summary_playback_controller_card_now_playing">Displays a card below the playback controller buttons (play/pause etc.).</string>
<string name="failed_download_albumart">"Unable to download the art for this album."</string>
<string name="search_hint">Search your library…</string>
<string name="rescanning_media">Rescanning media…</string>

View file

@ -39,6 +39,11 @@
<item name="android:thumbOffset">0dp</item>
</style>
<style name="TraditionalMusicProgressSlider" parent="TraditionalMusicProgressSliderParent">
<item name="android:thumbOffset">0dp</item>
<item name="android:thumb">@drawable/traditional_slider_thumb</item>
</style>
<style name="Toolbar">
<item name="titleMarginStart">16dp</item>
<item name="android:layout_width">match_parent</item>

View file

@ -66,6 +66,7 @@
</style>
<style name="PlayPauseFabParent">
<item name="borderWidth">0dp</item>
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
</style>
@ -85,4 +86,11 @@
<item name="android:layout_height">wrap_content</item>
<item name="android:thumb">@drawable/slider_thumb</item>
</style>
<style name="TraditionalMusicProgressSliderParent">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_marginLeft">@dimen/seek_bar_margin_left_right</item>
<item name="android:layout_marginRight">@dimen/seek_bar_margin_left_right</item>
</style>
</resources>

View file

@ -1,6 +1,6 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<com.kabouzeid.gramophone.prefs.DynamicPreferenceCategory android:title="@string/pref_header_ui">
<com.kabouzeid.gramophone.prefs.DynamicPreferenceCategory android:title="@string/pref_header_colors">
<com.afollestad.materialdialogs.prefs.MaterialListPreference
android:defaultValue="0"
@ -22,29 +22,13 @@
android:title="@string/accent_color"
android:summary="@string/accent_color_desc" />
<CheckBoxPreference
android:defaultValue="false"
android:key="opaque_toolbar_now_playing"
android:title="@string/pref_title_opaque_toolbar_now_playing"
android:summary="@string/pref_summary_opaque_toolbar_now_playing"
android:layout="@layout/preference_custom"
android:widgetLayout="@layout/preference_dynamiccheckbox" />
<CheckBoxPreference
android:defaultValue="false"
android:key="force_square_album_art"
android:title="@string/pref_title_force_square_album_art"
android:summary="@string/pref_summary_force_square_album_art"
android:layout="@layout/preference_custom"
android:widgetLayout="@layout/preference_dynamiccheckbox" />
<CheckBoxPreference
android:defaultValue="true"
android:key="colored_album_footers"
android:title="@string/pref_title_colored_album_footers"
android:summary="@string/pref_summary_colored_album_footers"
android:layout="@layout/preference_custom"
android:widgetLayout="@layout/preference_dynamiccheckbox" />
android:widgetLayout="@layout/preference_dynamic_checkbox" />
<com.afollestad.materialdialogs.prefs.MaterialMultiSelectListPreference
android:key="colored_navigation_bar"

View file

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<com.kabouzeid.gramophone.prefs.DynamicPreferenceCategory android:title="@string/pref_header_now_playing_screen">
<CheckBoxPreference
android:defaultValue="false"
android:key="opaque_statusbar_now_playing"
android:layout="@layout/preference_custom"
android:summary="@string/pref_summary_opaque_statusbar_now_playing"
android:title="@string/pref_title_opaque_statusbar_now_playing"
android:widgetLayout="@layout/preference_dynamic_checkbox" />
<CheckBoxPreference
android:defaultValue="false"
android:dependency="opaque_statusbar_now_playing"
android:key="opaque_toolbar_now_playing"
android:layout="@layout/preference_custom"
android:summary="@string/pref_summary_opaque_toolbar_now_playing"
android:title="@string/pref_title_opaque_toolbar_now_playing"
android:widgetLayout="@layout/preference_dynamic_checkbox" />
<CheckBoxPreference
android:defaultValue="false"
android:key="force_square_album_art"
android:layout="@layout/preference_custom"
android:summary="@string/pref_summary_force_square_album_art"
android:title="@string/pref_title_force_square_album_art"
android:widgetLayout="@layout/preference_dynamic_checkbox" />
<CheckBoxPreference
android:defaultValue="false"
android:key="smaller_title_box_now_playing"
android:layout="@layout/preference_custom"
android:summary="@string/pref_summary_smaller_title_box_now_playing"
android:title="@string/pref_title_smaller_title_box_now_playing"
android:widgetLayout="@layout/preference_dynamic_checkbox" />
<CheckBoxPreference
android:defaultValue="false"
android:key="traditional_progress_slider_now_playing"
android:layout="@layout/preference_custom"
android:summary="@string/pref_summary_traditional_progress_slider_now_playing"
android:title="@string/pref_title_traditional_progress_slider_now_playing"
android:widgetLayout="@layout/preference_dynamic_checkbox" />
<CheckBoxPreference
android:defaultValue="false"
android:key="playback_controller_card_now_playing"
android:layout="@layout/preference_custom"
android:summary="@string/pref_summary_playback_controller_card_now_playing"
android:title="@string/pref_title_playback_controller_card_now_playing"
android:widgetLayout="@layout/preference_dynamic_checkbox" />
</com.kabouzeid.gramophone.prefs.DynamicPreferenceCategory>
</PreferenceScreen>