Option to rename playlists
This commit is contained in:
parent
b47f25a969
commit
90cc5eb4e3
21 changed files with 165 additions and 68 deletions
|
|
@ -59,7 +59,7 @@ public class PlayingQueueAdapter extends ArrayAdapter<Song> {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(final View v) {
|
public void onClick(final View v) {
|
||||||
PopupMenu popupMenu = new PopupMenu(activity, v);
|
PopupMenu popupMenu = new PopupMenu(activity, v);
|
||||||
popupMenu.inflate(R.menu.menu_playing_queue_song);
|
popupMenu.inflate(R.menu.menu_item_playing_queue_song);
|
||||||
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public boolean onMenuItemClick(MenuItem item) {
|
public boolean onMenuItemClick(MenuItem item) {
|
||||||
|
|
|
||||||
|
|
@ -4,18 +4,19 @@ import android.app.Activity;
|
||||||
import android.support.v4.util.Pair;
|
import android.support.v4.util.Pair;
|
||||||
import android.support.v7.widget.RecyclerView;
|
import android.support.v7.widget.RecyclerView;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
import android.widget.ImageView;
|
||||||
|
import android.widget.PopupMenu;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import com.afollestad.materialdialogs.MaterialDialog;
|
|
||||||
import com.kabouzeid.gramophone.App;
|
|
||||||
import com.kabouzeid.gramophone.R;
|
import com.kabouzeid.gramophone.R;
|
||||||
import com.kabouzeid.gramophone.model.DataBaseChangedEvent;
|
import com.kabouzeid.gramophone.helper.DeletePlaylistDialogHelper;
|
||||||
|
import com.kabouzeid.gramophone.helper.RenamePlaylistDialogHelper;
|
||||||
import com.kabouzeid.gramophone.model.Playlist;
|
import com.kabouzeid.gramophone.model.Playlist;
|
||||||
import com.kabouzeid.gramophone.ui.activities.base.AbsFabActivity;
|
import com.kabouzeid.gramophone.ui.activities.base.AbsFabActivity;
|
||||||
import com.kabouzeid.gramophone.util.NavigationUtil;
|
import com.kabouzeid.gramophone.util.NavigationUtil;
|
||||||
import com.kabouzeid.gramophone.util.PlaylistsUtil;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
@ -48,14 +49,37 @@ public class PlaylistAdapter extends RecyclerView.Adapter<PlaylistAdapter.ViewHo
|
||||||
return dataSet.size();
|
return dataSet.size();
|
||||||
}
|
}
|
||||||
|
|
||||||
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener, View.OnLongClickListener {
|
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
|
||||||
public TextView playlistName;
|
public TextView playlistName;
|
||||||
|
private ImageView menu;
|
||||||
|
|
||||||
public ViewHolder(View itemView) {
|
public ViewHolder(View itemView) {
|
||||||
super(itemView);
|
super(itemView);
|
||||||
playlistName = (TextView) itemView.findViewById(R.id.playlist_name);
|
playlistName = (TextView) itemView.findViewById(R.id.playlist_name);
|
||||||
|
menu = (ImageView) itemView.findViewById(R.id.menu);
|
||||||
itemView.setOnClickListener(this);
|
itemView.setOnClickListener(this);
|
||||||
itemView.setOnLongClickListener(this);
|
menu.setOnClickListener(new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View view) {
|
||||||
|
PopupMenu popupMenu = new PopupMenu(activity, view);
|
||||||
|
popupMenu.inflate(R.menu.menu_item_playlist);
|
||||||
|
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
||||||
|
@Override
|
||||||
|
public boolean onMenuItemClick(MenuItem item) {
|
||||||
|
switch (item.getItemId()) {
|
||||||
|
case R.id.action_rename_playlist:
|
||||||
|
RenamePlaylistDialogHelper.getDialog(activity, dataSet.get(getAdapterPosition()).id).show();
|
||||||
|
return true;
|
||||||
|
case R.id.action_delete_playlist:
|
||||||
|
DeletePlaylistDialogHelper.getDialog(activity, dataSet.get(getAdapterPosition()).id).show();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
popupMenu.show();
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -65,29 +89,5 @@ public class PlaylistAdapter extends RecyclerView.Adapter<PlaylistAdapter.ViewHo
|
||||||
sharedViews = ((AbsFabActivity) activity).getSharedViewsWithFab(sharedViews);
|
sharedViews = ((AbsFabActivity) activity).getSharedViewsWithFab(sharedViews);
|
||||||
NavigationUtil.goToPlaylist(activity, dataSet.get(getAdapterPosition()).id, sharedViews);
|
NavigationUtil.goToPlaylist(activity, dataSet.get(getAdapterPosition()).id, sharedViews);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean onLongClick(View view) {
|
|
||||||
final Playlist playlist = dataSet.get(getAdapterPosition());
|
|
||||||
new MaterialDialog.Builder(activity)
|
|
||||||
.title(activity.getResources().getString(R.string.delete_playlist) + playlist.name)
|
|
||||||
.positiveText(activity.getResources().getString(R.string.ok))
|
|
||||||
.negativeText(activity.getResources().getString(R.string.cancel))
|
|
||||||
.callback(new MaterialDialog.ButtonCallback() {
|
|
||||||
@Override
|
|
||||||
public void onPositive(MaterialDialog dialog) {
|
|
||||||
super.onPositive(dialog);
|
|
||||||
dialog.dismiss();
|
|
||||||
PlaylistsUtil.deletePlaylist(activity, playlist.id);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onNegative(MaterialDialog dialog) {
|
|
||||||
super.onNegative(dialog);
|
|
||||||
dialog.dismiss();
|
|
||||||
}
|
|
||||||
}).show();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,6 @@ import com.kabouzeid.gramophone.ui.activities.base.AbsFabActivity;
|
||||||
import com.kabouzeid.gramophone.ui.activities.tageditor.SongTagEditorActivity;
|
import com.kabouzeid.gramophone.ui.activities.tageditor.SongTagEditorActivity;
|
||||||
import com.kabouzeid.gramophone.util.MusicUtil;
|
import com.kabouzeid.gramophone.util.MusicUtil;
|
||||||
import com.kabouzeid.gramophone.util.NavigationUtil;
|
import com.kabouzeid.gramophone.util.NavigationUtil;
|
||||||
import com.kabouzeid.gramophone.util.PlaylistsUtil;
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -86,7 +85,7 @@ public class AlbumSongAdapter extends RecyclerView.Adapter<AlbumSongAdapter.View
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
PopupMenu popupMenu = new PopupMenu(activity, v);
|
PopupMenu popupMenu = new PopupMenu(activity, v);
|
||||||
popupMenu.inflate(R.menu.menu_song);
|
popupMenu.inflate(R.menu.menu_item_song);
|
||||||
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public boolean onMenuItemClick(MenuItem item) {
|
public boolean onMenuItemClick(MenuItem item) {
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,7 @@ public class ArtistSongAdapter extends ArrayAdapter<Song> {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
PopupMenu popupMenu = new PopupMenu(activity, v);
|
PopupMenu popupMenu = new PopupMenu(activity, v);
|
||||||
popupMenu.inflate(R.menu.menu_song);
|
popupMenu.inflate(R.menu.menu_item_song);
|
||||||
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public boolean onMenuItemClick(MenuItem item) {
|
public boolean onMenuItemClick(MenuItem item) {
|
||||||
|
|
|
||||||
|
|
@ -19,8 +19,6 @@ import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
|
||||||
import com.kabouzeid.gramophone.helper.SongDetailDialogHelper;
|
import com.kabouzeid.gramophone.helper.SongDetailDialogHelper;
|
||||||
import com.kabouzeid.gramophone.loader.SongFilePathLoader;
|
import com.kabouzeid.gramophone.loader.SongFilePathLoader;
|
||||||
import com.kabouzeid.gramophone.misc.AppKeys;
|
import com.kabouzeid.gramophone.misc.AppKeys;
|
||||||
import com.kabouzeid.gramophone.misc.DragSortRecycler;
|
|
||||||
import com.kabouzeid.gramophone.model.Playlist;
|
|
||||||
import com.kabouzeid.gramophone.model.PlaylistSong;
|
import com.kabouzeid.gramophone.model.PlaylistSong;
|
||||||
import com.kabouzeid.gramophone.model.Song;
|
import com.kabouzeid.gramophone.model.Song;
|
||||||
import com.kabouzeid.gramophone.ui.activities.base.AbsFabActivity;
|
import com.kabouzeid.gramophone.ui.activities.base.AbsFabActivity;
|
||||||
|
|
@ -31,7 +29,6 @@ import com.kabouzeid.gramophone.util.PlaylistsUtil;
|
||||||
import com.squareup.picasso.Picasso;
|
import com.squareup.picasso.Picasso;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -95,7 +92,7 @@ public class PlaylistSongAdapter extends RecyclerView.Adapter<PlaylistSongAdapte
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
PopupMenu popupMenu = new PopupMenu(activity, v);
|
PopupMenu popupMenu = new PopupMenu(activity, v);
|
||||||
popupMenu.inflate(R.menu.menu_playlist_song);
|
popupMenu.inflate(R.menu.menu_item_playlist_song);
|
||||||
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public boolean onMenuItemClick(MenuItem item) {
|
public boolean onMenuItemClick(MenuItem item) {
|
||||||
|
|
|
||||||
|
|
@ -90,7 +90,7 @@ public class SongAdapter extends RecyclerView.Adapter<SongAdapter.ViewHolder> {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
PopupMenu popupMenu = new PopupMenu(activity, v);
|
PopupMenu popupMenu = new PopupMenu(activity, v);
|
||||||
popupMenu.inflate(R.menu.menu_song);
|
popupMenu.inflate(R.menu.menu_item_song);
|
||||||
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public boolean onMenuItemClick(MenuItem item) {
|
public boolean onMenuItemClick(MenuItem item) {
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ public class CreatePlaylistDialogHelper {
|
||||||
|
|
||||||
public static MaterialDialog getDialog(final Context context, final List<Song> songs) {
|
public static MaterialDialog getDialog(final Context context, final List<Song> songs) {
|
||||||
final EditText editText = new EditText(context);
|
final EditText editText = new EditText(context);
|
||||||
ViewGroup layout = (ViewGroup) LayoutInflater.from(context).inflate(R.layout.dialog_create_playlist, null);
|
ViewGroup layout = (ViewGroup) LayoutInflater.from(context).inflate(R.layout.dialog_empty_frame, null);
|
||||||
if (editText.getParent() != null) {((ViewGroup) editText.getParent()).removeView(editText);}
|
if (editText.getParent() != null) {((ViewGroup) editText.getParent()).removeView(editText);}
|
||||||
layout.addView(editText, new LinearLayout.LayoutParams(
|
layout.addView(editText, new LinearLayout.LayoutParams(
|
||||||
ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
|
ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
package com.kabouzeid.gramophone.helper;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
|
||||||
|
import com.afollestad.materialdialogs.MaterialDialog;
|
||||||
|
import com.kabouzeid.gramophone.R;
|
||||||
|
import com.kabouzeid.gramophone.util.PlaylistsUtil;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by karim on 19.03.15.
|
||||||
|
*/
|
||||||
|
public class DeletePlaylistDialogHelper {
|
||||||
|
public static MaterialDialog getDialog(final Context context, final int playlistId){
|
||||||
|
return new MaterialDialog.Builder(context)
|
||||||
|
.title(context.getResources().getString(R.string.delete_playlist) + PlaylistsUtil.getNameForPlaylist(context, playlistId))
|
||||||
|
.positiveText(context.getResources().getString(R.string.ok))
|
||||||
|
.negativeText(context.getResources().getString(R.string.cancel))
|
||||||
|
.callback(new MaterialDialog.ButtonCallback() {
|
||||||
|
@Override
|
||||||
|
public void onPositive(MaterialDialog dialog) {
|
||||||
|
super.onPositive(dialog);
|
||||||
|
dialog.dismiss();
|
||||||
|
PlaylistsUtil.deletePlaylist(context, playlistId);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNegative(MaterialDialog dialog) {
|
||||||
|
super.onNegative(dialog);
|
||||||
|
dialog.dismiss();
|
||||||
|
}
|
||||||
|
}).build();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,50 @@
|
||||||
|
package com.kabouzeid.gramophone.helper;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.view.LayoutInflater;
|
||||||
|
import android.view.ViewGroup;
|
||||||
|
import android.widget.EditText;
|
||||||
|
import android.widget.LinearLayout;
|
||||||
|
|
||||||
|
import com.afollestad.materialdialogs.MaterialDialog;
|
||||||
|
import com.kabouzeid.gramophone.R;
|
||||||
|
import com.kabouzeid.gramophone.util.PlaylistsUtil;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by karim on 19.03.15.
|
||||||
|
*/
|
||||||
|
public class RenamePlaylistDialogHelper {
|
||||||
|
public static MaterialDialog getDialog(final Context context, final int playlistId) {
|
||||||
|
final EditText editText = new EditText(context);
|
||||||
|
ViewGroup layout = (ViewGroup) LayoutInflater.from(context).inflate(R.layout.dialog_empty_frame, null);
|
||||||
|
if (editText.getParent() != null) {
|
||||||
|
((ViewGroup) editText.getParent()).removeView(editText);
|
||||||
|
}
|
||||||
|
editText.setText(PlaylistsUtil.getNameForPlaylist(context, playlistId));
|
||||||
|
layout.addView(editText, new LinearLayout.LayoutParams(
|
||||||
|
ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
|
||||||
|
return new MaterialDialog.Builder(context)
|
||||||
|
.title(context.getResources().getString(R.string.rename_playlist))
|
||||||
|
.customView(layout, false)
|
||||||
|
.positiveText(context.getResources().getString(R.string.ok))
|
||||||
|
.negativeText(context.getResources().getString(R.string.cancel))
|
||||||
|
.callback(new MaterialDialog.ButtonCallback() {
|
||||||
|
@Override
|
||||||
|
public void onPositive(MaterialDialog dialog) {
|
||||||
|
super.onPositive(dialog);
|
||||||
|
final String playlistName = editText.getText().toString();
|
||||||
|
if (!playlistName.trim().equals("")) {
|
||||||
|
PlaylistsUtil.renamePlaylist(context, playlistId, playlistName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNegative(MaterialDialog dialog) {
|
||||||
|
super.onNegative(dialog);
|
||||||
|
dialog.dismiss();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -379,7 +379,7 @@ public class MusicControllerActivity extends AbsFabActivity {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCreateOptionsMenu(Menu menu) {
|
public boolean onCreateOptionsMenu(Menu menu) {
|
||||||
getMenuInflater().inflate(R.menu.menu_title_playing, menu);
|
getMenuInflater().inflate(R.menu.menu_music_playing, menu);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -165,6 +165,16 @@ public class PlaylistsUtil {
|
||||||
playlistId, from, to);
|
playlistId, from, to);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void renamePlaylist(final Context context, final int id, final String newName) {
|
||||||
|
ContentValues contentValues = new ContentValues();
|
||||||
|
contentValues.put(MediaStore.Audio.PlaylistsColumns.NAME, newName);
|
||||||
|
context.getContentResolver().update(MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI,
|
||||||
|
contentValues,
|
||||||
|
MediaStore.Audio.Playlists._ID + "=?",
|
||||||
|
new String[]{ String.valueOf(id) });
|
||||||
|
App.bus.post(new DataBaseChangedEvent(DataBaseChangedEvent.PLAYLISTS_CHANGED));
|
||||||
|
}
|
||||||
|
|
||||||
public static String getNameForPlaylist(final Context context, final int id) {
|
public static String getNameForPlaylist(final Context context, final int id) {
|
||||||
Cursor cursor = context.getContentResolver().query(
|
Cursor cursor = context.getContentResolver().query(
|
||||||
MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI,
|
MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI,
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,7 @@
|
||||||
android:layout_height="64dp"
|
android:layout_height="64dp"
|
||||||
android:background="?rect_selector"
|
android:background="?rect_selector"
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:paddingLeft="16dp"
|
android:paddingLeft="16dp">
|
||||||
android:paddingRight="16dp">
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
|
@ -17,8 +16,9 @@
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:layout_weight="1"
|
||||||
android:id="@+id/playlist_name"
|
android:id="@+id/playlist_name"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center_vertical"
|
android:layout_gravity="center_vertical"
|
||||||
android:layout_marginLeft="16dp"
|
android:layout_marginLeft="16dp"
|
||||||
|
|
@ -27,4 +27,10 @@
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:textAppearance="@style/TextAppearance.AppCompat.Body2"/>
|
android:textAppearance="@style/TextAppearance.AppCompat.Body2"/>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/menu"
|
||||||
|
style="@style/OverFlowButton"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_marginRight="2dp"/>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
10
app/src/main/res/menu/menu_item_playlist.xml
Normal file
10
app/src/main/res/menu/menu_item_playlist.xml
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<item
|
||||||
|
android:id="@+id/action_rename_playlist"
|
||||||
|
android:title="@string/rename_playlist"/>
|
||||||
|
|
||||||
|
<item
|
||||||
|
android:id="@+id/action_delete_playlist"
|
||||||
|
android:title="@string/delete_playlist"/>
|
||||||
|
</menu>
|
||||||
|
|
@ -2,19 +2,19 @@
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
tools:context="com.kabouzeid.gramophone.ui.activities.PlaylistDetailActivity">
|
tools:context="com.kabouzeid.gramophone.ui.activities.PlaylistDetailActivity">
|
||||||
<item
|
<item
|
||||||
android:id="@+id/action_current_playing"
|
android:id="@+id/action_current_playing"
|
||||||
android:icon="@drawable/music_box"
|
android:icon="@drawable/music_box"
|
||||||
android:title="@string/action_current_playing"
|
android:title="@string/action_current_playing"
|
||||||
app:showAsAction="ifRoom"/>
|
app:showAsAction="ifRoom"/>
|
||||||
|
<item
|
||||||
<item
|
android:id="@+id/action_playing_queue"
|
||||||
android:id="@+id/action_playing_queue"
|
android:icon="@drawable/ic_queue_music_white_24dp"
|
||||||
android:icon="@drawable/ic_queue_music_white_24dp"
|
android:title="@string/action_playing_queue"
|
||||||
android:title="@string/action_playing_queue"
|
app:showAsAction="never"/>
|
||||||
app:showAsAction="never"/>
|
<item
|
||||||
<item android:id="@+id/action_settings"
|
android:id="@+id/action_settings"
|
||||||
android:title="@string/action_settings"
|
android:orderInCategory="100"
|
||||||
android:orderInCategory="100"
|
android:title="@string/action_settings"
|
||||||
app:showAsAction="never"/>
|
app:showAsAction="never"/>
|
||||||
</menu>
|
</menu>
|
||||||
|
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
<menu 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"
|
|
||||||
tools:context="com.kabouzeid.gramophone.ui.activities.TabTest">
|
|
||||||
<item android:id="@+id/action_settings"
|
|
||||||
android:title="@string/action_settings"
|
|
||||||
android:orderInCategory="100"
|
|
||||||
app:showAsAction="never"/>
|
|
||||||
</menu>
|
|
||||||
|
|
@ -84,5 +84,6 @@
|
||||||
<string name="deleted_playlist">Deleted playlist\u0020</string>
|
<string name="deleted_playlist">Deleted playlist\u0020</string>
|
||||||
<string name="create_playlist_failed">Could not create playlist\u0020</string>
|
<string name="create_playlist_failed">Could not create playlist\u0020</string>
|
||||||
<string name="delete_playlist">Delete playlist\u0020</string>
|
<string name="delete_playlist">Delete playlist\u0020</string>
|
||||||
|
<string name="rename_playlist">Rename playlist\u0020</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue