From c6fc6493efe5e7eb592512bfc42b0755af0c08b9 Mon Sep 17 00:00:00 2001 From: David Schulte Date: Sun, 9 Aug 2015 21:08:01 +0200 Subject: [PATCH] Fixed artwork loading size Fixed action mode Add deselect button --- .idea/copyright/Mit.xml | 9 --------- .idea/libraries/appcompat_v7_22_1_1.xml | 6 +++--- .idea/libraries/support_v4_22_1_1.xml | 6 +++--- .idea/runConfigurations.xml | 12 ++++++++++++ PlayMusicExporterGit.iml | 2 +- framework/framework.iml | 8 +++++--- playmusicexporter/playmusicexporter.iml | 8 +++++--- .../actionmode/ActionModeTitle.java | 16 +++++++++++++--- .../activities/MusicContainerListActivity.java | 4 ++++ .../activities/MusicTrackListActivity.java | 7 ++++++- .../fragments/MusicContainerListFragment.java | 4 +++- .../fragments/MusicTrackListFragment.java | 7 ------- .../utils/ArtworkViewLoader.java | 11 ++++++++++- .../res/drawable-hdpi/ic_action_select_none.png | Bin 0 -> 700 bytes .../res/drawable-mdpi/ic_action_select_none.png | Bin 0 -> 571 bytes .../drawable-xhdpi/ic_action_select_none.png | Bin 0 -> 752 bytes .../drawable-xxhdpi/ic_action_select_none.png | Bin 0 -> 619 bytes .../src/main/res/menu/action_mode_selection.xml | 5 +++++ .../src/main/res/values-de/strings.xml | 1 + .../src/main/res/values/dimens.xml | 1 + .../src/main/res/values/strings.xml | 2 ++ playmusiclib/playmusiclib.iml | 8 +++++--- 22 files changed, 79 insertions(+), 38 deletions(-) delete mode 100644 .idea/copyright/Mit.xml create mode 100644 .idea/runConfigurations.xml create mode 100755 playmusicexporter/src/main/res/drawable-hdpi/ic_action_select_none.png create mode 100755 playmusicexporter/src/main/res/drawable-mdpi/ic_action_select_none.png create mode 100755 playmusicexporter/src/main/res/drawable-xhdpi/ic_action_select_none.png create mode 100755 playmusicexporter/src/main/res/drawable-xxhdpi/ic_action_select_none.png 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 @@ - + 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 @@ - + 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 0000000000000000000000000000000000000000..6db70769dbe1abd90165b7f68e7a4a09e6e9a988 GIT binary patch literal 700 zcmV;t0z>_YP)8!q6!X8-^I0!c|k zK~!ko?O9D~+h7oV&k|X9<7geS?FGCE^Z;GOG>7N~LPO7BTzZw37J37NHzwf5O;T^9lcArVCC9Q3o zNLoo+m_3p7OVZ5jnb{Mw7v`T-6uS=b9P}yFate6?2>_6MZ23l>m*Qc$w`w^P5=jpp zkJyR-eFEA1WIUqEYTy*=a^D)5SnhqzIW`6`F1Y5BK#F{IfNB;Yo?ktI^KC(0ET^Wi!8QQ41vi?yUwctCZ7CX`w;=|0000u4^P)8Y=$Cl2`x$0mw;2 zK~z}7?U%7iD^U=JzYz-yMKrb+76w8p3l&nNO0@C`ZhIAc8#_VGn^;(hCJ!K(1q*AD zOK$CN;jAo&lk8Emn!lKY;jPQ!0FS^$_^`Ru7MA#wcn>KA4uM()8nh1l4V|$TY)5=n z;kRhK+nuJ%Ovw%wS2$o{S9%q9-9~+mv>SN20*<69cTgl6at|V zPRqWegwxQ0sLhX2!mC0RrlkY95}wV}&+(5BBr#yOqLHj7sgrUD^@i7)vqn-&(z>sf z``U#8v=sLdrX!z>_aqHHNxv{|_uV)2QM>a2+-UaynEcvz+bh8U!L9pO*jt0)0tD zK~#9!?OQQ!8!-@^4Gg)6V5u??7e-*fUrCpjq;jEmp{@&p(R27|$1r~^r~-1;7x%x7Z1|P?CA+$?h!x&H$VP7^NV=dtCvGzQ`8<5BfW7T?q9}%vJHJ zi%yziV&h};rKzK-BS8_FY*LIWnnExZk<*m%UOVqdP((T-!Ik=rHUB=E@KsCkMUdcF zL@pav)O^DLW8=3b!H@~~?n&Sf29EJzfF!;ozL^J@ueuiQtAPDYJz$fHxFoY zPI8tye%I1jY7#7=9*|WDmaq+GQ-XFJ-n-+lVw;*^39y=A=Spyg^E_LM&!YrOst4pG z!BXl0-7CS8FGr&;Q4isIJlXBADM3?${ZxYXnOtNC)SDQWdrqXRJyDXwuT>@JNajqJ zn!ASbZC5q6uKkiJ!LNA#v9xI8=M~Z7+oZ;p!|x=;3UI2+|L}OI3_C2?cG932(+Hux i|HFjAU@#aA`-}f?zvjyO&vJbL0000<-zzwUHQb1G^N!_1?Tjc&)@vIu{_^QkP&DY2sDHlM4MYYpV!UY zvy(l$xufUcr<9(J2Y+cOId918H4JvG7XSF8)&AbWJrfv&fa+OKUQnDA8@&2p@wrl^ zOWBV$X3JklV0ytkVc~*D(>A0lHf2v88>U9J6m@NE@qn&#=K#% z_{MpcNg(oUC~y3^11w{Go0V$;wJRB-r{D;*faAn*Qsh&L)o?74OLdZ z%04lNn~JxHUd)hhIP+=6+l=C8m)*i$KHWLjAAaH8^J3Oe4o;1=Y;Q8$uPZojTx{Gd z>&x44`8UHdB^w|2=PfT^xTR{8ZRuydd~s%=zx(q)eGwmv9Zy^UifWxW++WJzaPe$R z)3>92-!>lTJI7O2@^V50Q#J$8F+d#**LOCB{ZqYv|NW)5O>4QY#oy;Q&AK`JZeQQq zo1W9;Z`vx|OgmbwY5J!3aU+*g8xtou&OpQtCV2;Cu7|wEY{?+5r>mdKI;Vst0QQ6j AJ^%m! literal 0 HcmV?d00001 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 @@ - +