diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 87ba564a9..c8f911478 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -119,7 +119,7 @@
-
+
diff --git a/app/src/main/java/code/name/monkey/retromusic/activities/ShareInstagramStory.kt b/app/src/main/java/code/name/monkey/retromusic/activities/ShareInstagramStory.kt
new file mode 100644
index 000000000..3a3fef60f
--- /dev/null
+++ b/app/src/main/java/code/name/monkey/retromusic/activities/ShareInstagramStory.kt
@@ -0,0 +1,87 @@
+/*
+ * Copyright (c) 2020 Hemanth Savarala.
+ *
+ * Licensed under the GNU General Public License v3
+ *
+ * This is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by
+ * the Free Software Foundation either version 3 of the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ * See the GNU General Public License for more details.
+ */
+
+package code.name.monkey.retromusic.activities
+
+import android.content.res.ColorStateList
+import android.graphics.Bitmap
+import android.net.Uri
+import android.os.Bundle
+import android.provider.MediaStore.Images.Media
+import androidx.core.view.drawToBitmap
+import code.name.monkey.appthemehelper.ThemeStore
+import code.name.monkey.appthemehelper.util.ATHUtil
+import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper
+import code.name.monkey.retromusic.R
+import code.name.monkey.retromusic.activities.base.AbsBaseActivity
+import code.name.monkey.retromusic.glide.SongGlideRequest
+import code.name.monkey.retromusic.model.Song
+import code.name.monkey.retromusic.util.Share
+import com.bumptech.glide.Glide
+import kotlinx.android.synthetic.main.activity_share_instagram.image
+import kotlinx.android.synthetic.main.activity_share_instagram.mainContent
+import kotlinx.android.synthetic.main.activity_share_instagram.shareButton
+import kotlinx.android.synthetic.main.activity_share_instagram.shareText
+import kotlinx.android.synthetic.main.activity_share_instagram.shareTitle
+import kotlinx.android.synthetic.main.activity_share_instagram.toolbar
+
+/**
+ * Created by hemanths on 2020-02-02.
+ */
+
+class ShareInstagramStory : AbsBaseActivity() {
+
+ companion object {
+ const val EXTRA_SONG = "extra_song"
+ }
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ setDrawUnderStatusBar()
+ super.onCreate(savedInstanceState)
+ setContentView(R.layout.activity_share_instagram)
+ setStatusbarColorAuto()
+ setNavigationbarColorAuto()
+ setLightNavigationBar(true)
+
+ val toolbarColor = ATHUtil.resolveColor(this, R.attr.colorSurface)
+ toolbar.setBackgroundColor(toolbarColor)
+ ToolbarContentTintHelper.colorBackButton(toolbar)
+ setSupportActionBar(toolbar)
+
+ val song = intent.extras?.getParcelable(EXTRA_SONG)
+ song?.let { songFinal ->
+ SongGlideRequest.Builder.from(Glide.with(this), songFinal)
+ .asBitmap()
+ .build()
+ .into(image)
+
+ shareTitle.text = songFinal.title
+ shareText.text = songFinal.artistName
+ shareButton.setOnClickListener {
+ val path: String = Media.insertImage(
+ contentResolver,
+ mainContent.drawToBitmap(Bitmap.Config.ARGB_8888),
+ "Design", null
+ )
+ val uri = Uri.parse(path)
+ Share.shareFileToInstagram(
+ this@ShareInstagramStory,
+ songFinal,
+ uri
+ )
+ }
+ }
+ shareButton.backgroundTintList = ColorStateList.valueOf(ThemeStore.accentColor(this))
+ }
+}
diff --git a/app/src/main/java/code/name/monkey/retromusic/activities/base/AbsSlidingMusicPanelActivity.kt b/app/src/main/java/code/name/monkey/retromusic/activities/base/AbsSlidingMusicPanelActivity.kt
index 7cec24c4a..7329a9118 100644
--- a/app/src/main/java/code/name/monkey/retromusic/activities/base/AbsSlidingMusicPanelActivity.kt
+++ b/app/src/main/java/code/name/monkey/retromusic/activities/base/AbsSlidingMusicPanelActivity.kt
@@ -306,6 +306,7 @@ abstract class AbsSlidingMusicPanelActivity : AbsMusicServiceActivity(), AbsPlay
} else if (currentNowPlayingScreen == FULL || currentNowPlayingScreen == CARD || currentNowPlayingScreen == FIT || currentNowPlayingScreen == BLUR || currentNowPlayingScreen == BLUR_CARD) {
super.setLightStatusbar(false)
super.setLightNavigationBar(true)
+ super.setNavigationbarColor(Color.BLACK)
} else if (currentNowPlayingScreen == COLOR || currentNowPlayingScreen == TINY) {
super.setNavigationbarColor(paletteColor)
super.setLightNavigationBar(isColorLight)
diff --git a/app/src/main/java/code/name/monkey/retromusic/dialogs/SongShareDialog.kt b/app/src/main/java/code/name/monkey/retromusic/dialogs/SongShareDialog.kt
index 85a7fbffc..7a7cb1833 100644
--- a/app/src/main/java/code/name/monkey/retromusic/dialogs/SongShareDialog.kt
+++ b/app/src/main/java/code/name/monkey/retromusic/dialogs/SongShareDialog.kt
@@ -19,6 +19,7 @@ import android.content.Intent
import android.os.Bundle
import androidx.fragment.app.DialogFragment
import code.name.monkey.retromusic.R
+import code.name.monkey.retromusic.activities.ShareInstagramStory
import code.name.monkey.retromusic.model.Song
import code.name.monkey.retromusic.util.MusicUtil
import code.name.monkey.retromusic.util.PreferenceUtil
@@ -29,7 +30,7 @@ import com.afollestad.materialdialogs.list.listItems
class SongShareDialog : DialogFragment() {
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
- val song: Song? = arguments!!.getParcelable("song")
+ val song: Song? = arguments?.getParcelable("song")
val currentlyListening: String =
getString(R.string.currently_listening_to_x_by_x, song?.title, song?.artistName)
@@ -40,7 +41,8 @@ class SongShareDialog : DialogFragment() {
listItems(
items = listOf(
getString(code.name.monkey.retromusic.R.string.the_audio_file),
- "\u201C" + currentlyListening + "\u201D"
+ "\u201C" + currentlyListening + "\u201D",
+ getString(R.string.social_instagram)
)
) { _, index, _ ->
when (index) {
@@ -53,7 +55,7 @@ class SongShareDialog : DialogFragment() {
}, null))
}
1 -> {
- activity!!.startActivity(
+ startActivity(
Intent.createChooser(
Intent()
.setAction(Intent.ACTION_SEND)
@@ -63,6 +65,16 @@ class SongShareDialog : DialogFragment() {
)
)
}
+ 2 -> {
+ if (song != null) {
+ startActivity(
+ Intent(requireContext(), ShareInstagramStory::class.java).putExtra(
+ ShareInstagramStory.EXTRA_SONG,
+ song
+ )
+ )
+ }
+ }
}
}
}
diff --git a/app/src/main/java/code/name/monkey/retromusic/fragments/base/AbsPlayerFragment.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/base/AbsPlayerFragment.kt
index e0b174967..019f2261d 100644
--- a/app/src/main/java/code/name/monkey/retromusic/fragments/base/AbsPlayerFragment.kt
+++ b/app/src/main/java/code/name/monkey/retromusic/fragments/base/AbsPlayerFragment.kt
@@ -76,15 +76,15 @@ abstract class AbsPlayerFragment : AbsMusicServiceFragment(),
return true
}
R.id.action_share -> {
- SongShareDialog.create(song).show(requireFragmentManager(), "SHARE_SONG")
+ SongShareDialog.create(song).show(childFragmentManager, "SHARE_SONG")
return true
}
R.id.action_delete_from_device -> {
- DeleteSongsDialog.create(song).show(requireFragmentManager(), "DELETE_SONGS")
+ DeleteSongsDialog.create(song).show(childFragmentManager, "DELETE_SONGS")
return true
}
R.id.action_add_to_playlist -> {
- AddToPlaylistDialog.create(song).show(requireFragmentManager(), "ADD_PLAYLIST")
+ AddToPlaylistDialog.create(song).show(childFragmentManager, "ADD_PLAYLIST")
return true
}
R.id.action_clear_playing_queue -> {
@@ -93,7 +93,7 @@ abstract class AbsPlayerFragment : AbsMusicServiceFragment(),
}
R.id.action_save_playing_queue -> {
CreatePlaylistDialog.create(MusicPlayerRemote.playingQueue)
- .show(requireFragmentManager(), "ADD_TO_PLAYLIST")
+ .show(childFragmentManager, "ADD_TO_PLAYLIST")
return true
}
R.id.action_tag_editor -> {
@@ -103,7 +103,7 @@ abstract class AbsPlayerFragment : AbsMusicServiceFragment(),
return true
}
R.id.action_details -> {
- SongDetailDialog.create(song).show(requireFragmentManager(), "SONG_DETAIL")
+ SongDetailDialog.create(song).show(childFragmentManager, "SONG_DETAIL")
return true
}
R.id.action_go_to_album -> {
diff --git a/app/src/main/java/code/name/monkey/retromusic/service/MusicService.java b/app/src/main/java/code/name/monkey/retromusic/service/MusicService.java
index 0bf2102c5..a05b9701b 100644
--- a/app/src/main/java/code/name/monkey/retromusic/service/MusicService.java
+++ b/app/src/main/java/code/name/monkey/retromusic/service/MusicService.java
@@ -396,18 +396,27 @@ public class MusicService extends Service implements
mediaStoreObserver = new MediaStoreObserver(this, playerHandler);
throttledSeekHandler = new ThrottledSeekHandler(this, playerHandler);
- getContentResolver().registerContentObserver(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, true, mediaStoreObserver);
- getContentResolver().registerContentObserver(MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI, true, mediaStoreObserver);
- getContentResolver().registerContentObserver(MediaStore.Audio.Artists.EXTERNAL_CONTENT_URI, true, mediaStoreObserver);
- getContentResolver().registerContentObserver(MediaStore.Audio.Genres.EXTERNAL_CONTENT_URI, true, mediaStoreObserver);
- getContentResolver().registerContentObserver(MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI, true, mediaStoreObserver);
-
- getContentResolver().registerContentObserver(MediaStore.Audio.Media.INTERNAL_CONTENT_URI, true, mediaStoreObserver);
- getContentResolver().registerContentObserver(MediaStore.Audio.Albums.INTERNAL_CONTENT_URI, true, mediaStoreObserver);
- getContentResolver().registerContentObserver(MediaStore.Audio.Artists.INTERNAL_CONTENT_URI, true, mediaStoreObserver);
- getContentResolver().registerContentObserver(MediaStore.Audio.Genres.INTERNAL_CONTENT_URI, true, mediaStoreObserver);
- getContentResolver().registerContentObserver(MediaStore.Audio.Playlists.INTERNAL_CONTENT_URI, true, mediaStoreObserver);
+ getContentResolver()
+ .registerContentObserver(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, true, mediaStoreObserver);
+ getContentResolver()
+ .registerContentObserver(MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI, true, mediaStoreObserver);
+ getContentResolver()
+ .registerContentObserver(MediaStore.Audio.Artists.EXTERNAL_CONTENT_URI, true, mediaStoreObserver);
+ getContentResolver()
+ .registerContentObserver(MediaStore.Audio.Genres.EXTERNAL_CONTENT_URI, true, mediaStoreObserver);
+ getContentResolver()
+ .registerContentObserver(MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI, true, mediaStoreObserver);
+ getContentResolver()
+ .registerContentObserver(MediaStore.Audio.Media.INTERNAL_CONTENT_URI, true, mediaStoreObserver);
+ getContentResolver()
+ .registerContentObserver(MediaStore.Audio.Albums.INTERNAL_CONTENT_URI, true, mediaStoreObserver);
+ getContentResolver()
+ .registerContentObserver(MediaStore.Audio.Artists.INTERNAL_CONTENT_URI, true, mediaStoreObserver);
+ getContentResolver()
+ .registerContentObserver(MediaStore.Audio.Genres.INTERNAL_CONTENT_URI, true, mediaStoreObserver);
+ getContentResolver()
+ .registerContentObserver(MediaStore.Audio.Playlists.INTERNAL_CONTENT_URI, true, mediaStoreObserver);
PreferenceUtil.getInstance(this).registerOnSharedPreferenceChangedListener(this);
diff --git a/app/src/main/java/code/name/monkey/retromusic/util/ImageSaver.kt b/app/src/main/java/code/name/monkey/retromusic/util/ImageSaver.kt
deleted file mode 100644
index 265c057a6..000000000
--- a/app/src/main/java/code/name/monkey/retromusic/util/ImageSaver.kt
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (c) 2019 Hemanth Savarala.
- *
- * Licensed under the GNU General Public License v3
- *
- * This is free software: you can redistribute it and/or modify it under
- * the terms of the GNU General Public License as published by
- * the Free Software Foundation either version 3 of the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
- * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- * See the GNU General Public License for more details.
- */
-
-package code.name.monkey.retromusic.util
-
-import android.content.Context
-import android.graphics.Bitmap
-import android.graphics.BitmapFactory
-import android.os.Environment
-import java.io.File
-import java.io.FileInputStream
-import java.io.FileOutputStream
-import java.io.IOException
-
-/**
- * Created by hemanths on 2019-11-05.
- */
-
-class ImageSaver(val context: Context) {
- private var external: Boolean = false
- private var directoryName: String = "RetroMusic"
- private var fileName: String = "profile.png"
-
- fun setFileName(fileName: String): ImageSaver {
- this.fileName = fileName
- return this
- }
-
- fun setDirectoryName(directoryName: String): ImageSaver {
- this.directoryName = directoryName
- return this
- }
-
- fun setStoreType(external: Boolean): ImageSaver {
- this.external = external
- return this
- }
-
- fun save(bitmap: Bitmap) {
- var fileOutputStream: FileOutputStream? = null
- try {
- fileOutputStream = FileOutputStream(createFile())
- bitmap.compress(Bitmap.CompressFormat.PNG, 100, fileOutputStream)
- } catch (er: Exception) {
- println(er)
- } finally {
- try {
- fileOutputStream?.close()
- } catch (er: IOException) {
- println(er)
- }
- }
- }
-
- fun getFile(): File {
- return createFile()
- }
-
- private fun createFile(): File {
- val directory: File = if (external) {
- getFileStorePlace(directoryName)
- } else {
- context.getDir(directoryName, Context.MODE_PRIVATE)
- }
- if (!directory.exists() && !directory.mkdirs()) {
- println("Error in creating folders $directory")
- }
- println("Create file -> $directory/$fileName")
- return File(directory, fileName)
- }
-
- private fun getFileStorePlace(directoryName: String): File {
- return File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), directoryName)
- }
-
- fun load(): Bitmap? {
- var inputStream: FileInputStream? = null
- return try {
- inputStream = FileInputStream(createFile())
- BitmapFactory.decodeStream(inputStream)
- } catch (er: Exception) {
- try {
- inputStream?.close()
- } catch (e: IOException) {
- e.printStackTrace()
- }
- null
- }
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/code/name/monkey/retromusic/util/LastFMUtil.java b/app/src/main/java/code/name/monkey/retromusic/util/LastFMUtil.java
deleted file mode 100755
index a8f47946a..000000000
--- a/app/src/main/java/code/name/monkey/retromusic/util/LastFMUtil.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright (c) 2019 Hemanth Savarala.
- *
- * Licensed under the GNU General Public License v3
- *
- * This is free software: you can redistribute it and/or modify it under
- * the terms of the GNU General Public License as published by
- * the Free Software Foundation either version 3 of the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
- * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- * See the GNU General Public License for more details.
- */
-
-package code.name.monkey.retromusic.util;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-
-import code.name.monkey.retromusic.rest.model.LastFmAlbum.Album.Image;
-import code.name.monkey.retromusic.rest.model.LastFmArtist;
-
-public class LastFMUtil {
-
- public static String getLargestAlbumImageUrl(List list) {
- Map hashMap = new HashMap();
- for (Image image : list) {
- Object obj = null;
- String size = image.getSize();
- if (size == null) {
- obj = ImageSize.UNKNOWN;
- } else {
- try {
- obj = ImageSize.valueOf(size.toUpperCase(Locale.ENGLISH));
- } catch (IllegalArgumentException ignored) {
- }
- }
- if (obj != null) {
- hashMap.put(obj, image.getText());
- }
- }
- return getLargestImageUrl(hashMap);
- }
-
- public static String getLargestArtistImageUrl(List list) {
- Map hashMap = new HashMap();
- for (LastFmArtist.Artist.Image image : list) {
- Object obj = null;
- String size = image.getSize();
- if (size == null) {
- obj = ImageSize.UNKNOWN;
- } else {
- try {
- obj = ImageSize.valueOf(size.toUpperCase(Locale.ENGLISH));
- } catch (IllegalArgumentException ignored) {
- }
- }
- if (obj != null) {
- hashMap.put(obj, image.getText());
- }
- }
- return getLargestImageUrl(hashMap);
- }
-
- private static String getLargestImageUrl(Map map) {
- return map.containsKey(ImageSize.MEGA) ? map.get(ImageSize.MEGA)
- : map.containsKey(ImageSize.EXTRALARGE) ? map.get(ImageSize.EXTRALARGE)
- : map.containsKey(ImageSize.LARGE) ? map.get(ImageSize.LARGE)
- : map.containsKey(ImageSize.MEDIUM) ? map.get(ImageSize.MEDIUM)
- : map.containsKey(ImageSize.SMALL) ? map.get(ImageSize.SMALL)
- : map.containsKey(ImageSize.UNKNOWN) ? map.get(ImageSize.UNKNOWN) : null;
- }
-
- private enum ImageSize {
- SMALL,
- MEDIUM,
- LARGE,
- EXTRALARGE,
- MEGA,
- UNKNOWN
- }
-}
diff --git a/app/src/main/java/code/name/monkey/retromusic/util/Share.kt b/app/src/main/java/code/name/monkey/retromusic/util/Share.kt
new file mode 100644
index 000000000..6f160ec56
--- /dev/null
+++ b/app/src/main/java/code/name/monkey/retromusic/util/Share.kt
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2020 Hemanth Savarala.
+ *
+ * Licensed under the GNU General Public License v3
+ *
+ * This is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by
+ * the Free Software Foundation either version 3 of the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ * See the GNU General Public License for more details.
+ */
+
+package code.name.monkey.retromusic.util
+
+import android.content.Context
+import android.content.Intent
+import android.net.Uri
+import androidx.core.app.ActivityCompat
+import code.name.monkey.retromusic.R
+import code.name.monkey.retromusic.model.Song
+
+/**
+ * Created by hemanths on 2020-02-02.
+ */
+
+object Share {
+
+ private const val INSTAGRAM_PACKAGE_NAME = "com.instagram.android"
+
+ fun shareFileToInstagram(context: Context, song: Song, uri: Uri) {
+ val feedIntent = Intent(Intent.ACTION_SEND)
+ feedIntent.type = "image/*"
+ feedIntent.putExtra(Intent.EXTRA_TITLE, song.title)
+ feedIntent.putExtra(Intent.EXTRA_TEXT, song.artistName)
+ feedIntent.putExtra(Intent.EXTRA_STREAM, uri)
+ feedIntent.setPackage(INSTAGRAM_PACKAGE_NAME)
+
+ val storiesIntent = Intent("com.instagram.share.ADD_TO_STORY")
+ storiesIntent.setDataAndType(uri, "jpg")
+ storiesIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION)
+ storiesIntent.setPackage(INSTAGRAM_PACKAGE_NAME)
+ storiesIntent.putExtra(Intent.EXTRA_TITLE, song.title)
+ storiesIntent.putExtra(Intent.EXTRA_TEXT, song.artistName)
+ context.grantUriPermission("com.instagram.android", uri, Intent.FLAG_GRANT_READ_URI_PERMISSION)
+ val chooserIntent = Intent.createChooser(feedIntent, context.getString(R.string.social_instagram))
+ chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, arrayOf(storiesIntent))
+ ActivityCompat.startActivity(context, chooserIntent, null)
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/res/drawable/shadow_up_full_theme.xml b/app/src/main/res/drawable/shadow_up_full_theme.xml
index 34a8df785..4807206b3 100644
--- a/app/src/main/res/drawable/shadow_up_full_theme.xml
+++ b/app/src/main/res/drawable/shadow_up_full_theme.xml
@@ -1,8 +1,7 @@
-
-
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_share_instagram.xml b/app/src/main/res/layout/activity_share_instagram.xml
new file mode 100644
index 000000000..190634a28
--- /dev/null
+++ b/app/src/main/res/layout/activity_share_instagram.xml
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_full.xml b/app/src/main/res/layout/fragment_full.xml
index d1d69678f..c20f2616a 100644
--- a/app/src/main/res/layout/fragment_full.xml
+++ b/app/src/main/res/layout/fragment_full.xml
@@ -22,7 +22,7 @@
+ android:background="@drawable/shadow_up_full_theme" />
-
-
-
+ android:textAppearance="@style/TextViewHeadline6"
+ android:textColor="@color/md_white_1000" />
-
diff --git a/app/src/main/res/layout/fragment_full_player_controls.xml b/app/src/main/res/layout/fragment_full_player_controls.xml
index 67aba3d06..c6c50f6ff 100644
--- a/app/src/main/res/layout/fragment_full_player_controls.xml
+++ b/app/src/main/res/layout/fragment_full_player_controls.xml
@@ -14,6 +14,7 @@
android:layout_height="wrap_content"
android:background="?attr/roundSelector"
android:padding="12dp"
+ app:layout_constraintBottom_toBottomOf="@+id/text"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/ic_more_vert_white_24dp" />
@@ -45,9 +46,7 @@
android:ellipsize="end"
android:gravity="center"
android:maxLines="1"
- android:paddingStart="8dp"
- android:paddingTop="12dp"
- android:paddingEnd="8dp"
+ android:padding="8dp"
android:textColor="@color/md_white_1000"
app:layout_constraintBottom_toTopOf="@+id/progressSlider"
app:layout_constraintEnd_toStartOf="@+id/playerMenu"
@@ -62,9 +61,9 @@
android:layout_height="wrap_content"
android:background="?attr/roundSelector"
android:padding="12dp"
+ app:layout_constraintBottom_toBottomOf="@+id/text"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent"
- app:layout_constraintVertical_bias="0.0"
+ app:layout_constraintTop_toTopOf="@+id/title"
app:srcCompat="@drawable/ic_favorite_border_white_24dp" />
diff --git a/app/src/main/res/layout/shadow_statusbar_toolbar.xml b/app/src/main/res/layout/shadow_statusbar_toolbar.xml
index d775dd7e4..8e16a74b8 100755
--- a/app/src/main/res/layout/shadow_statusbar_toolbar.xml
+++ b/app/src/main/res/layout/shadow_statusbar_toolbar.xml
@@ -25,5 +25,5 @@
android:layout_height="wrap_content"
android:layout_alignTop="@id/dummy_statusbar_actionbar"
android:layout_alignBottom="@id/dummy_statusbar_actionbar"
- android:background="@drawable/shadow_down" />
+ android:background="@drawable/shadow_down_strong" />
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 7e9ecaf72..3f2a91be6 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -460,7 +460,7 @@
Pick image
Pinterest
- Follow Pintrest page for Retro Music design inspiration
+ Follow Pinterest page for Retro Music design inspiration
Plain
@@ -821,4 +821,5 @@
Volume
Listeners
Scrobbles
+ Instagram story
diff --git a/app/src/main/res/xml/provider_paths.xml b/app/src/main/res/xml/provider_paths.xml
index ffa74ab56..fafa14f89 100644
--- a/app/src/main/res/xml/provider_paths.xml
+++ b/app/src/main/res/xml/provider_paths.xml
@@ -1,4 +1,6 @@
-
-
+
+
\ No newline at end of file