main
h4h13 2018-09-23 15:34:43 +05:30
parent a8dfe106bb
commit 3d7ba2afc6
193 changed files with 3667 additions and 2662 deletions

View File

@ -19,8 +19,8 @@
<option name="values">
<map>
<entry key="assetSourceType" value="FILE" />
<entry key="outputName" value="ate_check" />
<entry key="sourceFile" value="$USER_HOME$/Downloads/round-check-24px.svg" />
<entry key="outputName" value="ic_round_delete_white_24dp" />
<entry key="sourceFile" value="$USER_HOME$/Downloads/round-delete-24px (1).svg" />
</map>
</option>
</PersistentState>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.appcompat:appcompat:1.0.0-rc01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc01.aar/a0a5756bc681e3bb142d1806b690cd30/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc01.aar/a1c1b718cc84b4977ca79ae19674ab29/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc01.aar/a0a5756bc681e3bb142d1806b690cd30/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc01.aar/a0a5756bc681e3bb142d1806b690cd30/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc01.aar/a1c1b718cc84b4977ca79ae19674ab29/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc01.aar/a1c1b718cc84b4977ca79ae19674ab29/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.appcompat:appcompat:1.0.0-rc02@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc02.aar/2380a578a25c158674b22bfd54331248/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc02.aar/e6f882f1c2a71e92e9d9b0984dfd1503/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc02.aar/2380a578a25c158674b22bfd54331248/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc02.aar/2380a578a25c158674b22bfd54331248/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc02.aar/e6f882f1c2a71e92e9d9b0984dfd1503/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0-rc02.aar/e6f882f1c2a71e92e9d9b0984dfd1503/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.arch.core:core-runtime:2.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-runtime-2.0.0-rc01.aar/a539884c14c0d8ccc3ff3db28d8bc8b9/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-runtime-2.0.0-rc01.aar/a539884c14c0d8ccc3ff3db28d8bc8b9/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-runtime-2.0.0-rc01.aar/af1495b905c39fd38ed11edd26aa64dd/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-runtime-2.0.0-rc01.aar/af1495b905c39fd38ed11edd26aa64dd/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.asynclayoutinflater:asynclayoutinflater:1.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/asynclayoutinflater-1.0.0-rc01.aar/9ddbdd321670a113d072f2b3147bfb72/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/asynclayoutinflater-1.0.0-rc01.aar/9ddbdd321670a113d072f2b3147bfb72/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/asynclayoutinflater-1.0.0-rc01.aar/96bd8a4c474e8f2bbba3c42abfdb69d6/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/asynclayoutinflater-1.0.0-rc01.aar/96bd8a4c474e8f2bbba3c42abfdb69d6/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.asynclayoutinflater:asynclayoutinflater:1.0.0-rc02@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/asynclayoutinflater-1.0.0-rc02.aar/1855bccf712c83625492497d3131c17a/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/asynclayoutinflater-1.0.0-rc02.aar/1855bccf712c83625492497d3131c17a/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/asynclayoutinflater-1.0.0-rc02.aar/ce803d69ad2a3b69ffd8f60df8ac781a/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/asynclayoutinflater-1.0.0-rc02.aar/ce803d69ad2a3b69ffd8f60df8ac781a/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.cardview:cardview:1.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cardview-1.0.0-rc01.aar/99d1c53b6b96849de40f4a93797d6e07/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cardview-1.0.0-rc01.aar/99d1c53b6b96849de40f4a93797d6e07/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cardview-1.0.0-rc01.aar/6052997bda489d863b5cfa0515652a2a/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cardview-1.0.0-rc01.aar/6052997bda489d863b5cfa0515652a2a/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.coordinatorlayout:coordinatorlayout:1.0.0-rc01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc01.aar/83f92a7a2489a3c26eceeb2cfc04a923/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc01.aar/d4a6da8f3691bfb0e85a077e36aabe50/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc01.aar/83f92a7a2489a3c26eceeb2cfc04a923/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc01.aar/83f92a7a2489a3c26eceeb2cfc04a923/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc01.aar/d4a6da8f3691bfb0e85a077e36aabe50/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc01.aar/d4a6da8f3691bfb0e85a077e36aabe50/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.coordinatorlayout:coordinatorlayout:1.0.0-rc02@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc02.aar/7810b9d34fd1d1ae25f042cfd4f36ac3/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc02.aar/16f51c9e26dc90d67fd51169d6e4d00f/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc02.aar/7810b9d34fd1d1ae25f042cfd4f36ac3/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc02.aar/7810b9d34fd1d1ae25f042cfd4f36ac3/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc02.aar/16f51c9e26dc90d67fd51169d6e4d00f/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/coordinatorlayout-1.0.0-rc02.aar/16f51c9e26dc90d67fd51169d6e4d00f/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.core:core:1.0.0-rc01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc01.aar/5e2f0e7247226d936772aa03ba9f9729/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc01.aar/985095ea9f955595936c41c920866715/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc01.aar/5e2f0e7247226d936772aa03ba9f9729/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc01.aar/5e2f0e7247226d936772aa03ba9f9729/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc01.aar/985095ea9f955595936c41c920866715/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc01.aar/985095ea9f955595936c41c920866715/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.core:core:1.0.0-rc02@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc02.aar/dae6fd9f2276520a37309c9a9d8a5add/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc02.aar/a2c649f7d6c2eb8ed46429397f9642ef/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc02.aar/dae6fd9f2276520a37309c9a9d8a5add/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc02.aar/dae6fd9f2276520a37309c9a9d8a5add/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc02.aar/a2c649f7d6c2eb8ed46429397f9642ef/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-1.0.0-rc02.aar/a2c649f7d6c2eb8ed46429397f9642ef/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.cursoradapter:cursoradapter:1.0.0-rc01@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cursoradapter-1.0.0-rc01.aar/89545a7703555fd03f2bfcfefd0fcffe/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cursoradapter-1.0.0-rc01.aar/89545a7703555fd03f2bfcfefd0fcffe/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cursoradapter-1.0.0-rc01.aar/9fa6cfb485640757ae16edd2b96ad605/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cursoradapter-1.0.0-rc01.aar/9fa6cfb485640757ae16edd2b96ad605/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.cursoradapter:cursoradapter:1.0.0-rc02@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cursoradapter-1.0.0-rc02.aar/4c6bb89b9037148533d7ad2b9db06666/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cursoradapter-1.0.0-rc02.aar/4c6bb89b9037148533d7ad2b9db06666/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cursoradapter-1.0.0-rc02.aar/7c872649f67679ab39b6b85c69707591/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/cursoradapter-1.0.0-rc02.aar/7c872649f67679ab39b6b85c69707591/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.customview:customview:1.0.0-rc01@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/customview-1.0.0-rc01.aar/ffe0cfedce4cb20599b13f85fdf4d5a3/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/customview-1.0.0-rc01.aar/ffe0cfedce4cb20599b13f85fdf4d5a3/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/customview-1.0.0-rc01.aar/aacc201dbd65e0547efef9e26eb7ab56/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/customview-1.0.0-rc01.aar/aacc201dbd65e0547efef9e26eb7ab56/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.customview:customview:1.0.0-rc02@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/customview-1.0.0-rc02.aar/103448901cd06bdbfef3b8a43f7281b0/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/customview-1.0.0-rc02.aar/103448901cd06bdbfef3b8a43f7281b0/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/customview-1.0.0-rc02.aar/de442aeb678e4d846000a73380c3eead/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/customview-1.0.0-rc02.aar/de442aeb678e4d846000a73380c3eead/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.documentfile:documentfile:1.0.0-rc01@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/documentfile-1.0.0-rc01.aar/1c8bf2e16a14b3720d06c0eee63c4700/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/documentfile-1.0.0-rc01.aar/1c8bf2e16a14b3720d06c0eee63c4700/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/documentfile-1.0.0-rc01.aar/bbaa22c012e8ef48bac7b6f73e77321b/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/documentfile-1.0.0-rc01.aar/bbaa22c012e8ef48bac7b6f73e77321b/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.documentfile:documentfile:1.0.0-rc02@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/documentfile-1.0.0-rc02.aar/0234a93eec465c915e25d3c3543ea2d7/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/documentfile-1.0.0-rc02.aar/0234a93eec465c915e25d3c3543ea2d7/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/documentfile-1.0.0-rc02.aar/724b6b9798a8849cd1df40433e56b27b/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/documentfile-1.0.0-rc02.aar/724b6b9798a8849cd1df40433e56b27b/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.drawerlayout:drawerlayout:1.0.0-rc01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc01.aar/5c983a29328d7a256443ed282f00b06f/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc01.aar/44bd16814e14f56a2a9a76dcaea0ce7e/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc01.aar/5c983a29328d7a256443ed282f00b06f/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc01.aar/5c983a29328d7a256443ed282f00b06f/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc01.aar/44bd16814e14f56a2a9a76dcaea0ce7e/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc01.aar/44bd16814e14f56a2a9a76dcaea0ce7e/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.drawerlayout:drawerlayout:1.0.0-rc02@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc02.aar/149c9b167124df13c4bebc30aeecdbd0/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc02.aar/b57eb8f4361d06132d1871ab2bcc45de/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc02.aar/149c9b167124df13c4bebc30aeecdbd0/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc02.aar/149c9b167124df13c4bebc30aeecdbd0/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc02.aar/b57eb8f4361d06132d1871ab2bcc45de/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/drawerlayout-1.0.0-rc02.aar/b57eb8f4361d06132d1871ab2bcc45de/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.fragment:fragment:1.0.0-rc01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc01.aar/c68f322a107cafa5822c3899d94a957a/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc01.aar/c81e22f7047f5a9c12c9829210c5bcbc/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc01.aar/c68f322a107cafa5822c3899d94a957a/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc01.aar/c68f322a107cafa5822c3899d94a957a/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc01.aar/c81e22f7047f5a9c12c9829210c5bcbc/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc01.aar/c81e22f7047f5a9c12c9829210c5bcbc/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.fragment:fragment:1.0.0-rc02@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc02.aar/324cb498e24b7c67f5a0f4dfd2b8702d/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc02.aar/713be660e6ef51715ad468e39daea808/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc02.aar/324cb498e24b7c67f5a0f4dfd2b8702d/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc02.aar/324cb498e24b7c67f5a0f4dfd2b8702d/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc02.aar/713be660e6ef51715ad468e39daea808/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/fragment-1.0.0-rc02.aar/713be660e6ef51715ad468e39daea808/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.interpolator:interpolator:1.0.0-rc01@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/interpolator-1.0.0-rc01.aar/934727e40da4ab2553e89b156a00d327/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/interpolator-1.0.0-rc01.aar/934727e40da4ab2553e89b156a00d327/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/interpolator-1.0.0-rc01.aar/9f6fe718db5469ac21510b40b81679c1/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/interpolator-1.0.0-rc01.aar/9f6fe718db5469ac21510b40b81679c1/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.interpolator:interpolator:1.0.0-rc02@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/interpolator-1.0.0-rc02.aar/1b81b6702ac2a26d2f9038f5dffd687d/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/interpolator-1.0.0-rc02.aar/1b81b6702ac2a26d2f9038f5dffd687d/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/interpolator-1.0.0-rc02.aar/03489eb66e2228d5ff570a0e84583b20/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/interpolator-1.0.0-rc02.aar/03489eb66e2228d5ff570a0e84583b20/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.legacy:legacy-support-core-ui:1.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-ui-1.0.0-rc01.aar/92dcea1831361d6cb5cf9a658af0993b/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-ui-1.0.0-rc01.aar/92dcea1831361d6cb5cf9a658af0993b/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-ui-1.0.0-rc01.aar/95ceb427c1d7709428afcdf3c8ba80a8/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-ui-1.0.0-rc01.aar/95ceb427c1d7709428afcdf3c8ba80a8/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.legacy:legacy-support-core-ui:1.0.0-rc02@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-ui-1.0.0-rc02.aar/f6b0b685d3f62d3b980917e0fca82c25/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-ui-1.0.0-rc02.aar/f6b0b685d3f62d3b980917e0fca82c25/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-ui-1.0.0-rc02.aar/5b01915a6833b83e33580058969e1d67/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-ui-1.0.0-rc02.aar/5b01915a6833b83e33580058969e1d67/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.legacy:legacy-support-core-utils:1.0.0-rc01@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-utils-1.0.0-rc01.aar/d9b52501440ae9b59b45d7c3d65ccd1f/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-utils-1.0.0-rc01.aar/d9b52501440ae9b59b45d7c3d65ccd1f/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-utils-1.0.0-rc01.aar/b5311f5a095b6307e79d54b41b3c7bf6/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-utils-1.0.0-rc01.aar/b5311f5a095b6307e79d54b41b3c7bf6/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.legacy:legacy-support-core-utils:1.0.0-rc02@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-utils-1.0.0-rc02.aar/fddea6d16398233067dee62ce03aefac/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-utils-1.0.0-rc02.aar/fddea6d16398233067dee62ce03aefac/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-utils-1.0.0-rc02.aar/b8549422085d092b421a41be53e0cc9a/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-core-utils-1.0.0-rc02.aar/b8549422085d092b421a41be53e0cc9a/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.legacy:legacy-support-v4:1.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-v4-1.0.0-rc01.aar/072e865587e063c095afe83eca82cb14/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-v4-1.0.0-rc01.aar/072e865587e063c095afe83eca82cb14/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-v4-1.0.0-rc01.aar/b3648a31c87c0feb0244d11dade5068d/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/legacy-support-v4-1.0.0-rc01.aar/b3648a31c87c0feb0244d11dade5068d/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.lifecycle:lifecycle-livedata-core:2.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-livedata-core-2.0.0-rc01.aar/9801a2e2a2c5290f8ca0dafa42041f0f/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-livedata-core-2.0.0-rc01.aar/9801a2e2a2c5290f8ca0dafa42041f0f/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-livedata-core-2.0.0-rc01.aar/c61455bccdc4c94d9d80e1d3c2ae17f0/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-livedata-core-2.0.0-rc01.aar/c61455bccdc4c94d9d80e1d3c2ae17f0/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.lifecycle:lifecycle-runtime:2.0.0-rc01@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-runtime-2.0.0-rc01.aar/2700acd9ac05707950f0d55bca1c6991/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-runtime-2.0.0-rc01.aar/2700acd9ac05707950f0d55bca1c6991/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-runtime-2.0.0-rc01.aar/afe9079b6914261048930fda23e68486/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-runtime-2.0.0-rc01.aar/afe9079b6914261048930fda23e68486/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.lifecycle:lifecycle-viewmodel:2.0.0-rc01@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-viewmodel-2.0.0-rc01.aar/358c975ed5427a503806f1a2f4167f76/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-viewmodel-2.0.0-rc01.aar/358c975ed5427a503806f1a2f4167f76/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-viewmodel-2.0.0-rc01.aar/a3e7ecd0f0f8c9de6d4b4f76ff1159e2/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/lifecycle-viewmodel-2.0.0-rc01.aar/a3e7ecd0f0f8c9de6d4b4f76ff1159e2/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.loader:loader:1.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/loader-1.0.0-rc01.aar/9fd6908d067c355f5d7ddc0dd769a180/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/loader-1.0.0-rc01.aar/9fd6908d067c355f5d7ddc0dd769a180/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/loader-1.0.0-rc01.aar/8efdef4f39991c8b0675cc68999e108e/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/loader-1.0.0-rc01.aar/8efdef4f39991c8b0675cc68999e108e/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.loader:loader:1.0.0-rc02@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/loader-1.0.0-rc02.aar/c868518d81c106157f6152cc36086b0b/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/loader-1.0.0-rc02.aar/c868518d81c106157f6152cc36086b0b/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/loader-1.0.0-rc02.aar/6d26559cc83611d67ddc09a92997d361/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/loader-1.0.0-rc02.aar/6d26559cc83611d67ddc09a92997d361/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.localbroadcastmanager:localbroadcastmanager:1.0.0-rc01@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/localbroadcastmanager-1.0.0-rc01.aar/74334835ec8900ecfed2a35688bc3475/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/localbroadcastmanager-1.0.0-rc01.aar/74334835ec8900ecfed2a35688bc3475/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/localbroadcastmanager-1.0.0-rc01.aar/e98fd4c25094033a1f3e6a12e154f221/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/localbroadcastmanager-1.0.0-rc01.aar/e98fd4c25094033a1f3e6a12e154f221/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.localbroadcastmanager:localbroadcastmanager:1.0.0-rc02@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/localbroadcastmanager-1.0.0-rc02.aar/b7a5868e4f543d96956746fa09569468/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/localbroadcastmanager-1.0.0-rc02.aar/b7a5868e4f543d96956746fa09569468/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/localbroadcastmanager-1.0.0-rc02.aar/c7bbcfd0e5db7de9dd08bed1e957c485/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/localbroadcastmanager-1.0.0-rc02.aar/c7bbcfd0e5db7de9dd08bed1e957c485/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.media:media:1.0.0-rc02@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/media-1.0.0-rc02.aar/c91bdace05070e517727bc4df6646b7e/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/media-1.0.0-rc02.aar/1955366633b4b5c7bef8bc20da8f3bc9/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/media-1.0.0-rc02.aar/c91bdace05070e517727bc4df6646b7e/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/media-1.0.0-rc02.aar/c91bdace05070e517727bc4df6646b7e/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/media-1.0.0-rc02.aar/1955366633b4b5c7bef8bc20da8f3bc9/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/media-1.0.0-rc02.aar/1955366633b4b5c7bef8bc20da8f3bc9/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.mediarouter:mediarouter:1.0.0-beta01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/mediarouter-1.0.0-beta01.aar/1423cb97ed802c11b3c360d85bd4f855/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/mediarouter-1.0.0-beta01.aar/596f79bec5a1e2f7282f0707a47ee471/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/mediarouter-1.0.0-beta01.aar/1423cb97ed802c11b3c360d85bd4f855/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/mediarouter-1.0.0-beta01.aar/1423cb97ed802c11b3c360d85bd4f855/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/mediarouter-1.0.0-beta01.aar/596f79bec5a1e2f7282f0707a47ee471/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/mediarouter-1.0.0-beta01.aar/596f79bec5a1e2f7282f0707a47ee471/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.multidex:multidex:2.0.0@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/multidex-2.0.0.aar/0afaebef07fb62d867bcc7c447e06249/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/multidex-2.0.0.aar/0afaebef07fb62d867bcc7c447e06249/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/multidex-2.0.0.aar/99a53f9f02a003450d785463d946882b/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/multidex-2.0.0.aar/99a53f9f02a003450d785463d946882b/res" />
</CLASSES>
<JAVADOC />
<SOURCES />

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.palette:palette:1.0.0-rc02@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/palette-1.0.0-rc02.aar/48e367adc7a7c6cbba3dfb59b1344920/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/palette-1.0.0-rc02.aar/48e367adc7a7c6cbba3dfb59b1344920/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/palette-1.0.0-rc02.aar/d2f926dad20d93901d676ffec57ceeb1/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/palette-1.0.0-rc02.aar/d2f926dad20d93901d676ffec57ceeb1/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.preference:preference:1.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/preference-1.0.0-rc01.aar/c15ffb0f2e40928144a47a2499c4a8ee/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/preference-1.0.0-rc01.aar/c15ffb0f2e40928144a47a2499c4a8ee/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/preference-1.0.0-rc01.aar/d7e9a9e32453ce604367d5f0b340db14/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/preference-1.0.0-rc01.aar/d7e9a9e32453ce604367d5f0b340db14/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.print:print:1.0.0-rc01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc01.aar/b975930be81a1eb8cf58d125aaafb1e2/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc01.aar/92af08f9c3ed40061e2a5664d9dc0d7b/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc01.aar/b975930be81a1eb8cf58d125aaafb1e2/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc01.aar/b975930be81a1eb8cf58d125aaafb1e2/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc01.aar/92af08f9c3ed40061e2a5664d9dc0d7b/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc01.aar/92af08f9c3ed40061e2a5664d9dc0d7b/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.print:print:1.0.0-rc02@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc02.aar/075751a55a4b0a6bad556aa90bf2cc44/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc02.aar/c7615d72c69557a819696045244b8392/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc02.aar/075751a55a4b0a6bad556aa90bf2cc44/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc02.aar/075751a55a4b0a6bad556aa90bf2cc44/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc02.aar/c7615d72c69557a819696045244b8392/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/print-1.0.0-rc02.aar/c7615d72c69557a819696045244b8392/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.recyclerview:recyclerview:1.0.0-rc01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc01.aar/0125c7385875377e03025ef8e1036663/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc01.aar/644ace2dbe7b052c8e92f9258af99c40/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc01.aar/0125c7385875377e03025ef8e1036663/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc01.aar/0125c7385875377e03025ef8e1036663/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc01.aar/644ace2dbe7b052c8e92f9258af99c40/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc01.aar/644ace2dbe7b052c8e92f9258af99c40/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.recyclerview:recyclerview:1.0.0-rc02@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc02.aar/7d0edb40311aa97880d7d4dab0cef267/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc02.aar/9cdc92c9094c4699c13a448b781789d1/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc02.aar/7d0edb40311aa97880d7d4dab0cef267/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc02.aar/7d0edb40311aa97880d7d4dab0cef267/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc02.aar/9cdc92c9094c4699c13a448b781789d1/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/recyclerview-1.0.0-rc02.aar/9cdc92c9094c4699c13a448b781789d1/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.slidingpanelayout:slidingpanelayout:1.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/slidingpanelayout-1.0.0-rc01.aar/daf3454ccdcb8ed51882d162d0e99433/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/slidingpanelayout-1.0.0-rc01.aar/daf3454ccdcb8ed51882d162d0e99433/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/slidingpanelayout-1.0.0-rc01.aar/fff97a2681a99345e358377124d889b2/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/slidingpanelayout-1.0.0-rc01.aar/fff97a2681a99345e358377124d889b2/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.slidingpanelayout:slidingpanelayout:1.0.0-rc02@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/slidingpanelayout-1.0.0-rc02.aar/04a6972159b540e4341c55a4b39a5475/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/slidingpanelayout-1.0.0-rc02.aar/04a6972159b540e4341c55a4b39a5475/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/slidingpanelayout-1.0.0-rc02.aar/a80f637975fa2f71b1ca238064a1ecee/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/slidingpanelayout-1.0.0-rc02.aar/a80f637975fa2f71b1ca238064a1ecee/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.swiperefreshlayout:swiperefreshlayout:1.0.0-rc01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc01.aar/4bd6dc612e00360dcf1b6f09bdfb4968/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc01.aar/2d7f19f4c2d2de926a69eb766c43e4a2/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc01.aar/4bd6dc612e00360dcf1b6f09bdfb4968/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc01.aar/4bd6dc612e00360dcf1b6f09bdfb4968/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc01.aar/2d7f19f4c2d2de926a69eb766c43e4a2/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc01.aar/2d7f19f4c2d2de926a69eb766c43e4a2/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.swiperefreshlayout:swiperefreshlayout:1.0.0-rc02@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc02.aar/ea61aa4e5a20aa175327cf7aae837ae8/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc02.aar/6f76a3a78e9abc145b3b4b71e03eed9f/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc02.aar/ea61aa4e5a20aa175327cf7aae837ae8/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc02.aar/ea61aa4e5a20aa175327cf7aae837ae8/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc02.aar/6f76a3a78e9abc145b3b4b71e03eed9f/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/swiperefreshlayout-1.0.0-rc02.aar/6f76a3a78e9abc145b3b4b71e03eed9f/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: androidx.transition:transition:1.0.0-rc01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/transition-1.0.0-rc01.aar/03a286211fe9691c5642bf52ad5a7c87/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/transition-1.0.0-rc01.aar/09d9c98b26a2d3ba45909f14ef13aae2/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/transition-1.0.0-rc01.aar/03a286211fe9691c5642bf52ad5a7c87/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/transition-1.0.0-rc01.aar/03a286211fe9691c5642bf52ad5a7c87/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/transition-1.0.0-rc01.aar/09d9c98b26a2d3ba45909f14ef13aae2/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/transition-1.0.0-rc01.aar/09d9c98b26a2d3ba45909f14ef13aae2/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.vectordrawable:vectordrawable:1.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-1.0.0-rc01.aar/c71aa8837c7e92f13aa9de5bc77a1eaa/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-1.0.0-rc01.aar/c71aa8837c7e92f13aa9de5bc77a1eaa/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-1.0.0-rc01.aar/9a935704cc6fde8f81dd137e23353457/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-1.0.0-rc01.aar/9a935704cc6fde8f81dd137e23353457/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.vectordrawable:vectordrawable:1.0.0-rc02@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-1.0.0-rc02.aar/a936d396e7636fbe0c7e21e39644aa31/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-1.0.0-rc02.aar/a936d396e7636fbe0c7e21e39644aa31/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-1.0.0-rc02.aar/d87b350506e10ee08f518f5b518f6b35/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-1.0.0-rc02.aar/d87b350506e10ee08f518f5b518f6b35/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.vectordrawable:vectordrawable-animated:1.0.0-rc01@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-animated-1.0.0-rc01.aar/f4f7cb5d62369021d22a668a16ed4c91/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-animated-1.0.0-rc01.aar/f4f7cb5d62369021d22a668a16ed4c91/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-animated-1.0.0-rc01.aar/63a091da67866617856ae094895ede37/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-animated-1.0.0-rc01.aar/63a091da67866617856ae094895ede37/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.vectordrawable:vectordrawable-animated:1.0.0-rc02@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-animated-1.0.0-rc02.aar/2dd29c12b235dc2daac10fe3f0b2b452/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-animated-1.0.0-rc02.aar/2dd29c12b235dc2daac10fe3f0b2b452/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-animated-1.0.0-rc02.aar/756586b3871ac2d91a3caf60213a618e/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/vectordrawable-animated-1.0.0-rc02.aar/756586b3871ac2d91a3caf60213a618e/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.versionedparcelable:versionedparcelable:1.0.0-rc01@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/versionedparcelable-1.0.0-rc01.aar/9f5a61d4a6b3625db756f4b1f6c7e123/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/versionedparcelable-1.0.0-rc01.aar/9f5a61d4a6b3625db756f4b1f6c7e123/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/versionedparcelable-1.0.0-rc01.aar/4cfacbd06355d8f06090b4a8bef1120d/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/versionedparcelable-1.0.0-rc01.aar/4cfacbd06355d8f06090b4a8bef1120d/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.versionedparcelable:versionedparcelable:1.0.0-rc02@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/versionedparcelable-1.0.0-rc02.aar/e29d654cdcbc6bb2e94f89f26925dcc9/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/versionedparcelable-1.0.0-rc02.aar/e29d654cdcbc6bb2e94f89f26925dcc9/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/versionedparcelable-1.0.0-rc02.aar/25f269ad1faa486425deac43f8be9bd9/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/versionedparcelable-1.0.0-rc02.aar/25f269ad1faa486425deac43f8be9bd9/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.viewpager:viewpager:1.0.0-rc01@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/viewpager-1.0.0-rc01.aar/9441c9055e5a694a56f43670ba375e54/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/viewpager-1.0.0-rc01.aar/9441c9055e5a694a56f43670ba375e54/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/viewpager-1.0.0-rc01.aar/a09e6a3b6d20a10265150b2ac57d4e60/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/viewpager-1.0.0-rc01.aar/a09e6a3b6d20a10265150b2ac57d4e60/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: androidx.viewpager:viewpager:1.0.0-rc02@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/viewpager-1.0.0-rc02.aar/0edbf25b1a178ed10303897723f4a235/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/viewpager-1.0.0-rc02.aar/0edbf25b1a178ed10303897723f4a235/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/viewpager-1.0.0-rc02.aar/19acd9d936246876742ebc4b72d61429/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/viewpager-1.0.0-rc02.aar/19acd9d936246876742ebc4b72d61429/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: com.afollestad:material-cab:0.1.12@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-material-cab-0.1.12.aar/1f14c61f8811f56a220790dbfafa2f2e/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-material-cab-0.1.12.aar/1f14c61f8811f56a220790dbfafa2f2e/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-material-cab-0.1.12.aar/1114a75997d7680399c9e9b83bc1b9ec/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-material-cab-0.1.12.aar/1114a75997d7680399c9e9b83bc1b9ec/jars/classes.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.afollestad/material-cab/0.1.12/165c2a54378ab503b8033df5fe52b9466bd8f37d/material-cab-0.1.12-javadoc.jar!/" />

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: com.afollestad.material-dialogs:commons:0.9.6.0@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/commons-0.9.6.0.aar/292b7188509b268f39846eaf19ddadf3/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-commons-0.9.6.0.aar/9a116d014191c62ab32dd66bfe16c249/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/commons-0.9.6.0.aar/292b7188509b268f39846eaf19ddadf3/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/commons-0.9.6.0.aar/292b7188509b268f39846eaf19ddadf3/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-commons-0.9.6.0.aar/9a116d014191c62ab32dd66bfe16c249/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-commons-0.9.6.0.aar/9a116d014191c62ab32dd66bfe16c249/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: com.afollestad.material-dialogs:core:0.9.6.0@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-0.9.6.0.aar/09fbdb28a33e965e83600b6d22646e6a/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/core-0.9.6.0.aar/09fbdb28a33e965e83600b6d22646e6a/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-core-0.9.6.0.aar/92b5dde6a5b659d5a59a8f669ebc599e/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-core-0.9.6.0.aar/92b5dde6a5b659d5a59a8f669ebc599e/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: com.github.AdrienPoupa:jaudiotagger:2.2.3@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jaudiotagger-2.2.3.aar/a3ed540d140cafab0538b1a504b076f4/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jaudiotagger-2.2.3.aar/a3ed540d140cafab0538b1a504b076f4/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jaudiotagger-2.2.3.aar/3993bed872106d58cfed756d404d9308/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jaudiotagger-2.2.3.aar/3993bed872106d58cfed756d404d9308/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: com.github.ksoichiro:android-observablescrollview:1.6.0@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/android-observablescrollview-1.6.0.aar/289584f3f64d65c185e6dc5d18326186/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/android-observablescrollview-1.6.0.aar/289584f3f64d65c185e6dc5d18326186/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-android-observablescrollview-1.6.0.aar/17618c5b62d50f6af81165ea7e99401b/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-android-observablescrollview-1.6.0.aar/17618c5b62d50f6af81165ea7e99401b/res" />
</CLASSES>
<JAVADOC>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.ksoichiro/android-observablescrollview/1.6.0/23c72bb51d649a397c2b8cff666d91f6f0b2fdad/android-observablescrollview-1.6.0-javadoc.jar!/" />

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: com.google.android.material:material:1.0.0-rc01@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/material-1.0.0-rc01.aar/c970095cebd946919258718b3d430b95/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/material-1.0.0-rc01.aar/f03a611787a50c7cd0e0231503dc229b/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/material-1.0.0-rc01.aar/c970095cebd946919258718b3d430b95/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/material-1.0.0-rc01.aar/c970095cebd946919258718b3d430b95/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/material-1.0.0-rc01.aar/f03a611787a50c7cd0e0231503dc229b/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/material-1.0.0-rc01.aar/f03a611787a50c7cd0e0231503dc229b/res" />
</CLASSES>
<JAVADOC />
<SOURCES />

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: com.h6ah4i.android.widget.advrecyclerview:advrecyclerview:0.11.0@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/advrecyclerview-0.11.0.aar/19fb1361a54b91f21b400ee88c7a9d43/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-advrecyclerview-0.11.0.aar/fa536ef576ed96a689518264d53b7f4f/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/advrecyclerview-0.11.0.aar/19fb1361a54b91f21b400ee88c7a9d43/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/advrecyclerview-0.11.0.aar/19fb1361a54b91f21b400ee88c7a9d43/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-advrecyclerview-0.11.0.aar/fa536ef576ed96a689518264d53b7f4f/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-advrecyclerview-0.11.0.aar/fa536ef576ed96a689518264d53b7f4f/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="Gradle: com.jakewharton:butterknife:9.0.0-SNAPSHOT@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/butterknife-9.0.0-SNAPSHOT.aar/1f4760e5d21ef6ed20e057d413f4e5c1/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/butterknife-9.0.0-SNAPSHOT.aar/1f4760e5d21ef6ed20e057d413f4e5c1/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-butterknife-9.0.0-SNAPSHOT.aar/6b4804d66087c26a279aac78916a93be/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-butterknife-9.0.0-SNAPSHOT.aar/6b4804d66087c26a279aac78916a93be/res" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jakewharton/butterknife/9.0.0-SNAPSHOT/2d7af8abce2bc9f29a633620361b5b0eddde2ef3/butterknife-9.0.0-SNAPSHOT-sources.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jakewharton/butterknife/9.0.0-SNAPSHOT/15e652b5465b6836cbc507edc0397bddd5f0b1c0/butterknife-9.0.0-SNAPSHOT-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,7 +1,7 @@
<component name="libraryTable">
<library name="Gradle: com.jakewharton:butterknife-annotations:9.0.0-SNAPSHOT@jar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jakewharton/butterknife-annotations/9.0.0-SNAPSHOT/90de05ef24335b708fe13b3b1e99278e6cfda0e8/butterknife-annotations-9.0.0-SNAPSHOT.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jakewharton/butterknife-annotations/9.0.0-SNAPSHOT/b2c75a3f9ec5c34c53390500554f31a0ad878ca1/butterknife-annotations-9.0.0-SNAPSHOT.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,12 +1,12 @@
<component name="libraryTable">
<library name="Gradle: com.jakewharton:butterknife-runtime:9.0.0-SNAPSHOT@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-butterknife-runtime-9.0.0-SNAPSHOT.aar/8a035d5702a50379af5d3f475f946cd7/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-butterknife-runtime-9.0.0-SNAPSHOT.aar/8a035d5702a50379af5d3f475f946cd7/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-butterknife-runtime-9.0.0-SNAPSHOT.aar/d077a78e12e046ff30af508592a3beec/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-butterknife-runtime-9.0.0-SNAPSHOT.aar/d077a78e12e046ff30af508592a3beec/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jakewharton/butterknife-runtime/9.0.0-SNAPSHOT/e87e900910a7c2fc697ea7e2937563504686b517/butterknife-runtime-9.0.0-SNAPSHOT-sources.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jakewharton/butterknife-runtime/9.0.0-SNAPSHOT/67cf24a3d8a5e2135b341d0e80c676abf0dc8d02/butterknife-runtime-9.0.0-SNAPSHOT-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: com.r0adkll:slidableactivity:2.0.6@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/slidableactivity-2.0.6.aar/7d00c1f6a85d291fa31d608a4b63e6b9/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/slidableactivity-2.0.6.aar/7d00c1f6a85d291fa31d608a4b63e6b9/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-slidableactivity-2.0.6.aar/be6275e3998d0056421bde75994f3ece/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-slidableactivity-2.0.6.aar/be6275e3998d0056421bde75994f3ece/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: com.simplecityapps:recyclerview-fastscroll:1.0.18@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-recyclerview-fastscroll-1.0.18.aar/ca1e2037a0a3e58cf634cf189766746c/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-recyclerview-fastscroll-1.0.18.aar/8c837cf18cfa3556d50e82adddd21d9a/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-recyclerview-fastscroll-1.0.18.aar/ca1e2037a0a3e58cf634cf189766746c/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-recyclerview-fastscroll-1.0.18.aar/ca1e2037a0a3e58cf634cf189766746c/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-recyclerview-fastscroll-1.0.18.aar/8c837cf18cfa3556d50e82adddd21d9a/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-recyclerview-fastscroll-1.0.18.aar/8c837cf18cfa3556d50e82adddd21d9a/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: com.sothree.slidinguppanel:library:3.4.0@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/library-3.4.0.aar/2e8d02312b8cfedf46571cc94bd2a8a8/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/library-3.4.0.aar/2e8d02312b8cfedf46571cc94bd2a8a8/jars/classes.jar!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-library-3.4.0.aar/f4df1e718870a79984e56d4f416cac9d/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-library-3.4.0.aar/f4df1e718870a79984e56d4f416cac9d/res" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: io.reactivex.rxjava2:rxandroid:2.0.2@aar">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/rxandroid-2.0.2.aar/d90f1994b5965eff504584be8ab2f29a/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/rxandroid-2.0.2.aar/d90f1994b5965eff504584be8ab2f29a/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/rxandroid-2.0.2.aar/50a5075952717dbadee5ec9e3d5e737e/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/rxandroid-2.0.2.aar/50a5075952717dbadee5ec9e3d5e737e/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,11 +1,11 @@
<component name="libraryTable">
<library name="Gradle: me.zhanghai.android.materialprogressbar:library:1.4.2@aar">
<ANNOTATIONS>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/library-1.4.2.aar/8c2f153c6d0862bff0bd97233b04eebe/annotations.zip!/" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-library-1.4.2.aar/6d05dadbeac3e52f206c871aabde5511/annotations.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/library-1.4.2.aar/8c2f153c6d0862bff0bd97233b04eebe/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/library-1.4.2.aar/8c2f153c6d0862bff0bd97233b04eebe/res" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-library-1.4.2.aar/6d05dadbeac3e52f206c871aabde5511/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-library-1.4.2.aar/6d05dadbeac3e52f206c871aabde5511/jars/classes.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>

View File

@ -1,8 +1,8 @@
<component name="libraryTable">
<library name="Gradle: uk.co.chrisjenx:calligraphy:2.3.0@aar">
<CLASSES>
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/calligraphy-2.3.0.aar/8358b495784bcd282fb48ec336075254/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/calligraphy-2.3.0.aar/8358b495784bcd282fb48ec336075254/jars/classes.jar!/" />
<root url="file://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-calligraphy-2.3.0.aar/72f71edac6a0d6e59aea6c4fccb0c8fe/res" />
<root url="jar://$USER_HOME$/.gradle/caches/transforms-1/files-1.1/jetified-calligraphy-2.3.0.aar/72f71edac6a0d6e59aea6c4fccb0c8fe/jars/classes.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/uk.co.chrisjenx/calligraphy/2.3.0/775c7415bb896ff97ac6117710335a5d9cd3b5ae/calligraphy-2.3.0-javadoc.jar!/" />

View File

@ -2,7 +2,7 @@
<project version="4">
<component name="NullableNotNullManager">
<option name="myDefaultNullable" value="org.jetbrains.annotations.Nullable" />
<option name="myDefaultNotNull" value="android.support.annotation.NonNull" />
<option name="myDefaultNotNull" value="androidx.annotation.NonNull" />
<option name="myNullables">
<value>
<list size="10">

View File

@ -133,6 +133,8 @@
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/checkNormalDebugClasspath" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/checkNormalReleaseClasspath" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/checkSansDebugClasspath" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/checkSansReleaseClasspath" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/check_manifest_result" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/compatible_screen_manifest" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />

View File

@ -11,8 +11,8 @@ android {
vectorDrawables.useSupportLibrary = true
applicationId "code.name.monkey.retromusic"
versionCode 222
versionName '2.0.010'
versionCode 232
versionName '2.0.210'
multiDexEnabled true
@ -130,10 +130,10 @@ dependencies {
implementation "com.afollestad.material-dialogs:core:$materialDialog"
implementation "com.afollestad.material-dialogs:commons:$materialDialog"
implementation 'com.afollestad:material-cab:0.1.12'
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
implementation 'io.reactivex.rxjava2:rxjava:2.1.9'
implementation 'com.github.bumptech.glide:glide:3.8.0'
implementation 'com.github.bumptech.glide:okhttp3-integration:1.5.0'
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
implementation 'io.reactivex.rxjava2:rxjava:2.1.9'
implementation 'com.squareup.okhttp3:logging-interceptor:3.11.0'
implementation 'com.squareup.okhttp3:okhttp:3.11.0'
implementation('com.h6ah4i.android.widget.advrecyclerview:advrecyclerview:0.11.0@aar') {

View File

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="code.name.monkey.retromusic">
<uses-permission android:name="android.permission.WAKE_LOCK" />
@ -15,7 +14,6 @@
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<application
android:usesCleartextTraffic="true"
android:name=".RetroApplication"
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
@ -23,7 +21,7 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.RetroMusic.Light"
>
android:usesCleartextTraffic="true">
<activity
android:name=".ui.activities.MainActivity"
android:label="@string/app_name">
@ -240,6 +238,9 @@
<meta-data
android:name="com.google.android.gms.cast.framework.OPTIONS_PROVIDER_CLASS_NAME"
android:value="code.name.monkey.retromusic.cast.CastOptionsProvider" />
<!-- <meta-data
android:name="com.google.android.gms.car.application"
android:resource="@xml/automotive_app_desc" />-->
<provider
android:name="androidx.core.content.FileProvider"
@ -252,4 +253,5 @@
</provider>
</application>
</manifest>

View File

@ -1,15 +1,21 @@
[
{
"name": "Lennart Glamann",
"summary": "Moderator",
"summary": "Design contributor",
"link": "https://t.me/FlixbusLennart",
"profile_image": "https://i.imgur.com/Q5Nsx1R.jpg"
},
{
"name": "Elvan Putra",
"summary": "Design contributor",
"link": "https://t.me/ElvanMacko",
"profile_image": "https://i.imgur.com/w7rnEEw.jpg"
},
{
"name": "Gaming Inc.",
"summary": "Discord server maintainer",
"link": "https://t.me/Gaming_Inc",
"profile_image": "https://cdn.discordapp.com/attachments/469540889883181077/471361944385880065/91_98910_29110_20180616_17122501.jpg"
"profile_image": "https://i.imgur.com/5wXLrS2.jpg"
},
{
"name": "Marko Ivanović",
@ -21,6 +27,6 @@
"name": "Gaurav Singh",
"summary": "Moderator",
"link": "https://t.me/Allstargaurav",
"profile_image": "https://cdn5.telesco.pe/file/Gnko_d39iKSqzKhsVK53sjUFz_sfLKe_OpxFE9kR-VUEjDbm6SOr8CT09tyI3zhDSuTowqOhNY4nogFx1Z8QbixyZLAWccl94JdX4dqkPrZyHMS9K7xUzq-wgZCoNIbO8_eAnGOy8Gmu3-uzLuQf2u3G7BRIxm5mzqwqGoeX7_V-fcs3Lr6Br7hPFeCHSm1U39I69E3R9ovs-kPfxCpze-riCjD-QhwwOEOfiudx9OmkmLJGvYugX2EpHSBFfNh6WFQEvBAvR6xPrXul3LxZEebH0xwz5HX-bmyuoxdGaW0J4ywDgiiu4I7cfUJe8lKqWwkPQRg8zTtYNiG3MZio7w.jpg"
"profile_image": "https://i.imgur.com/EertxDu.jpg"
}
]

View File

@ -1 +1 @@
<html> <head> <style type="text/css"> * { word-wrap: break-word; } {style-placeholder} a { color: #{link-color}; } a:active { color: #{link-color-active}; } ol { list-style-position: inside; padding-left: 0; padding-right: 0; } li { padding-top: 8px; } </style> </head> <body> <p>You can view the changelog dialog again at any time from the <i>about</i> section.</p> <h3>Version 2.0.00</h3> <ol> <li><b>Fix:</b> dialog cancel text</li> <li><b>Fix:</b> album cover edit with last.fm</li> <li><b>Fix:</b> same theme follows entire app</li> </style> </head> <body> <p>You can view the changelog dialog again at any time from the <i>about</i> section.</p> <h3>Version 2.0.00</h3> <ol> <li><b>Fix:</b> dialog cancel text</li> <li><b>Fix:</b> album cover edit with last.fm</li> </style> </style> </style> </style> </style> </head> </style> <body> </style> <p>You can view the changelog dialog again at any time from the <i>about</i> section.</p> </style> <h3>Version 2.0.00</h3> </style> <ol> </style> <li><b>Fix:</b> dialog cancel text</li> <li><b>Updated:</b> internal libs</li> </ol> <p><a href="https://github.com/h4h13/RetroMusicPlayer/wiki/FAQ">FAQ's</a></p> <p>*If you face any UI related issues you clear app data and cache, if its not working try to uninstall and install again. </p> </body>
<html> <head> <style type="text/css"> * { word-wrap: break-word; } {style-placeholder} a { color: #{link-color}; } a:active { color: #{link-color-active}; } ol { list-style-position: inside; padding-left: 0; padding-right: 0; } li { padding-top: 8px; } </style> </head> <body> <p>You can view the changelog dialog again at any time from the <i>about</i> section.</p> <h3>Version 2.0.200</h3> <ol> </head> </head> </style> </head> </head> </head> <body> </head> <p>You can view the changelog dialog again at any time from the <i>about</i> section.</p> </head> <h3>Version 2.0.00</h3> </head> <ol> </head> <li><b>Fix:</b> dialog cancel text</li> </head> <li><b>Fix:</b> album cover edit with last.fm</li> <body> <body> </li> <body> </style> </li> <li><b>Added:</b> faq links in about</li> </style> </style> <body> <body> <body> <p>You can view the changelog dialog again at any time from the <i>about</i> section.</p> </li> <body> <h3>Version 2.0.00</h3> </style> <p>You can view the changelog dialog again at any time from the <i>about</i> section.</p> <body> <ol> <body> <li><b>Fix:</b> dialog cancel text</li> s</li> </ol> <p><a href="https://github.com/h4h13/RetroMusicPlayer/wiki/FAQ">FAQ's</a></p> <p>*If you face any UI related issues you clear app data and cache, if its not working try to uninstall and install again. </p> </body>

View File

@ -1,13 +1,13 @@
package code.name.monkey.retromusic;
import android.os.Build;
import androidx.annotation.NonNull;
import androidx.multidex.MultiDexApplication;
import com.anjlab.android.iab.v3.BillingProcessor;
import com.anjlab.android.iab.v3.TransactionDetails;
import com.bumptech.glide.Glide;
import androidx.annotation.NonNull;
import androidx.multidex.MultiDexApplication;
import code.name.monkey.appthemehelper.ThemeStore;
import code.name.monkey.retromusic.appshortcuts.DynamicShortcutManager;
import uk.co.chrisjenx.calligraphy.CalligraphyConfig;
@ -47,6 +47,7 @@ public class RetroApplication extends MultiDexApplication {
super.onCreate();
app = this;
setupErrorHandler();
// default theme
if (!ThemeStore.isConfigured(this, 1)) {
@ -98,6 +99,7 @@ public class RetroApplication extends MultiDexApplication {
private void handleUncaughtException(Thread thread, Throwable throwable) {
throwable.printStackTrace();
deleteAppData();
//Intent intent = new Intent(this, ErrorHandlerActivity.class);
//intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//startActivity(intent);

View File

@ -6,11 +6,17 @@ import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import androidx.annotation.Nullable;
import androidx.palette.graphics.Palette;
import android.text.TextUtils;
import android.view.View;
import android.widget.RemoteViews;
import com.bumptech.glide.Glide;
import com.bumptech.glide.request.animation.GlideAnimation;
import com.bumptech.glide.request.target.SimpleTarget;
import com.bumptech.glide.request.target.Target;
import androidx.annotation.Nullable;
import androidx.palette.graphics.Palette;
import code.name.monkey.appthemehelper.util.MaterialValueHelper;
import code.name.monkey.retromusic.Constants;
import code.name.monkey.retromusic.R;
@ -21,174 +27,170 @@ import code.name.monkey.retromusic.model.Song;
import code.name.monkey.retromusic.service.MusicService;
import code.name.monkey.retromusic.ui.activities.MainActivity;
import code.name.monkey.retromusic.util.RetroUtil;
import com.bumptech.glide.Glide;
import com.bumptech.glide.request.animation.GlideAnimation;
import com.bumptech.glide.request.target.SimpleTarget;
import com.bumptech.glide.request.target.Target;
public class AppWidgetCard extends BaseAppWidget {
public static final String NAME = "app_widget_card";
public static final String NAME = "app_widget_card";
private static AppWidgetCard mInstance;
private static int imageSize = 0;
private static float cardRadius = 0f;
private Target<BitmapPaletteWrapper> target; // for cancellation
private static AppWidgetCard mInstance;
private static int imageSize = 0;
private static float cardRadius = 0f;
private Target<BitmapPaletteWrapper> target; // for cancellation
public static synchronized AppWidgetCard getInstance() {
if (mInstance == null) {
mInstance = new AppWidgetCard();
}
return mInstance;
}
/**
* Initialize given widgets to default state, where we launch Music on default click and hide
* actions if service not running.
*/
protected void defaultAppWidget(final Context context, final int[] appWidgetIds) {
final RemoteViews appWidgetView = new RemoteViews(context.getPackageName(),
R.layout.app_widget_card);
appWidgetView.setViewVisibility(R.id.media_titles, View.INVISIBLE);
appWidgetView.setImageViewResource(R.id.image, R.drawable.default_album_art);
appWidgetView.setImageViewBitmap(R.id.button_next, createBitmap(
RetroUtil.getTintedVectorDrawable(context, R.drawable.ic_skip_next_white_24dp,
MaterialValueHelper.getSecondaryTextColor(context, true)), 1f));
appWidgetView.setImageViewBitmap(R.id.button_prev, createBitmap(
RetroUtil.getTintedVectorDrawable(context, R.drawable.ic_skip_previous_white_24dp,
MaterialValueHelper.getSecondaryTextColor(context, true)), 1f));
appWidgetView.setImageViewBitmap(R.id.button_toggle_play_pause, createBitmap(
RetroUtil.getTintedVectorDrawable(context, R.drawable.ic_play_arrow_white_24dp,
MaterialValueHelper.getSecondaryTextColor(context, true)), 1f));
linkButtons(context, appWidgetView);
pushUpdate(context, appWidgetIds, appWidgetView);
}
/**
* Update all active widget instances by pushing changes
*/
public void performUpdate(final MusicService service, final int[] appWidgetIds) {
final RemoteViews appWidgetView = new RemoteViews(service.getPackageName(),
R.layout.app_widget_card);
final boolean isPlaying = service.isPlaying();
final Song song = service.getCurrentSong();
// Set the titles and artwork
if (TextUtils.isEmpty(song.title) && TextUtils.isEmpty(song.artistName)) {
appWidgetView.setViewVisibility(R.id.media_titles, View.INVISIBLE);
} else {
appWidgetView.setViewVisibility(R.id.media_titles, View.VISIBLE);
appWidgetView.setTextViewText(R.id.title, song.title);
appWidgetView.setTextViewText(R.id.text, getSongArtistAndAlbum(song));
}
// Set correct drawable for pause state
int playPauseRes =
isPlaying ? R.drawable.ic_pause_white_24dp : R.drawable.ic_play_arrow_white_24dp;
appWidgetView.setImageViewBitmap(R.id.button_toggle_play_pause, createBitmap(
RetroUtil.getTintedVectorDrawable(service, playPauseRes,
MaterialValueHelper.getSecondaryTextColor(service, true)), 1f));
// Set prev/next button drawables
appWidgetView.setImageViewBitmap(R.id.button_next, createBitmap(
RetroUtil.getTintedVectorDrawable(service, R.drawable.ic_skip_next_white_24dp,
MaterialValueHelper.getSecondaryTextColor(service, true)), 1f));
appWidgetView.setImageViewBitmap(R.id.button_prev, createBitmap(
RetroUtil.getTintedVectorDrawable(service, R.drawable.ic_skip_previous_white_24dp,
MaterialValueHelper.getSecondaryTextColor(service, true)), 1f));
// Link actions buttons to intents
linkButtons(service, appWidgetView);
if (imageSize == 0) {
imageSize = service.getResources().getDimensionPixelSize(R.dimen.app_widget_card_image_size);
}
if (cardRadius == 0f) {
cardRadius = service.getResources().getDimension(R.dimen.app_widget_card_radius);
}
// Load the album cover async and push the update on completion
service.runOnUiThread(new Runnable() {
@Override
public void run() {
if (target != null) {
Glide.clear(target);
public static synchronized AppWidgetCard getInstance() {
if (mInstance == null) {
mInstance = new AppWidgetCard();
}
target = SongGlideRequest.Builder.from(Glide.with(service), song)
.checkIgnoreMediaStore(service)
.generatePalette(service).build()
.centerCrop()
.into(new SimpleTarget<BitmapPaletteWrapper>(imageSize, imageSize) {
@Override
public void onResourceReady(BitmapPaletteWrapper resource,
GlideAnimation<? super BitmapPaletteWrapper> glideAnimation) {
Palette palette = resource.getPalette();
update(resource.getBitmap(), palette.getVibrantColor(palette
.getMutedColor(MaterialValueHelper.getSecondaryTextColor(service, true))));
}
return mInstance;
}
@Override
public void onLoadFailed(Exception e, Drawable errorDrawable) {
super.onLoadFailed(e, errorDrawable);
update(null, MaterialValueHelper.getSecondaryTextColor(service, true));
}
/**
* Initialize given widgets to default state, where we launch Music on default click and hide
* actions if service not running.
*/
protected void defaultAppWidget(final Context context, final int[] appWidgetIds) {
final RemoteViews appWidgetView = new RemoteViews(context.getPackageName(),
R.layout.app_widget_card);
private void update(@Nullable Bitmap bitmap, int color) {
// Set correct drawable for pause state
int playPauseRes = isPlaying ? R.drawable.ic_pause_white_24dp
: R.drawable.ic_play_arrow_white_24dp;
appWidgetView.setImageViewBitmap(R.id.button_toggle_play_pause,
createBitmap(RetroUtil.getTintedVectorDrawable(service, playPauseRes, color), 1f));
appWidgetView.setViewVisibility(R.id.media_titles, View.INVISIBLE);
appWidgetView.setImageViewResource(R.id.image, R.drawable.default_album_art);
appWidgetView.setImageViewBitmap(R.id.button_next, createBitmap(
RetroUtil.getTintedVectorDrawable(context, R.drawable.ic_skip_next_white_24dp,
MaterialValueHelper.getSecondaryTextColor(context, true)), 1f));
appWidgetView.setImageViewBitmap(R.id.button_prev, createBitmap(
RetroUtil.getTintedVectorDrawable(context, R.drawable.ic_skip_previous_white_24dp,
MaterialValueHelper.getSecondaryTextColor(context, true)), 1f));
appWidgetView.setImageViewBitmap(R.id.button_toggle_play_pause, createBitmap(
RetroUtil.getTintedVectorDrawable(context, R.drawable.ic_play_arrow_white_24dp,
MaterialValueHelper.getSecondaryTextColor(context, true)), 1f));
// Set prev/next button drawables
appWidgetView.setImageViewBitmap(R.id.button_next, createBitmap(
RetroUtil.getTintedVectorDrawable(service, R.drawable.ic_skip_next_white_24dp,
color), 1f));
appWidgetView.setImageViewBitmap(R.id.button_prev, createBitmap(
RetroUtil.getTintedVectorDrawable(service, R.drawable.ic_skip_previous_white_24dp,
color), 1f));
linkButtons(context, appWidgetView);
pushUpdate(context, appWidgetIds, appWidgetView);
}
final Drawable image = getAlbumArtDrawable(service.getResources(), bitmap);
final Bitmap roundedBitmap = createRoundedBitmap(image, imageSize, imageSize,
cardRadius, 0, cardRadius, 0);
appWidgetView.setImageViewBitmap(R.id.image, roundedBitmap);
/**
* Update all active widget instances by pushing changes
*/
public void performUpdate(final MusicService service, final int[] appWidgetIds) {
final RemoteViews appWidgetView = new RemoteViews(service.getPackageName(),
R.layout.app_widget_card);
pushUpdate(service, appWidgetIds, appWidgetView);
}
});
}
});
}
final boolean isPlaying = service.isPlaying();
final Song song = service.getCurrentSong();
/**
* Link up various button actions using {@link PendingIntent}.
*/
private void linkButtons(final Context context, final RemoteViews views) {
Intent action;
PendingIntent pendingIntent;
// Set the titles and artwork
if (TextUtils.isEmpty(song.title) && TextUtils.isEmpty(song.artistName)) {
appWidgetView.setViewVisibility(R.id.media_titles, View.INVISIBLE);
} else {
appWidgetView.setViewVisibility(R.id.media_titles, View.VISIBLE);
appWidgetView.setTextViewText(R.id.title, song.title);
appWidgetView.setTextViewText(R.id.text, getSongArtistAndAlbum(song));
}
final ComponentName serviceName = new ComponentName(context, MusicService.class);
// Set correct drawable for pause state
int playPauseRes =
isPlaying ? R.drawable.ic_pause_white_24dp : R.drawable.ic_play_arrow_white_24dp;
appWidgetView.setImageViewBitmap(R.id.button_toggle_play_pause, createBitmap(
RetroUtil.getTintedVectorDrawable(service, playPauseRes,
MaterialValueHelper.getSecondaryTextColor(service, true)), 1f));
// Home
action = new Intent(context, MainActivity.class);
action.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
pendingIntent = PendingIntent.getActivity(context, 0, action, 0);
views.setOnClickPendingIntent(R.id.image, pendingIntent);
views.setOnClickPendingIntent(R.id.media_titles, pendingIntent);
// Set prev/next button drawables
appWidgetView.setImageViewBitmap(R.id.button_next, createBitmap(
RetroUtil.getTintedVectorDrawable(service, R.drawable.ic_skip_next_white_24dp,
MaterialValueHelper.getSecondaryTextColor(service, true)), 1f));
appWidgetView.setImageViewBitmap(R.id.button_prev, createBitmap(
RetroUtil.getTintedVectorDrawable(service, R.drawable.ic_skip_previous_white_24dp,
MaterialValueHelper.getSecondaryTextColor(service, true)), 1f));
// Previous track
pendingIntent = buildPendingIntent(context, Constants.ACTION_REWIND, serviceName);
views.setOnClickPendingIntent(R.id.button_prev, pendingIntent);
// Link actions buttons to intents
linkButtons(service, appWidgetView);
// Play and pause
pendingIntent = buildPendingIntent(context, Constants.ACTION_TOGGLE_PAUSE, serviceName);
views.setOnClickPendingIntent(R.id.button_toggle_play_pause, pendingIntent);
if (imageSize == 0) {
imageSize = service.getResources().getDimensionPixelSize(R.dimen.app_widget_card_image_size);
}
if (cardRadius == 0f) {
cardRadius = service.getResources().getDimension(R.dimen.app_widget_card_radius);
}
// Next track
pendingIntent = buildPendingIntent(context, Constants.ACTION_SKIP, serviceName);
views.setOnClickPendingIntent(R.id.button_next, pendingIntent);
}
// Load the album cover async and push the update on completion
service.runOnUiThread(new Runnable() {
@Override
public void run() {
if (target != null) {
Glide.clear(target);
}
target = SongGlideRequest.Builder.from(Glide.with(service), song)
.checkIgnoreMediaStore(service)
.generatePalette(service).build()
.centerCrop()
.into(new SimpleTarget<BitmapPaletteWrapper>(imageSize, imageSize) {
@Override
public void onResourceReady(BitmapPaletteWrapper resource,
GlideAnimation<? super BitmapPaletteWrapper> glideAnimation) {
Palette palette = resource.getPalette();
update(resource.getBitmap(), palette.getVibrantColor(palette
.getMutedColor(MaterialValueHelper.getSecondaryTextColor(service, true))));
}
@Override
public void onLoadFailed(Exception e, Drawable errorDrawable) {
super.onLoadFailed(e, errorDrawable);
update(null, MaterialValueHelper.getSecondaryTextColor(service, true));
}
private void update(@Nullable Bitmap bitmap, int color) {
// Set correct drawable for pause state
int playPauseRes = isPlaying ? R.drawable.ic_pause_white_24dp
: R.drawable.ic_play_arrow_white_24dp;
appWidgetView.setImageViewBitmap(R.id.button_toggle_play_pause,
createBitmap(RetroUtil.getTintedVectorDrawable(service, playPauseRes, color), 1f));
// Set prev/next button drawables
appWidgetView.setImageViewBitmap(R.id.button_next, createBitmap(
RetroUtil.getTintedVectorDrawable(service, R.drawable.ic_skip_next_white_24dp,
color), 1f));
appWidgetView.setImageViewBitmap(R.id.button_prev, createBitmap(
RetroUtil.getTintedVectorDrawable(service, R.drawable.ic_skip_previous_white_24dp,
color), 1f));
final Drawable image = getAlbumArtDrawable(service.getResources(), bitmap);
final Bitmap roundedBitmap = createRoundedBitmap(image, imageSize, imageSize,
cardRadius, 0, cardRadius, 0);
appWidgetView.setImageViewBitmap(R.id.image, roundedBitmap);
pushUpdate(service, appWidgetIds, appWidgetView);
}
});
}
});
}
/**
* Link up various button actions using {@link PendingIntent}.
*/
private void linkButtons(final Context context, final RemoteViews views) {
Intent action;
PendingIntent pendingIntent;
final ComponentName serviceName = new ComponentName(context, MusicService.class);
// Home
action = new Intent(context, MainActivity.class);
action.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
pendingIntent = PendingIntent.getActivity(context, 0, action, 0);
views.setOnClickPendingIntent(R.id.image, pendingIntent);
views.setOnClickPendingIntent(R.id.media_titles, pendingIntent);
// Previous track
pendingIntent = buildPendingIntent(context, Constants.ACTION_REWIND, serviceName);
views.setOnClickPendingIntent(R.id.button_prev, pendingIntent);
// Play and pause
pendingIntent = buildPendingIntent(context, Constants.ACTION_TOGGLE_PAUSE, serviceName);
views.setOnClickPendingIntent(R.id.button_toggle_play_pause, pendingIntent);
// Next track
pendingIntent = buildPendingIntent(context, Constants.ACTION_SKIP, serviceName);
views.setOnClickPendingIntent(R.id.button_next, pendingIntent);
}
}

View File

@ -18,6 +18,7 @@ import android.graphics.drawable.Drawable;
import android.os.Build;
import android.text.TextUtils;
import android.widget.RemoteViews;
import code.name.monkey.retromusic.Constants;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.model.Song;
@ -25,138 +26,138 @@ import code.name.monkey.retromusic.service.MusicService;
public abstract class BaseAppWidget extends AppWidgetProvider {
public static final String NAME = "app_widget";
public static final String NAME = "app_widget";
protected static Bitmap createBitmap(Drawable drawable, float sizeMultiplier) {
Bitmap bitmap = Bitmap.createBitmap((int) (drawable.getIntrinsicWidth() * sizeMultiplier),
(int) (drawable.getIntrinsicHeight() * sizeMultiplier), Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(bitmap);
drawable.setBounds(0, 0, c.getWidth(), c.getHeight());
drawable.draw(c);
return bitmap;
}
protected static Bitmap createRoundedBitmap(Drawable drawable, int width, int height, float tl,
float tr, float bl, float br) {
if (drawable == null) {
return null;
protected static Bitmap createBitmap(Drawable drawable, float sizeMultiplier) {
Bitmap bitmap = Bitmap.createBitmap((int) (drawable.getIntrinsicWidth() * sizeMultiplier),
(int) (drawable.getIntrinsicHeight() * sizeMultiplier), Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(bitmap);
drawable.setBounds(0, 0, c.getWidth(), c.getHeight());
drawable.draw(c);
return bitmap;
}
Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(bitmap);
drawable.setBounds(0, 0, width, height);
drawable.draw(c);
protected static Bitmap createRoundedBitmap(Drawable drawable, int width, int height, float tl,
float tr, float bl, float br) {
if (drawable == null) {
return null;
}
Bitmap rounded = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(bitmap);
drawable.setBounds(0, 0, width, height);
drawable.draw(c);
Canvas canvas = new Canvas(rounded);
Paint paint = new Paint();
paint.setShader(
new BitmapShader(bitmap, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP));
paint.setAntiAlias(true);
canvas.drawPath(composeRoundedRectPath(new RectF(0, 0, width, height), tl, tr, bl, br), paint);
Bitmap rounded = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
return rounded;
}
Canvas canvas = new Canvas(rounded);
Paint paint = new Paint();
paint.setShader(
new BitmapShader(bitmap, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP));
paint.setAntiAlias(true);
canvas.drawPath(composeRoundedRectPath(new RectF(0, 0, width, height), tl, tr, bl, br), paint);
protected static Path composeRoundedRectPath(RectF rect, float tl, float tr, float bl, float br) {
Path path = new Path();
tl = tl < 0 ? 0 : tl;
tr = tr < 0 ? 0 : tr;
bl = bl < 0 ? 0 : bl;
br = br < 0 ? 0 : br;
path.moveTo(rect.left + tl, rect.top);
path.lineTo(rect.right - tr, rect.top);
path.quadTo(rect.right, rect.top, rect.right, rect.top + tr);
path.lineTo(rect.right, rect.bottom - br);
path.quadTo(rect.right, rect.bottom, rect.right - br, rect.bottom);
path.lineTo(rect.left + bl, rect.bottom);
path.quadTo(rect.left, rect.bottom, rect.left, rect.bottom - bl);
path.lineTo(rect.left, rect.top + tl);
path.quadTo(rect.left, rect.top, rect.left + tl, rect.top);
path.close();
return path;
}
/**
* {@inheritDoc}
*/
@Override
public void onUpdate(final Context context, final AppWidgetManager appWidgetManager,
final int[] appWidgetIds) {
defaultAppWidget(context, appWidgetIds);
final Intent updateIntent = new Intent(Constants.APP_WIDGET_UPDATE);
updateIntent.putExtra(Constants.EXTRA_APP_WIDGET_NAME, NAME);
updateIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, appWidgetIds);
updateIntent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY);
context.sendBroadcast(updateIntent);
}
/**
* Handle a change notification coming over from {@link MusicService}
*/
public void notifyChange(final MusicService service, final String what) {
if (hasInstances(service)) {
if (Constants.META_CHANGED.equals(what) || Constants.PLAY_STATE_CHANGED.equals(what)) {
performUpdate(service, null);
}
return rounded;
}
}
protected void pushUpdate(final Context context, final int[] appWidgetIds,
final RemoteViews views) {
final AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
if (appWidgetIds != null) {
appWidgetManager.updateAppWidget(appWidgetIds, views);
} else {
appWidgetManager.updateAppWidget(new ComponentName(context, getClass()), views);
protected static Path composeRoundedRectPath(RectF rect, float tl, float tr, float bl, float br) {
Path path = new Path();
tl = tl < 0 ? 0 : tl;
tr = tr < 0 ? 0 : tr;
bl = bl < 0 ? 0 : bl;
br = br < 0 ? 0 : br;
path.moveTo(rect.left + tl, rect.top);
path.lineTo(rect.right - tr, rect.top);
path.quadTo(rect.right, rect.top, rect.right, rect.top + tr);
path.lineTo(rect.right, rect.bottom - br);
path.quadTo(rect.right, rect.bottom, rect.right - br, rect.bottom);
path.lineTo(rect.left + bl, rect.bottom);
path.quadTo(rect.left, rect.bottom, rect.left, rect.bottom - bl);
path.lineTo(rect.left, rect.top + tl);
path.quadTo(rect.left, rect.top, rect.left + tl, rect.top);
path.close();
return path;
}
}
/**
* Check against {@link AppWidgetManager} if there are any instances of this widget.
*/
protected boolean hasInstances(final Context context) {
final AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
final int[] mAppWidgetIds = appWidgetManager.getAppWidgetIds(new ComponentName(context,
getClass()));
return mAppWidgetIds.length > 0;
}
protected PendingIntent buildPendingIntent(Context context, final String action,
final ComponentName serviceName) {
Intent intent = new Intent(action);
intent.setComponent(serviceName);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
return PendingIntent.getForegroundService(context, 0, intent, 0);
} else {
return PendingIntent.getService(context, 0, intent, 0);
/**
* {@inheritDoc}
*/
@Override
public void onUpdate(final Context context, final AppWidgetManager appWidgetManager,
final int[] appWidgetIds) {
defaultAppWidget(context, appWidgetIds);
final Intent updateIntent = new Intent(Constants.APP_WIDGET_UPDATE);
updateIntent.putExtra(Constants.EXTRA_APP_WIDGET_NAME, NAME);
updateIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, appWidgetIds);
updateIntent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY);
context.sendBroadcast(updateIntent);
}
}
abstract protected void defaultAppWidget(final Context context, final int[] appWidgetIds);
abstract public void performUpdate(final MusicService service, final int[] appWidgetIds);
protected Drawable getAlbumArtDrawable(final Resources resources, final Bitmap bitmap) {
Drawable image;
if (bitmap == null) {
image = resources.getDrawable(R.drawable.default_album_art);
} else {
image = new BitmapDrawable(resources, bitmap);
/**
* Handle a change notification coming over from {@link MusicService}
*/
public void notifyChange(final MusicService service, final String what) {
if (hasInstances(service)) {
if (Constants.META_CHANGED.equals(what) || Constants.PLAY_STATE_CHANGED.equals(what)) {
performUpdate(service, null);
}
}
}
return image;
}
protected String getSongArtistAndAlbum(final Song song) {
final StringBuilder builder = new StringBuilder();
builder.append(song.artistName);
if (!TextUtils.isEmpty(song.artistName) && !TextUtils.isEmpty(song.albumName)) {
builder.append(" • ");
protected void pushUpdate(final Context context, final int[] appWidgetIds,
final RemoteViews views) {
final AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
if (appWidgetIds != null) {
appWidgetManager.updateAppWidget(appWidgetIds, views);
} else {
appWidgetManager.updateAppWidget(new ComponentName(context, getClass()), views);
}
}
/**
* Check against {@link AppWidgetManager} if there are any instances of this widget.
*/
protected boolean hasInstances(final Context context) {
final AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
final int[] mAppWidgetIds = appWidgetManager.getAppWidgetIds(new ComponentName(context,
getClass()));
return mAppWidgetIds.length > 0;
}
protected PendingIntent buildPendingIntent(Context context, final String action,
final ComponentName serviceName) {
Intent intent = new Intent(action);
intent.setComponent(serviceName);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
return PendingIntent.getForegroundService(context, 0, intent, 0);
} else {
return PendingIntent.getService(context, 0, intent, 0);
}
}
abstract protected void defaultAppWidget(final Context context, final int[] appWidgetIds);
abstract public void performUpdate(final MusicService service, final int[] appWidgetIds);
protected Drawable getAlbumArtDrawable(final Resources resources, final Bitmap bitmap) {
Drawable image;
if (bitmap == null) {
image = resources.getDrawable(R.drawable.default_album_art);
} else {
image = new BitmapDrawable(resources, bitmap);
}
return image;
}
protected String getSongArtistAndAlbum(final Song song) {
final StringBuilder builder = new StringBuilder();
builder.append(song.artistName);
if (!TextUtils.isEmpty(song.artistName) && !TextUtils.isEmpty(song.albumName)) {
builder.append(" • ");
}
builder.append(song.albumName);
return builder.toString();
}
builder.append(song.albumName);
return builder.toString();
}
}

View File

@ -71,21 +71,29 @@ public class DeletePlaylistDialog extends RoundedBottomSheetDialogFragment {
CharSequence content;
//noinspection ConstantConditions
if (playlists.size() > 1) {
title = R.string.delete_playlists_title;
content = Html.fromHtml(getString(R.string.delete_x_playlists, playlists.size()));
} else {
title = R.string.delete_playlist_title;
content = Html.fromHtml(getString(R.string.delete_playlist_x, playlists.get(0).name));
}
this.title.setText(content);
this.actionDelete.setText(title);
this.title.setTextColor(ThemeStore.textColorPrimary(getContext()));
actionDelete.setText(R.string.action_delete);
int accentColor = ThemeStore.accentColor(Objects.requireNonNull(getContext()));
actionDelete.setBackgroundTintList(ColorStateList.valueOf(accentColor));
actionCancel.setStrokeColor(ColorStateList.valueOf(accentColor));
actionCancel.setTextColor(accentColor);
actionDelete.setIconTint(ColorStateList.valueOf(accentColor));
actionCancel.setIconTint(ColorStateList.valueOf(accentColor));
int iconColor = ThemeStore.textColorSecondary(getContext());
actionDelete.setStrokeColor(ColorStateList.valueOf(iconColor));
actionCancel.setStrokeColor(ColorStateList.valueOf(iconColor));
int textColor = ThemeStore.textColorPrimary(getContext());
actionDelete.setTextColor(ColorStateList.valueOf(textColor));
actionCancel.setTextColor(ColorStateList.valueOf(textColor));
}

View File

@ -1,7 +1,6 @@
package code.name.monkey.retromusic.dialogs;
import android.content.res.ColorStateList;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
@ -10,15 +9,10 @@ import android.widget.TextView;
import com.google.android.material.button.MaterialButton;
import java.io.File;
import java.util.Calendar;
import java.util.List;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.core.content.ContextCompat;
import butterknife.BindView;
import butterknife.BindViews;
import butterknife.ButterKnife;
import butterknife.OnClick;
@ -27,35 +21,19 @@ import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.RetroApplication;
import code.name.monkey.retromusic.ui.activities.MainActivity;
import code.name.monkey.retromusic.ui.fragments.mainactivity.folders.FoldersFragment;
import code.name.monkey.retromusic.util.Compressor;
import code.name.monkey.retromusic.util.NavigationUtil;
import code.name.monkey.retromusic.util.PreferenceUtil;
import code.name.monkey.retromusic.views.CircularImageView;
import code.name.monkey.retromusic.views.RoundedBottomSheetDialogFragment;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.schedulers.Schedulers;
import static code.name.monkey.retromusic.Constants.USER_PROFILE;
public class MainOptionsBottomSheetDialogFragment extends RoundedBottomSheetDialogFragment {
private static final String TAG = "MainOptionsBottomSheetD";
private static ButterKnife.Setter<TextView, Integer> textColor = (view, value, index) -> view.setTextColor(ColorStateList.valueOf(value));
@BindView(R.id.user_image_bottom)
CircularImageView userImageBottom;
@BindView(R.id.title_welcome)
AppCompatTextView titleWelcome;
@BindView(R.id.text)
AppCompatTextView text;
@BindViews({R.id.action_folders, R.id.action_about, R.id.action_buy_pro, R.id.action_rate, R.id.action_sleep_timer})
@BindViews({R.id.action_folders, R.id.action_settings, R.id.action_about, R.id.action_buy_pro, R.id.action_rate,
R.id.action_sleep_timer})
List<MaterialButton> materialButtons;
private CompositeDisposable disposable = new CompositeDisposable();
public static MainOptionsBottomSheetDialogFragment newInstance(int selected_id) {
Bundle bundle = new Bundle();
@ -69,11 +47,6 @@ public class MainOptionsBottomSheetDialogFragment extends RoundedBottomSheetDial
return new MainOptionsBottomSheetDialogFragment();
}
@Override
public void onDestroyView() {
super.onDestroyView();
disposable.clear();
}
@Nullable
@Override
@ -88,14 +61,11 @@ public class MainOptionsBottomSheetDialogFragment extends RoundedBottomSheetDial
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
text.setTextColor(ThemeStore.textColorSecondary(getContext()));
titleWelcome.setTextColor(ThemeStore.textColorPrimary(getContext()));
titleWelcome.setText(String.format("%s %s!", getTimeOfTheDay(), PreferenceUtil.getInstance(getContext()).getUserName()));
loadImageFromStorage();
}
@OnClick({R.id.action_folders, R.id.action_settings, R.id.action_sleep_timer, R.id.action_rate,
R.id.user_info_container, R.id.action_buy_pro, R.id.action_about})
R.id.action_buy_pro, R.id.action_about})
void onClick(View view) {
MainActivity mainActivity = (MainActivity) getActivity();
if (mainActivity == null) {
@ -109,58 +79,22 @@ public class MainOptionsBottomSheetDialogFragment extends RoundedBottomSheetDial
NavigationUtil.goToSettings(mainActivity);
break;
case R.id.action_about:
NavigationUtil.goToAbout(getActivity());
NavigationUtil.goToAbout(mainActivity);
break;
case R.id.action_buy_pro:
NavigationUtil.goToProVersion(getActivity());
NavigationUtil.goToProVersion(mainActivity);
break;
case R.id.action_sleep_timer:
if (getFragmentManager() != null) {
new SleepTimerDialog().show(getFragmentManager(), TAG);
}
break;
case R.id.user_info_container:
NavigationUtil.goToUserInfo(getActivity());
break;
case R.id.action_rate:
NavigationUtil.goToPlayStore(getActivity());
NavigationUtil.goToPlayStore(mainActivity);
break;
}
dismiss();
}
private String getTimeOfTheDay() {
String message = getString(R.string.title_good_day);
Calendar c = Calendar.getInstance();
int timeOfDay = c.get(Calendar.HOUR_OF_DAY);
if (timeOfDay >= 0 && timeOfDay < 6) {
message = getString(R.string.title_good_night);
} else if (timeOfDay >= 6 && timeOfDay < 12) {
message = getString(R.string.title_good_morning);
} else if (timeOfDay >= 12 && timeOfDay < 16) {
message = getString(R.string.title_good_afternoon);
} else if (timeOfDay >= 16 && timeOfDay < 20) {
message = getString(R.string.title_good_evening);
} else if (timeOfDay >= 20 && timeOfDay < 24) {
message = getString(R.string.title_good_night);
}
return message;
}
private void loadImageFromStorage() {
//noinspection ConstantConditions
disposable.add(new Compressor(getContext())
.setMaxHeight(300)
.setMaxWidth(300)
.setQuality(75)
.setCompressFormat(Bitmap.CompressFormat.WEBP)
.compressToBitmapAsFlowable(
new File(PreferenceUtil.getInstance(getContext()).getProfileImage(), USER_PROFILE))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(userImageBottom::setImageBitmap,
throwable -> userImageBottom.setImageDrawable(ContextCompat
.getDrawable(getContext(), R.drawable.ic_person_flat))));
}
}

View File

@ -251,17 +251,8 @@ public class MusicPlayerRemote {
}
public static int seekTo(int millis) {
getCastSession();
if (musicService != null) {
switch (playbackLocation) {
case PlaybackLocation.LOCAL:
return musicService.seek(millis);
case PlaybackLocation.REMOTE:
if (getCastSession() != null) {
getCastSession().getRemoteMediaClient().seek(millis);
}
break;
}
return musicService.seek(millis);
}
return -1;
}

View File

@ -1,7 +1,6 @@
package code.name.monkey.retromusic.mvp.presenter;
import androidx.annotation.NonNull;
import code.name.monkey.retromusic.RetroApplication;
import code.name.monkey.retromusic.mvp.Presenter;
import code.name.monkey.retromusic.mvp.contract.HomeContract;
@ -25,8 +24,11 @@ public class HomePresenter extends Presenter implements HomeContract.HomePresent
loadTopAlbums();
loadTopArtists();
loadSuggestions();
if (PreferenceUtil.getInstance(RetroApplication.getInstance()).isGenreShown()) loadGenres();
}
@Override

View File

@ -23,15 +23,23 @@ import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.service.media.MediaBrowserService;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import java.util.ArrayList;
import java.util.List;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.helper.MusicPlayerRemote;
import code.name.monkey.retromusic.loaders.AlbumLoader;
import code.name.monkey.retromusic.loaders.ArtistLoader;
import code.name.monkey.retromusic.loaders.PlaylistLoader;
import code.name.monkey.retromusic.loaders.PlaylistSongsLoader;
import code.name.monkey.retromusic.loaders.SongLoader;
import code.name.monkey.retromusic.model.Album;
import code.name.monkey.retromusic.model.Artist;
import code.name.monkey.retromusic.model.Playlist;
import code.name.monkey.retromusic.model.Song;
import code.name.monkey.retromusic.util.RetroUtil;
@ -52,7 +60,7 @@ public class WearBrowserService extends MediaBrowserService {
public static final int TYPE_PLAYLIST_ALL_SONGS = 7;
public static WearBrowserService sInstance;
MediaSession mSession;
private MediaSession mSession;
private Context mContext;
private boolean mServiceStarted;
@ -69,7 +77,6 @@ public class WearBrowserService extends MediaBrowserService {
setSessionToken(mSession.getSessionToken());
mSession.setCallback(new MediaSessionCallback());
mSession.setFlags(MediaSession.FLAG_HANDLES_MEDIA_BUTTONS | MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS);
}
@Override
@ -117,8 +124,12 @@ public class WearBrowserService extends MediaBrowserService {
}
}
private void fillMediaItems(List<MediaBrowser.MediaItem> mediaItems, String mediaId,
String title, Uri icon, String subTitle, int playableOrBrowsable) {
private void fillMediaItems(List<MediaBrowser.MediaItem> mediaItems,
String mediaId,
String title,
String subTitle,
Uri icon,
int playableOrBrowsable) {
mediaItems.add(new MediaBrowser.MediaItem(
new MediaDescription.Builder()
.setMediaId(mediaId)
@ -134,8 +145,7 @@ public class WearBrowserService extends MediaBrowserService {
new MediaDescription.Builder()
.setMediaId(Integer.toString(TYPE_ARTIST))
.setTitle(getString(R.string.artists))
.setIconUri(Uri.parse("android.resource://" +
"naman14.timber/drawable/ic_empty_music2"))
.setIconBitmap(RetroUtil.createBitmap(ContextCompat.getDrawable(getApplicationContext(), R.drawable.default_artist_art), 1f))
.setSubtitle(getString(R.string.artists))
.build(), MediaBrowser.MediaItem.FLAG_BROWSABLE
));
@ -144,8 +154,7 @@ public class WearBrowserService extends MediaBrowserService {
new MediaDescription.Builder()
.setMediaId(Integer.toString(TYPE_ALBUM))
.setTitle(getString(R.string.albums))
.setIconUri(Uri.parse("android.resource://" +
"naman14.timber/drawable/ic_empty_music2"))
.setIconBitmap(RetroUtil.createBitmap(ContextCompat.getDrawable(getApplicationContext(), R.drawable.default_album_art), 1f))
.setSubtitle(getString(R.string.albums))
.build(), MediaBrowser.MediaItem.FLAG_BROWSABLE
));
@ -154,8 +163,7 @@ public class WearBrowserService extends MediaBrowserService {
new MediaDescription.Builder()
.setMediaId(Integer.toString(TYPE_SONG))
.setTitle(getString(R.string.songs))
.setIconUri(Uri.parse("android.resource://" +
"naman14.timber/drawable/ic_empty_music2"))
.setIconBitmap(RetroUtil.createBitmap(ContextCompat.getDrawable(getApplicationContext(), R.drawable.default_album_art), 1f))
.setSubtitle(getString(R.string.songs))
.build(), MediaBrowser.MediaItem.FLAG_BROWSABLE
));
@ -165,8 +173,7 @@ public class WearBrowserService extends MediaBrowserService {
new MediaDescription.Builder()
.setMediaId(Integer.toString(TYPE_PLAYLIST))
.setTitle(getString(R.string.playlists))
.setIconUri(Uri.parse("android.resource://" +
"naman14.timber/drawable/ic_empty_music2"))
.setIconUri(Uri.parse("android.resource://code.name.monkey.retromusic/drawable/ic_queue_music_white_24dp"))
.setSubtitle(getString(R.string.playlists))
.build(), MediaBrowser.MediaItem.FLAG_BROWSABLE
));
@ -177,6 +184,7 @@ public class WearBrowserService extends MediaBrowserService {
final List<MediaBrowser.MediaItem> mediaItems = new ArrayList<>();
new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(final Void... unused) {
@ -185,64 +193,108 @@ public class WearBrowserService extends MediaBrowserService {
addMediaRoots(mediaItems);
} else {
switch (Integer.parseInt(Character.toString(parentId.charAt(0)))) {
/*case TYPE_ARTIST:
List<Artist> artistList = ArtistLoader.getAllArtists(mContext);
case TYPE_ARTIST:
List<Artist> artistList = ArtistLoader.getAllArtists(mContext).blockingFirst();
for (Artist artist : artistList) {
String albumNmber = TimberUtils.makeLabel(mContext, R.plurals.Nalbums, artist.albumCount);
String songCount = TimberUtils.makeLabel(mContext, R.plurals.Nsongs, artist.songCount);
fillMediaItems(mediaItems, Integer.toString(TYPE_ARTIST_SONG_ALBUMS) + Long.toString(artist.id), artist.name, Uri.parse("android.resource://" +
"naman14.timber/drawable/ic_empty_music2"), TimberUtils.makeCombinedString(mContext, albumNmber, songCount), MediaBrowser.MediaItem.FLAG_BROWSABLE);
String albumNmber = String.format("%d %s", artist.albums.size(), artist.albums.size() > 1 ? "Albums" : "Album");
String songCount = String.format("%d %s", artist.getSongs().size(), artist.getSongs().size() > 1 ? "Songs" : "Song");
fillMediaItems(mediaItems,
Integer.toString(TYPE_ARTIST_SONG_ALBUMS) + Long.toString(artist.getId()),
artist.getName(),
albumNmber + " • " + songCount,
Uri.parse("android.resource://code.name.monkey.retromusic/drawable/default_artist_art"),
MediaBrowser.MediaItem.FLAG_BROWSABLE);
}
break;
case TYPE_ARTIST_SONG_ALBUMS:
fillMediaItems(mediaItems,
Integer.toString(TYPE_ARTIST_ALL_SONGS) + Long.parseLong(parentId.substring(1)),
"All songs",
"All songs by artist",
Uri.parse("android.resource://code.name.monkey.retromusic/drawable/default_artist_art"),
MediaBrowser.MediaItem.FLAG_BROWSABLE);
List<Album> artistAlbums = ArtistLoader.getArtist(mContext, Integer.parseInt(parentId.substring(1))).blockingFirst().albums; //ArtistAlbumLoader.getAlbumsForArtist(mContext, Long.parseLong(parentId.substring(1)));
for (Album album : artistAlbums) {
String songCount = String.format("%d %s", album.songs.size(), album.songs.size() > 1 ? "Songs" : "Song");
fillMediaItems(mediaItems,
Integer.toString(TYPE_ALBUM_SONGS) + Long.toString(album.getId()),
album.getTitle(),
songCount,
Uri.parse("android.resource://code.name.monkey.retromusic/drawable/default_artist_art"),
MediaBrowser.MediaItem.FLAG_BROWSABLE);
}
break;
case TYPE_ALBUM:
List<Album> albumList = AlbumLoader.getAllAlbums(mContext);
List<Album> albumList = AlbumLoader.getAllAlbums(mContext).blockingFirst();
for (Album album : albumList) {
fillMediaItems(mediaItems, Integer.toString(TYPE_ALBUM_SONGS) + Long.toString(album.id), album.title, TimberUtils.getAlbumArtUri(album.id), album.artistName, MediaBrowser.MediaItem.FLAG_BROWSABLE);
fillMediaItems(mediaItems,
Integer.toString(TYPE_ALBUM_SONGS) + Long.toString(album.getId()),
album.getTitle(),
album.getArtistName(),
RetroUtil.getAlbumArtUri(album.getId()),
MediaBrowser.MediaItem.FLAG_BROWSABLE);
}
break;*/
break;
case TYPE_SONG:
List<Song> songList = SongLoader.getAllSongs(mContext).blockingFirst();
for (Song song : songList) {
fillMediaItems(mediaItems, String.valueOf(song.id), song.title, RetroUtil.getAlbumArtUri(song.albumId), song.artistName, MediaBrowser.MediaItem.FLAG_PLAYABLE);
fillMediaItems(mediaItems,
String.valueOf(song.id),
song.title,
song.artistName,
Uri.parse("android.resource://code.name.monkey.retromusic/drawable/default_album_art"),
MediaBrowser.MediaItem.FLAG_PLAYABLE);
}
break;
/* case TYPE_ALBUM_SONGS:
List<Song> albumSongList = AlbumSongLoader.getSongsForAlbum(mContext, Long.parseLong(parentId.substring(1)));
for (Song song : albumSongList) {
fillMediaItems(mediaItems, String.valueOf(song.id), song.title, TimberUtils.getAlbumArtUri(song.albumId), song.artistName, MediaBrowser.MediaItem.FLAG_PLAYABLE);
}
break;
case TYPE_ARTIST_SONG_ALBUMS:
fillMediaItems(mediaItems, Integer.toString(TYPE_ARTIST_ALL_SONGS) + Long.parseLong(parentId.substring(1)), "All songs", Uri.parse("android.resource://" +
"naman14.timber/drawable/ic_empty_music2"), "All songs by artist", MediaBrowser.MediaItem.FLAG_BROWSABLE);
List<Album> artistAlbums = ArtistAlbumLoader.getAlbumsForArtist(mContext, Long.parseLong(parentId.substring(1)));
for (Album album : artistAlbums) {
String songCount = TimberUtils.makeLabel(mContext, R.plurals.Nsongs, album.songCount);
fillMediaItems(mediaItems, Integer.toString(TYPE_ALBUM_SONGS) + Long.toString(album.id), album.title, TimberUtils.getAlbumArtUri(album.id), songCount, MediaBrowser.MediaItem.FLAG_BROWSABLE);
case TYPE_ALBUM_SONGS:
List<Song> albumSongList = AlbumLoader.getAlbum(mContext, Integer.parseInt(parentId.substring(1))).blockingFirst().songs;
for (Song song : albumSongList) {
fillMediaItems(mediaItems,
String.valueOf(song.id),
song.title,
song.artistName,
Uri.parse("android.resource://code.name.monkey.retromusic/drawable/default_album_art"),
MediaBrowser.MediaItem.FLAG_PLAYABLE);
}
break;
case TYPE_ARTIST_ALL_SONGS:
List<Song> artistSongs = ArtistSongLoader.getSongsForArtist(mContext, Long.parseLong(parentId.substring(1)));
List<Song> artistSongs = ArtistLoader.getArtist(mContext, Integer.parseInt(parentId.substring(1))).blockingFirst().getSongs();
for (Song song : artistSongs) {
fillMediaItems(mediaItems, String.valueOf(song.id), song.title, TimberUtils.getAlbumArtUri(song.albumId), song.albumName, MediaBrowser.MediaItem.FLAG_PLAYABLE);
fillMediaItems(mediaItems,
String.valueOf(song.id),
song.title,
song.albumName,
Uri.parse("android.resource://code.name.monkey.retromusic/drawable/default_album_art"),
MediaBrowser.MediaItem.FLAG_PLAYABLE);
}
break;
case TYPE_PLAYLIST:
List<Playlist> playlistList = PlaylistLoader.getPlaylists(mContext, false);
List<Playlist> playlistList = PlaylistLoader.getAllPlaylists(mContext).blockingFirst();
for (Playlist playlist : playlistList) {
String songCount = TimberUtils.makeLabel(mContext, R.plurals.Nsongs, playlist.songCount);
fillMediaItems(mediaItems, Integer.toString(TYPE_PLAYLIST_ALL_SONGS) + Long.toString(playlist.id), playlist.name,
Uri.parse("android.resource://" +
"naman14.timber/drawable/ic_empty_music2"), songCount, MediaBrowser.MediaItem.FLAG_BROWSABLE);
int size = PlaylistSongsLoader.getPlaylistSongList(mContext, playlist).blockingFirst().size();
String songCount = String.format("%d %s", size, size > 1 ? "Songs" : "Song");
fillMediaItems(mediaItems,
Integer.toString(TYPE_PLAYLIST_ALL_SONGS) + Long.toString(playlist.id),
playlist.name,
songCount,
Uri.parse("android.resource://code.name.monkey.retromusic/drawable/ic_queue_music_white_24dp"),
MediaBrowser.MediaItem.FLAG_BROWSABLE);
}
break;
case TYPE_PLAYLIST_ALL_SONGS:
List<Song> playlistSongs = PlaylistSongLoader.getSongsInPlaylist(mContext, Long.parseLong(parentId.substring(1)));
List<Song> playlistSongs = PlaylistSongsLoader.getPlaylistSongList(mContext, Integer.parseInt(parentId.substring(1))).blockingFirst();
for (Song song : playlistSongs) {
fillMediaItems(mediaItems, String.valueOf(song.id), song.title, TimberUtils.getAlbumArtUri(song.albumId), song.albumName, MediaBrowser.MediaItem.FLAG_PLAYABLE);
fillMediaItems(mediaItems,
String.valueOf(song.id),
song.title,
song.albumName,
Uri.parse("android.resource://code.name.monkey.retromusic/drawable/default_album_art"),
MediaBrowser.MediaItem.FLAG_PLAYABLE);
}
break;*/
break;
}
}
@ -309,7 +361,7 @@ public class WearBrowserService extends MediaBrowserService {
}
@Override
public void onCustomAction(String action, Bundle extras) {
public void onCustomAction(@NonNull String action, Bundle extras) {
}
}

View File

@ -1,23 +1,25 @@
package code.name.monkey.retromusic.transform;
import android.content.Context;
import androidx.viewpager.widget.ViewPager;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.viewpager.widget.ViewPager;
/**
* ViewPager
* Created by xmuSistone on 2016/9/18.
*/
public class CustPagerTransformer implements ViewPager.PageTransformer {
public class CarousalPagerTransformer implements ViewPager.PageTransformer {
private int maxTranslateOffsetX;
private ViewPager viewPager;
public CustPagerTransformer(Context context) {
public CarousalPagerTransformer(Context context) {
this.maxTranslateOffsetX = dp2px(context, 180);
}
public void transformPage(View view, float position) {
public void transformPage(@NonNull View view, float position) {
if (viewPager == null) {
viewPager = (ViewPager) view.getParent();
}
@ -34,12 +36,10 @@ public class CustPagerTransformer implements ViewPager.PageTransformer {
}
}
/**
* dp
*/
private int dp2px(Context context, float dipValue) {
float m = context.getResources().getDisplayMetrics().density;
return (int) (dipValue * m + 0.5f);
}
}

View File

@ -0,0 +1,58 @@
package code.name.monkey.retromusic.transform;
import android.annotation.SuppressLint;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.viewpager.widget.ViewPager;
/*******************************************************************
* * * * * * * * * * * Created by OCN.Yang
* * * * * * * Time:2017/12/7 19:32.
* * * * * * * Email address:ocnyang@gmail.com
* * * * * * * * * * *.Yang Web site:www.ocnyang.com
*******************************************************************/
public class CascadingPageTransformer implements ViewPager.PageTransformer {
/**
*
*/
private int mScaleOffset = 40;
/**
* @param mScaleOffset px
*/
public void setScaleOffset(int mScaleOffset) {
this.mScaleOffset = mScaleOffset;
}
@SuppressLint("NewApi")
public void transformPage(@NonNull View page, float position) {
if (position <= 0.0f) {//被滑动的那页 position 是-下标~ 0
page.setTranslationX(0f);
//旋转角度 45° * -0.1 = -4.5°
page.setRotation((45 * position));
//X轴偏移 li: 300/3 * -0.1 = -10
page.setTranslationX((page.getWidth() / 3 * position));
} else if (position <= 1f) {
float scale = (page.getWidth() - mScaleOffset * position) / (float) (page.getWidth());
page.setScaleX(scale);
page.setScaleY(scale);
page.setTranslationX((-page.getWidth() * position));
page.setTranslationY((mScaleOffset * 0.8f) * position);
} else {
//缩放比例
float scale = (page.getWidth() - mScaleOffset * position) / (float) (page.getWidth());
page.setScaleX(scale);
page.setScaleY(scale);
page.setTranslationX((-page.getWidth() * position));
page.setTranslationY((mScaleOffset * 0.7f) * position);
}
}
}

View File

@ -1,8 +1,10 @@
package code.name.monkey.retromusic.transform;
import androidx.viewpager.widget.ViewPager;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.viewpager.widget.ViewPager;
/**
* @author Hemanth S (h4h13).
*/
@ -12,7 +14,7 @@ public class NormalPageTransformer implements ViewPager.PageTransformer {
private static final float MIN_ALPHA = 0.5f;
@Override
public void transformPage(View view, float position) {
public void transformPage(@NonNull View view, float position) {
int pageWidth = view.getWidth();
int pageHeight = view.getHeight();

View File

@ -2,11 +2,12 @@ package code.name.monkey.retromusic.transform;
import android.annotation.TargetApi;
import android.os.Build;
import androidx.annotation.NonNull;
import androidx.viewpager.widget.ViewPager;
import android.util.Log;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.viewpager.widget.ViewPager;
/**
* Created by xgc1986 on 2/Apr/2016
*/
@ -26,7 +27,7 @@ public class ParallaxPagerTransformer implements ViewPager.PageTransformer {
View parallaxView = view.findViewById(id);
if (view == null ) {
if (view == null) {
Log.w("ParallaxPager", "There is no view");
}
@ -34,7 +35,7 @@ public class ParallaxPagerTransformer implements ViewPager.PageTransformer {
if (position > -1 && position < 1) {
float width = parallaxView.getWidth();
parallaxView.setTranslationX(-(position * width * speed));
float sc = ((float)view.getWidth() - border)/ view.getWidth();
float sc = ((float) view.getWidth() - border) / view.getWidth();
if (position == 0) {
view.setScaleX(1);
view.setScaleY(1);

View File

@ -0,0 +1,28 @@
package code.name.monkey.retromusic.transform;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.viewpager.widget.ViewPager;
public class StackPagerTransformer implements ViewPager.PageTransformer {
private static final float MIN_SCALE = 0.75f;
@Override
public void transformPage(@NonNull View view, float position) {
if (position <= 0f) {
view.setTranslationX(0f);
view.setScaleX(1f);
view.setScaleY(1f);
} else if (position <= 1f) {
final float scaleFactor = MIN_SCALE + (1 - MIN_SCALE) * (1 - Math.abs(position));
view.setPivotY(0.5f * view.getHeight());
view.setTranslationX(view.getWidth() * -position);
view.setScaleX(scaleFactor);
view.setScaleY(scaleFactor);
}
}
}

View File

@ -32,6 +32,7 @@ import androidx.fragment.app.FragmentTransaction;
import butterknife.BindView;
import butterknife.ButterKnife;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.RetroApplication;
import code.name.monkey.retromusic.dialogs.ChangelogDialog;
import code.name.monkey.retromusic.helper.MusicPlayerRemote;
import code.name.monkey.retromusic.helper.SearchQueryHelper;
@ -43,7 +44,6 @@ import code.name.monkey.retromusic.model.Song;
import code.name.monkey.retromusic.service.MusicService;
import code.name.monkey.retromusic.ui.activities.base.AbsSlidingMusicPanelActivity;
import code.name.monkey.retromusic.ui.fragments.mainactivity.LibraryFragment;
import code.name.monkey.retromusic.ui.fragments.mainactivity.folders.FoldersFragment;
import code.name.monkey.retromusic.ui.fragments.mainactivity.home.BannerHomeFragment;
import code.name.monkey.retromusic.ui.fragments.mainactivity.home.HomeFragment;
import code.name.monkey.retromusic.util.PreferenceUtil;
@ -82,7 +82,6 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements Shared
}
}
};
private int insideFragment = R.id.action_song;
@Override
protected View createContentView() {
@ -99,17 +98,20 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements Shared
super.onCreate(savedInstanceState);
ButterKnife.bind(this);
setBottomBarVisibility(View.VISIBLE);
getBottomNavigationView().setOnNavigationItemSelectedListener(this);
drawerLayout.setOnApplyWindowInsetsListener((view, windowInsets) -> windowInsets.replaceSystemWindowInsets(0, 0, 0, 0));
if (savedInstanceState == null) {
setCurrentFragment(PreferenceUtil.getInstance(this).getLastMusicChooser());
selectedFragment(PreferenceUtil.getInstance(this).getLastPage());
} else {
restoreCurrentFragment();
}
checkShowChangelog();
if (!RetroApplication.isProVersion() && !PreferenceManager.getDefaultSharedPreferences(this).getBoolean("shown", false)) {
showPromotionalOffer();
}
}
private void checkShowChangelog() {
@ -153,7 +155,7 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements Shared
PreferenceUtil.getInstance(this).unregisterOnSharedPreferenceChangedListener(this);
}
public void setCurrentFragment(@Nullable Fragment fragment, boolean isStackAdd, String tag) {
public void setCurrentFragment(@NonNull Fragment fragment, boolean isStackAdd, String tag) {
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
@ -179,8 +181,7 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements Shared
String mimeType = intent.getType();
boolean handled = false;
if (intent.getAction() != null && intent.getAction()
.equals(MediaStore.INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH)) {
if (intent.getAction() != null && intent.getAction().equals(MediaStore.INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH)) {
final ArrayList<Song> songs = SearchQueryHelper.getSongs(this, intent.getExtras());
if (MusicPlayerRemote.getShuffleMode() == MusicService.SHUFFLE_MODE_SHUFFLE) {
@ -291,7 +292,6 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements Shared
key.equals(PreferenceUtil.USER_NAME) ||
key.equals(PreferenceUtil.TOGGLE_FULL_SCREEN) ||
key.equals(PreferenceUtil.TOGGLE_VOLUME) ||
key.equals(PreferenceUtil.TOGGLE_TAB_TITLES) ||
key.equals(PreferenceUtil.ROUND_CORNERS) ||
key.equals(PreferenceUtil.CAROUSEL_EFFECT) ||
key.equals(PreferenceUtil.NOW_PLAYING_SCREEN_ID) ||
@ -305,7 +305,10 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements Shared
key.equals(PreferenceUtil.ARTIST_GRID_STYLE) ||
key.equals(PreferenceUtil.TOGGLE_HOME_BANNER) ||
key.equals(PreferenceUtil.TOGGLE_ADD_CONTROLS) ||
key.equals(PreferenceUtil.ALBUM_COVER_STYLE)) postRecreate();
key.equals(PreferenceUtil.ALBUM_COVER_STYLE) ||
key.equals(PreferenceUtil.HOME_ARTIST_GRID_STYLE) ||
key.equals(PreferenceUtil.ALBUM_COVER_TRANSFORM) ||
key.equals(PreferenceUtil.TAB_TEXT_MODE)) postRecreate();
}
private void showPromotionalOffer() {
@ -332,42 +335,18 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements Shared
}
private void selectedFragment(int itemId) {
insideFragment = itemId;
switch (itemId) {
case R.id.action_album:
setCurrentFragment(LIBRARY);
break;
case R.id.action_artist:
setCurrentFragment(LIBRARY);
break;
case R.id.action_playlist:
setCurrentFragment(LIBRARY);
break;
case R.id.action_song:
setCurrentFragment(LIBRARY);
setCurrentFragment(LibraryFragment.newInstance(itemId), false, LibraryFragment.TAG);
break;
default:
case R.id.action_home:
setCurrentFragment(HOME);
break;
}
}
public void setCurrentFragment(int key) {
PreferenceUtil.getInstance(this).setLastMusicChooser(key);
switch (key) {
case LIBRARY:
setCurrentFragment(LibraryFragment.newInstance(insideFragment), false, LibraryFragment.TAG);
break;
case FOLDERS:
setCurrentFragment(FoldersFragment.newInstance(this), false, FoldersFragment.TAG);
break;
case HOME:
setCurrentFragment(PreferenceUtil.getInstance(this).toggleHomeBanner() ? HomeFragment.newInstance() :
BannerHomeFragment.newInstance(), false, HomeFragment.TAG);
break;
}
}
}

View File

@ -1,23 +1,25 @@
package code.name.monkey.retromusic.ui.activities;
import android.content.SharedPreferences;
import android.os.Build;
import android.os.Bundle;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
import com.google.android.material.appbar.AppBarLayout;
import androidx.transition.TransitionManager;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import androidx.appcompat.widget.Toolbar;
import android.util.Log;
import android.view.MenuItem;
import android.widget.FrameLayout;
import android.widget.TextView;
import com.afollestad.materialdialogs.color.ColorChooserDialog;
import com.google.android.material.appbar.AppBarLayout;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
import androidx.appcompat.widget.Toolbar;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import androidx.transition.TransitionManager;
import butterknife.BindView;
import butterknife.ButterKnife;
import code.name.monkey.appthemehelper.ThemeStore;
@ -28,7 +30,7 @@ import code.name.monkey.retromusic.ui.activities.base.AbsBaseActivity;
import code.name.monkey.retromusic.ui.fragments.settings.MainSettingsFragment;
import code.name.monkey.retromusic.util.PreferenceUtil;
public class SettingsActivity extends AbsBaseActivity implements ColorChooserDialog.ColorCallback {
public class SettingsActivity extends AbsBaseActivity implements ColorChooserDialog.ColorCallback, SharedPreferences.OnSharedPreferenceChangeListener {
@BindView(R.id.toolbar)
Toolbar toolbar;
@ -102,8 +104,9 @@ public class SettingsActivity extends AbsBaseActivity implements ColorChooserDia
public void setupFragment(Fragment fragment, @StringRes int titleName) {
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction()
.setCustomAnimations(R.animator.slide_up, 0, 0, R.animator.slide_down);
FragmentTransaction fragmentTransaction = fragmentManager
.beginTransaction()
.setCustomAnimations(R.anim.sliding_in_left, R.anim.sliding_out_right, android.R.anim.slide_in_left, android.R.anim.slide_out_right);
title.setText(titleName);
@ -115,8 +118,6 @@ public class SettingsActivity extends AbsBaseActivity implements ColorChooserDia
fragmentTransaction.replace(R.id.detail_content_frame, fragment, fragment.getTag());
fragmentTransaction.commit();
}
}
@ -143,4 +144,26 @@ public class SettingsActivity extends AbsBaseActivity implements ColorChooserDia
TransitionManager.beginDelayedTransition(appBarLayout);
appBarLayout.setElevation(v);
}
@Override
public void onPause() {
super.onPause();
PreferenceUtil.getInstance(this).unregisterOnSharedPreferenceChangedListener(this);
}
@Override
public void onResume() {
super.onResume();
PreferenceUtil.getInstance(this).registerOnSharedPreferenceChangedListener(this);
}
private static final String TAG = "SettingsActivity";
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
Log.i(TAG, "onSharedPreferenceChanged: ");
if (key.equals(PreferenceUtil.PROFILE_IMAGE_PATH)) {
recreate();
}
}
}

View File

@ -37,7 +37,6 @@ import code.name.monkey.retromusic.util.Compressor;
import code.name.monkey.retromusic.util.ImageUtil;
import code.name.monkey.retromusic.util.PreferenceUtil;
import code.name.monkey.retromusic.views.CircularImageView;
import code.name.monkey.retromusic.views.IconImageView;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.schedulers.Schedulers;
@ -63,12 +62,9 @@ public class UserInfoActivity extends AbsBaseActivity {
@BindView(R.id.user_image)
CircularImageView userImage;
@BindView(R.id.image)
@BindView(R.id.banner_image)
ImageView image;
@BindView(R.id.banner_select)
IconImageView imageView;
@BindView(R.id.next)
FloatingActionButton nextButton;
@ -171,11 +167,10 @@ public class UserInfoActivity extends AbsBaseActivity {
} else {
PreferenceUtil.getInstance(this).setBannerImagePath("");
image.setImageResource(android.R.color.transparent);
imageView.setImageResource(R.drawable.ic_edit_white_24dp);
}
}
@OnClick(R.id.image)
@OnClick(R.id.user_image)
public void onViewClicked() {
//noinspection ConstantConditions
new MaterialDialog.Builder(this)

View File

@ -2,9 +2,7 @@ package code.name.monkey.retromusic.ui.activities.base;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import com.google.android.gms.cast.framework.CastButtonFactory;
import com.google.android.gms.cast.framework.CastContext;
import com.google.android.gms.cast.framework.CastSession;
import com.google.android.gms.cast.framework.SessionManagerListener;
@ -13,7 +11,6 @@ import com.google.android.gms.common.GoogleApiAvailability;
import java.io.IOException;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.cast.WebServer;
public abstract class AbsCastActivity extends AbsBaseActivity {
@ -134,14 +131,14 @@ public abstract class AbsCastActivity extends AbsBaseActivity {
castSession = castContext.getSessionManager().getCurrentCastSession();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_cast, menu);
if (playServicesAvailable) {
CastButtonFactory.setUpMediaRouteButton(getApplicationContext(), menu, R.id.media_route_menu_item);
}
return true;
}
/* @Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_cast, menu);
if (playServicesAvailable) {
CastButtonFactory.setUpMediaRouteButton(getApplicationContext(), menu, R.id.media_route_menu_item);
}
return true;
}*/
public void showCastMiniController() {
//implement by overriding in activities

View File

@ -10,7 +10,6 @@ import android.view.animation.PathInterpolator;
import com.google.android.gms.cast.framework.CastSession;
import com.google.android.material.bottomnavigation.BottomNavigationView;
import com.google.android.material.bottomnavigation.LabelVisibilityMode;
import com.sothree.slidinguppanel.SlidingUpPanelLayout;
import com.sothree.slidinguppanel.SlidingUpPanelLayout.PanelState;
@ -167,7 +166,6 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
postRecreate();
}
}
@Override
public void onDestroy() {
super.onDestroy();
@ -445,10 +443,7 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
int accentColor = ThemeStore.accentColor(this);
NavigationViewUtil.setItemIconColors(bottomNavigationView, ColorUtil.withAlpha(iconColor, 0.5f), accentColor);
NavigationViewUtil.setItemTextColors(bottomNavigationView, ColorUtil.withAlpha(iconColor, 0.5f), accentColor);
if (!PreferenceUtil.getInstance(this).tabTitles()) {
bottomNavigationView.setLabelVisibilityMode(LabelVisibilityMode.LABEL_VISIBILITY_UNLABELED);
}
bottomNavigationView.setLabelVisibilityMode(PreferenceUtil.getInstance(this).getTabTitleMode());
}
@Override
@ -473,4 +468,6 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
public BottomNavigationView getBottomNavigationView() {
return bottomNavigationView;
}
}
}

View File

@ -5,6 +5,9 @@ import android.annotation.SuppressLint;
import android.content.Context;
import android.content.res.ColorStateList;
import android.os.Bundle;
import android.text.SpannableString;
import android.text.SpannableStringBuilder;
import android.text.style.ForegroundColorSpan;
import android.view.GestureDetector;
import android.view.LayoutInflater;
import android.view.MotionEvent;
@ -21,11 +24,14 @@ import butterknife.ButterKnife;
import butterknife.OnClick;
import butterknife.Unbinder;
import code.name.monkey.appthemehelper.ThemeStore;
import code.name.monkey.appthemehelper.util.ColorUtil;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.helper.MusicPlayerRemote;
import code.name.monkey.retromusic.helper.MusicProgressViewUpdateHelper;
import code.name.monkey.retromusic.helper.PlayPauseButtonOnClickHandler;
import code.name.monkey.retromusic.model.Song;
import code.name.monkey.retromusic.ui.fragments.base.AbsMusicServiceFragment;
import code.name.monkey.retromusic.util.NavigationUtil;
import code.name.monkey.retromusic.util.PreferenceUtil;
import code.name.monkey.retromusic.util.RetroUtil;
import me.zhanghai.android.materialprogressbar.MaterialProgressBar;
@ -44,6 +50,9 @@ public class MiniPlayerFragment extends AbsMusicServiceFragment implements Music
@BindView(R.id.action_prev)
View previous;
@BindView(R.id.action_playing_queue)
View playingQueue;
@BindView(R.id.progress_bar)
MaterialProgressBar progressBar;
@ -68,17 +77,18 @@ public class MiniPlayerFragment extends AbsMusicServiceFragment implements Music
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
//noinspection ConstantConditions
view.setBackgroundColor(ThemeStore.primaryColor(getContext()));
view.setBackgroundColor(ColorUtil.darkenColor(ThemeStore.primaryColor(getContext())));
view.setOnTouchListener(new FlingPlayBackController(getActivity()));
setUpMiniPlayer();
if (RetroUtil.isTablet(getResources())) {
next.setVisibility(View.VISIBLE);
previous.setVisibility(View.VISIBLE);
playingQueue.setVisibility(View.VISIBLE);
} else {
next.setVisibility(PreferenceUtil.getInstance(getContext()).isExtraMiniExtraControls() ? View.VISIBLE : View.GONE);
playingQueue.setVisibility(PreferenceUtil.getInstance(getContext()).isExtraMiniExtraControls() ? View.GONE : View.VISIBLE);
previous.setVisibility(PreferenceUtil.getInstance(getContext()).isExtraMiniExtraControls() ? View.VISIBLE : View.GONE);
}
}
@ -101,7 +111,22 @@ public class MiniPlayerFragment extends AbsMusicServiceFragment implements Music
}
private void updateSongTitle() {
miniPlayerTitle.setText(MusicPlayerRemote.getCurrentSong().title);
SpannableStringBuilder builder = new SpannableStringBuilder();
Song song = MusicPlayerRemote.getCurrentSong();
if (song == null) {
return;
}
SpannableString title = new SpannableString(song.title);
title.setSpan(new ForegroundColorSpan(ThemeStore.textColorPrimary(getContext())), 0, title.length(), 0);
SpannableString text = new SpannableString(song.artistName);
text.setSpan(new ForegroundColorSpan(ThemeStore.textColorSecondary(getContext())), 0, text.length(), 0);
builder.append(title).append(" • ").append(text);
miniPlayerTitle.setSelected(true);
miniPlayerTitle.setText(builder);
}
@Override
@ -154,9 +179,12 @@ public class MiniPlayerFragment extends AbsMusicServiceFragment implements Music
getView().setBackgroundColor(playerFragmentColor);
}
@OnClick({R.id.action_prev, R.id.action_next})
@OnClick({R.id.action_prev, R.id.action_playing_queue, R.id.action_next})
void onClicks(View view) {
switch (view.getId()) {
case R.id.action_playing_queue:
NavigationUtil.goToPlayingQueue(getActivity());
break;
case R.id.action_next:
MusicPlayerRemote.playNextSong();
break;

View File

@ -4,17 +4,18 @@ import android.content.Context;
import android.content.res.ColorStateList;
import android.graphics.Color;
import android.graphics.PorterDuff;
import android.graphics.drawable.ColorDrawable;
import android.media.AudioManager;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.SeekBar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
@ -155,4 +156,8 @@ public class VolumeFragment extends Fragment implements SeekBar.OnSeekBarChangeL
public void setTintable(int color) {
setProgressBarColor(color);
}
public void removeThumb() {
volumeSeekbar.setThumb(null);
}
}

View File

@ -21,11 +21,12 @@ public abstract class AbsMainActivityFragment extends AbsMusicServiceFragment {
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
setHasOptionsMenu(true);
//getMainActivity().setStatusbarColorAuto();
getMainActivity().setNavigationbarColorAuto();
getMainActivity().setLightNavigationBar(true);
getMainActivity().setTaskDescriptionColorAuto();
getMainActivity().hideStatusBar();
getMainActivity().setBottomBarVisibility(View.VISIBLE);
}

Some files were not shown because too many files have changed in this diff Show More