diff --git a/.idea/copyright/Mit.xml b/.idea/copyright/Mit.xml
deleted file mode 100644
index e3676e3..0000000
--- a/.idea/copyright/Mit.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/libraries/appcompat_v7_22_1_1.xml b/.idea/libraries/appcompat_v7_22_1_1.xml
index 1a3326a..922ba24 100644
--- a/.idea/libraries/appcompat_v7_22_1_1.xml
+++ b/.idea/libraries/appcompat_v7_22_1_1.xml
@@ -1,11 +1,11 @@
-
+
-
-
+
+
diff --git a/.idea/libraries/support_v4_22_1_1.xml b/.idea/libraries/support_v4_22_1_1.xml
index c4d8988..dba4a27 100644
--- a/.idea/libraries/support_v4_22_1_1.xml
+++ b/.idea/libraries/support_v4_22_1_1.xml
@@ -1,9 +1,9 @@
-
-
-
+
+
+
diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml
new file mode 100644
index 0000000..7f68460
--- /dev/null
+++ b/.idea/runConfigurations.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/PlayMusicExporterGit.iml b/PlayMusicExporterGit.iml
index ccde83c..a25d277 100644
--- a/PlayMusicExporterGit.iml
+++ b/PlayMusicExporterGit.iml
@@ -8,7 +8,7 @@
-
+
diff --git a/framework/framework.iml b/framework/framework.iml
index e3174a4..1f4bfda 100644
--- a/framework/framework.iml
+++ b/framework/framework.iml
@@ -12,10 +12,12 @@
-
-
+
+ generateDebugSources
+ generateDebugTestSources
+
@@ -25,7 +27,7 @@
-
+
diff --git a/playmusicexporter/playmusicexporter.iml b/playmusicexporter/playmusicexporter.iml
index b0eec71..c8fa681 100644
--- a/playmusicexporter/playmusicexporter.iml
+++ b/playmusicexporter/playmusicexporter.iml
@@ -12,10 +12,12 @@
-
-
+
+ generateDebugSources
+ generateDebugTestSources
+
@@ -24,7 +26,7 @@
-
+
diff --git a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/actionmode/ActionModeTitle.java b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/actionmode/ActionModeTitle.java
index 022a180..c409918 100644
--- a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/actionmode/ActionModeTitle.java
+++ b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/actionmode/ActionModeTitle.java
@@ -60,8 +60,7 @@ public class ActionModeTitle implements ActionMode.Callback {
MenuInflater inflater = mode.getMenuInflater();
inflater.inflate(R.menu.action_mode_selection, menu);
- //mode.setSubtitle("TEST");
- mode.setTitleOptionalHint(true);
+
return true;
}
@@ -71,6 +70,9 @@ public class ActionModeTitle implements ActionMode.Callback {
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
updateViews();
+ // Update the title
+ mode.setTitle(mContext.getString(R.string.action_mode_track_selection, mSelectionList.getSelectedItems().size()));
+
return false; // Return false if nothing is done
}
@@ -85,8 +87,16 @@ public class ActionModeTitle implements ActionMode.Callback {
selectedTrack.export(mContext);
}
+ // Clear the selection
+ SelectedTrackList.getInstance().clear();
+
// Close the action mode
- mode.finish();
+ //mode.finish();
+ return true;
+ case R.id.action_deselect_all:
+ // Clear the selection
+ SelectedTrackList.getInstance().clear();
+
return true;
default:
return false;
diff --git a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/activities/MusicContainerListActivity.java b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/activities/MusicContainerListActivity.java
index 2b287c4..7350174 100644
--- a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/activities/MusicContainerListActivity.java
+++ b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/activities/MusicContainerListActivity.java
@@ -41,6 +41,7 @@ import de.arcus.playmusicexporter2.R;
import de.arcus.playmusicexporter2.fragments.MusicTrackListFragment;
import de.arcus.playmusicexporter2.fragments.MusicContainerListFragment;
import de.arcus.playmusicexporter2.fragments.NavigationDrawerFragment;
+import de.arcus.playmusicexporter2.items.SelectedTrackList;
import de.arcus.playmusiclib.PlayMusicManager;
import de.arcus.playmusiclib.datasources.AlbumDataSource;
import de.arcus.playmusiclib.datasources.ArtistDataSource;
@@ -160,6 +161,9 @@ public class MusicContainerListActivity extends AppCompatActivity
// Loads the list
mViewType = mNavigationDrawerFragment.getViewType();
loadList();
+
+ // Setup the selection list for this activity
+ SelectedTrackList.getInstance().setupActionMode(this);
}
/**
diff --git a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/activities/MusicTrackListActivity.java b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/activities/MusicTrackListActivity.java
index 66cac8b..edf4058 100644
--- a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/activities/MusicTrackListActivity.java
+++ b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/activities/MusicTrackListActivity.java
@@ -32,6 +32,7 @@ import android.view.MenuItem;
import de.arcus.framework.crashhandler.CrashHandler;
import de.arcus.playmusicexporter2.R;
import de.arcus.playmusicexporter2.fragments.MusicTrackListFragment;
+import de.arcus.playmusicexporter2.items.SelectedTrackList;
import de.arcus.playmusiclib.PlayMusicManager;
import de.arcus.playmusiclib.items.MusicTrackList;
@@ -102,6 +103,9 @@ public class MusicTrackListActivity extends AppCompatActivity {
.add(R.id.track_detail_container, fragment)
.commit();
}
+
+ // Setup the selection list for this activity
+ SelectedTrackList.getInstance().setupActionMode(this);
}
@Override
@@ -129,6 +133,7 @@ public class MusicTrackListActivity extends AppCompatActivity {
MusicTrackListFragment musicTrackDetailFragment = (MusicTrackListFragment) getSupportFragmentManager()
.findFragmentById(R.id.track_detail_container);
- musicTrackDetailFragment.updateListView();
+ if (musicTrackDetailFragment != null)
+ musicTrackDetailFragment.updateListView();
}
}
diff --git a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/fragments/MusicContainerListFragment.java b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/fragments/MusicContainerListFragment.java
index 4fd7e8d..db19b75 100644
--- a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/fragments/MusicContainerListFragment.java
+++ b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/fragments/MusicContainerListFragment.java
@@ -25,6 +25,7 @@ package de.arcus.playmusicexporter2.fragments;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
+import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ListView;
@@ -33,6 +34,7 @@ import java.util.ArrayList;
import java.util.List;
import de.arcus.playmusicexporter2.adapter.MusicContainerListAdapter;
+import de.arcus.playmusicexporter2.items.SelectedTrackList;
import de.arcus.playmusiclib.items.MusicTrackList;
/**
@@ -130,7 +132,7 @@ public class MusicContainerListFragment extends ListFragment {
mMusicTrackListAdapter = new MusicContainerListAdapter(getActivity());
-
+ // Setup the list view
setListAdapter(mMusicTrackListAdapter);
}
diff --git a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/fragments/MusicTrackListFragment.java b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/fragments/MusicTrackListFragment.java
index b21ce0a..67a9d76 100644
--- a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/fragments/MusicTrackListFragment.java
+++ b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/fragments/MusicTrackListFragment.java
@@ -104,9 +104,6 @@ public class MusicTrackListFragment extends Fragment {
mMusicTrackList = MusicTrackList.deserialize(playMusicManager, id, type);
}
}
-
- // Setup the selection list for this activity
- SelectedTrackList.getInstance().setupActionMode((AppCompatActivity)getActivity());
}
@Override
@@ -146,10 +143,6 @@ public class MusicTrackListFragment extends Fragment {
musicTrackAdapter.setList(mMusicTrackList.getMusicTrackList());
mListView.setAdapter(musicTrackAdapter);
- //listView.setDrawSelectorOnTop(false);
- mListView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
- mListView.setItemsCanFocus(false);
-
// Click on one list item
mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
diff --git a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/utils/ArtworkViewLoader.java b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/utils/ArtworkViewLoader.java
index d8aaa9b..e14381e 100644
--- a/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/utils/ArtworkViewLoader.java
+++ b/playmusicexporter/src/main/java/de/arcus/playmusicexporter2/utils/ArtworkViewLoader.java
@@ -27,6 +27,8 @@ import android.widget.ImageView;
import java.lang.ref.WeakReference;
+import de.arcus.framework.logger.Logger;
+import de.arcus.playmusicexporter2.R;
import de.arcus.playmusiclib.ArtworkLoader;
import de.arcus.playmusiclib.ArtworkLoaderCallback;
import de.arcus.playmusiclib.items.ArtworkEntry;
@@ -74,6 +76,11 @@ public class ArtworkViewLoader {
* @param defaultImage The default image in case the image could not be loaded
*/
public static void loadImage(ArtworkEntry artworkEntry, ImageView imageView, int defaultImage) {
+ // No artwork
+ if (artworkEntry.getArtworkLocation() == null) {
+ return;
+ }
+
// Checks for an old artwork loader on this image view
ArtworkViewLoader imageViewLoader = (ArtworkViewLoader)imageView.getTag();
@@ -112,7 +119,7 @@ public class ArtworkViewLoader {
int maximalArtworkSize = 0;
if (imageViewDefault != null) {
// The maximum artwork size
- maximalArtworkSize = imageViewDefault.getWidth();
+ maximalArtworkSize = imageViewDefault.getContext().getResources().getDimensionPixelSize(R.dimen.music_track_artwork_loading_size);
// Sets the bitmap in the UI thread
Runnable runnable = new Runnable() {
@@ -126,6 +133,8 @@ public class ArtworkViewLoader {
imageViewDefault.post(runnable);
}
+
+
// Start loading
mIsLoading = true;
diff --git a/playmusicexporter/src/main/res/drawable-hdpi/ic_action_select_none.png b/playmusicexporter/src/main/res/drawable-hdpi/ic_action_select_none.png
new file mode 100755
index 0000000..6db7076
Binary files /dev/null and b/playmusicexporter/src/main/res/drawable-hdpi/ic_action_select_none.png differ
diff --git a/playmusicexporter/src/main/res/drawable-mdpi/ic_action_select_none.png b/playmusicexporter/src/main/res/drawable-mdpi/ic_action_select_none.png
new file mode 100755
index 0000000..cff4eb9
Binary files /dev/null and b/playmusicexporter/src/main/res/drawable-mdpi/ic_action_select_none.png differ
diff --git a/playmusicexporter/src/main/res/drawable-xhdpi/ic_action_select_none.png b/playmusicexporter/src/main/res/drawable-xhdpi/ic_action_select_none.png
new file mode 100755
index 0000000..d3ecde5
Binary files /dev/null and b/playmusicexporter/src/main/res/drawable-xhdpi/ic_action_select_none.png differ
diff --git a/playmusicexporter/src/main/res/drawable-xxhdpi/ic_action_select_none.png b/playmusicexporter/src/main/res/drawable-xxhdpi/ic_action_select_none.png
new file mode 100755
index 0000000..c51c9a8
Binary files /dev/null and b/playmusicexporter/src/main/res/drawable-xxhdpi/ic_action_select_none.png differ
diff --git a/playmusicexporter/src/main/res/menu/action_mode_selection.xml b/playmusicexporter/src/main/res/menu/action_mode_selection.xml
index 934b3c8..1cb90e6 100644
--- a/playmusicexporter/src/main/res/menu/action_mode_selection.xml
+++ b/playmusicexporter/src/main/res/menu/action_mode_selection.xml
@@ -27,6 +27,11 @@
android:icon="@drawable/ic_action_select_all"
app:showAsAction="ifRoom" />
+
+
- Benutzerdefinierter Pfad
Maximale Artworkgröße
Wenn die Größe des Artworks größer als der eingestellte Wert ist, wird das Artwork auf diesen Wert runter skalliert.
+ %d Titel ausgewählt
\ No newline at end of file
diff --git a/playmusicexporter/src/main/res/values/dimens.xml b/playmusicexporter/src/main/res/values/dimens.xml
index 9089ed7..e9518fa 100644
--- a/playmusicexporter/src/main/res/values/dimens.xml
+++ b/playmusicexporter/src/main/res/values/dimens.xml
@@ -25,6 +25,7 @@
86dp
128dp
86dp
+ 86dp
280dp
\ No newline at end of file
diff --git a/playmusicexporter/src/main/res/values/strings.xml b/playmusicexporter/src/main/res/values/strings.xml
index f607b95..409ac30 100644
--- a/playmusicexporter/src/main/res/values/strings.xml
+++ b/playmusicexporter/src/main/res/values/strings.xml
@@ -27,6 +27,7 @@
Track Detail
Select all
+ Deselect all
Export
Play
Share
@@ -110,4 +111,5 @@
Support me
Donate to me via PayPal
+ %d tracks selected
diff --git a/playmusiclib/playmusiclib.iml b/playmusiclib/playmusiclib.iml
index d2c9ede..f6ff216 100644
--- a/playmusiclib/playmusiclib.iml
+++ b/playmusiclib/playmusiclib.iml
@@ -12,10 +12,12 @@
-
-
+
+ generateDebugSources
+ generateDebugTestSources
+
@@ -25,7 +27,7 @@
-
+