Merge remote-tracking branch 'upstream/develop' into layout-improvements
This commit is contained in:
commit
68a0373d9f
@ -1,6 +1,13 @@
|
|||||||
Change Log
|
Change Log
|
||||||
==========
|
==========
|
||||||
|
|
||||||
|
Version 1.6.4
|
||||||
|
-------------
|
||||||
|
|
||||||
|
* Fixes issues on Android Oreo
|
||||||
|
* Avoids duplicate chapters
|
||||||
|
* Beta: Database import & export
|
||||||
|
|
||||||
Version 1.6.3
|
Version 1.6.3
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
import org.apache.tools.ant.filters.ReplaceTokens
|
import org.apache.tools.ant.filters.ReplaceTokens
|
||||||
|
|
||||||
apply plugin: "com.android.application"
|
apply plugin: "com.android.application"
|
||||||
apply plugin: "me.tatarka.retrolambda"
|
|
||||||
apply plugin: 'com.github.triplet.play'
|
apply plugin: 'com.github.triplet.play'
|
||||||
apply plugin: 'com.getkeepsafe.dexcount'
|
apply plugin: 'com.getkeepsafe.dexcount'
|
||||||
|
|
||||||
@ -113,10 +112,13 @@ android {
|
|||||||
additionalParameters "--no-version-vectors"
|
additionalParameters "--no-version-vectors"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
flavorDimensions "market"
|
||||||
productFlavors {
|
productFlavors {
|
||||||
free {
|
free {
|
||||||
|
dimension "market"
|
||||||
}
|
}
|
||||||
play {
|
play {
|
||||||
|
dimension "market"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -126,58 +128,58 @@ android {
|
|||||||
}
|
}
|
||||||
|
|
||||||
configurations {
|
configurations {
|
||||||
freeDebugCompile
|
freeDebugImplementation
|
||||||
freeReleaseCompile
|
freeReleaseImplementation
|
||||||
playDebugCompile
|
playDebugImplementation
|
||||||
playReleaseCompile
|
playReleaseImplementation
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
freeDebugCompile project(path: ":core", configuration: "freeDebug")
|
freeImplementation project(":core")
|
||||||
freeReleaseCompile project(path: ":core", configuration: "freeRelease")
|
|
||||||
// free build hack: skip some dependencies
|
// free build hack: skip some dependencies
|
||||||
if (!doFreeBuild()) {
|
if (!doFreeBuild()) {
|
||||||
playDebugCompile project(path: ":core", configuration: "playDebug")
|
playImplementation project(":core")
|
||||||
playReleaseCompile project(path: ":core", configuration: "playRelease")
|
|
||||||
} else {
|
} else {
|
||||||
System.out.println("app: free build hack, skipping some dependencies")
|
System.out.println("app: free build hack, skipping some dependencies")
|
||||||
}
|
}
|
||||||
compile "com.android.support:support-v4:$supportVersion"
|
implementation "com.android.support:support-v4:$supportVersion"
|
||||||
compile "com.android.support:appcompat-v7:$supportVersion"
|
implementation "com.android.support:appcompat-v7:$supportVersion"
|
||||||
compile "com.android.support:design:$supportVersion"
|
implementation "com.android.support:design:$supportVersion"
|
||||||
compile "com.android.support:gridlayout-v7:$supportVersion"
|
implementation "com.android.support:gridlayout-v7:$supportVersion"
|
||||||
compile "com.android.support:percent:$supportVersion"
|
implementation "com.android.support:percent:$supportVersion"
|
||||||
compile "com.android.support:recyclerview-v7:$supportVersion"
|
implementation "com.android.support:recyclerview-v7:$supportVersion"
|
||||||
compile "org.apache.commons:commons-lang3:$commonslangVersion"
|
implementation "org.apache.commons:commons-lang3:$commonslangVersion"
|
||||||
compile("org.shredzone.flattr4j:flattr4j-core:$flattr4jVersion") {
|
implementation("org.shredzone.flattr4j:flattr4j-core:$flattr4jVersion") {
|
||||||
exclude group: "org.json", module: "json"
|
exclude group: "org.json", module: "json"
|
||||||
}
|
}
|
||||||
compile "commons-io:commons-io:$commonsioVersion"
|
implementation "commons-io:commons-io:$commonsioVersion"
|
||||||
compile "org.jsoup:jsoup:$jsoupVersion"
|
implementation "org.jsoup:jsoup:$jsoupVersion"
|
||||||
compile "com.github.bumptech.glide:glide:$glideVersion"
|
implementation "com.github.bumptech.glide:glide:$glideVersion"
|
||||||
compile "com.squareup.okhttp3:okhttp:$okhttpVersion"
|
implementation "com.squareup.okhttp3:okhttp:$okhttpVersion"
|
||||||
compile "com.squareup.okhttp3:okhttp-urlconnection:$okhttpVersion"
|
implementation "com.squareup.okhttp3:okhttp-urlconnection:$okhttpVersion"
|
||||||
compile "com.squareup.okio:okio:$okioVersion"
|
implementation "com.squareup.okio:okio:$okioVersion"
|
||||||
compile "de.greenrobot:eventbus:$eventbusVersion"
|
implementation "de.greenrobot:eventbus:$eventbusVersion"
|
||||||
compile "io.reactivex:rxandroid:$rxAndroidVersion"
|
implementation "io.reactivex:rxandroid:$rxAndroidVersion"
|
||||||
compile "io.reactivex:rxjava:$rxJavaVersion"
|
implementation "io.reactivex:rxjava:$rxJavaVersion"
|
||||||
// And ProGuard rules for RxJava!
|
// And ProGuard rules for RxJava!
|
||||||
compile "com.artemzin.rxjava:proguard-rules:$rxJavaRulesVersion"
|
implementation "com.artemzin.rxjava:proguard-rules:$rxJavaRulesVersion"
|
||||||
compile "com.joanzapata.iconify:android-iconify-fontawesome:$iconifyVersion"
|
implementation "com.joanzapata.iconify:android-iconify-fontawesome:$iconifyVersion"
|
||||||
compile "com.joanzapata.iconify:android-iconify-material:$iconifyVersion"
|
implementation "com.joanzapata.iconify:android-iconify-material:$iconifyVersion"
|
||||||
compile("com.afollestad.material-dialogs:commons:$materialDialogsVersion") {
|
implementation("com.afollestad.material-dialogs:commons:$materialDialogsVersion") {
|
||||||
transitive = true
|
transitive = true
|
||||||
}
|
}
|
||||||
compile "com.yqritc:recyclerview-flexibledivider:$recyclerviewFlexibledividerVersion"
|
implementation "com.yqritc:recyclerview-flexibledivider:$recyclerviewFlexibledividerVersion"
|
||||||
compile("com.githang:viewpagerindicator:2.5@aar") {
|
implementation("com.githang:viewpagerindicator:2.5@aar") {
|
||||||
exclude module: "support-v4"
|
exclude module: "support-v4"
|
||||||
}
|
}
|
||||||
|
|
||||||
compile "com.github.shts:TriangleLabelView:$triangleLabelViewVersion"
|
implementation "com.github.shts:TriangleLabelView:$triangleLabelViewVersion"
|
||||||
|
|
||||||
compile "com.github.AntennaPod:AntennaPod-AudioPlayer:$audioPlayerVersion"
|
implementation "com.github.AntennaPod:AntennaPod-AudioPlayer:$audioPlayerVersion"
|
||||||
|
|
||||||
compile 'com.github.mfietz:fyydlin:v0.3'
|
implementation 'com.github.mfietz:fyydlin:v0.3'
|
||||||
|
|
||||||
|
androidTestImplementation "com.jayway.android.robotium:robotium-solo:$robotiumSoloVersion"
|
||||||
}
|
}
|
||||||
|
|
||||||
play {
|
play {
|
||||||
|
@ -388,17 +388,29 @@ public class QueueFragment extends Fragment {
|
|||||||
itemTouchHelper = new ItemTouchHelper(
|
itemTouchHelper = new ItemTouchHelper(
|
||||||
new ItemTouchHelper.SimpleCallback(ItemTouchHelper.UP | ItemTouchHelper.DOWN, ItemTouchHelper.RIGHT) {
|
new ItemTouchHelper.SimpleCallback(ItemTouchHelper.UP | ItemTouchHelper.DOWN, ItemTouchHelper.RIGHT) {
|
||||||
|
|
||||||
|
// Position tracking whilst dragging
|
||||||
|
int dragFrom = -1;
|
||||||
|
int dragTo = -1;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
|
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
|
||||||
|
int fromPosition = viewHolder.getAdapterPosition();
|
||||||
|
int toPosition = target.getAdapterPosition();
|
||||||
|
|
||||||
|
// Update tracked position
|
||||||
|
if(dragFrom == -1) {
|
||||||
|
dragFrom = fromPosition;
|
||||||
|
}
|
||||||
|
dragTo = toPosition;
|
||||||
|
|
||||||
int from = viewHolder.getAdapterPosition();
|
int from = viewHolder.getAdapterPosition();
|
||||||
int to = target.getAdapterPosition();
|
int to = target.getAdapterPosition();
|
||||||
Log.d(TAG, "move(" + from + ", " + to + ")");
|
Log.d(TAG, "move(" + from + ", " + to + ") in memory");
|
||||||
if(from >= queue.size() || to >= queue.size()) {
|
if(from >= queue.size() || to >= queue.size()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
queue.add(to, queue.remove(from));
|
queue.add(to, queue.remove(from));
|
||||||
recyclerAdapter.notifyItemMoved(from, to);
|
recyclerAdapter.notifyItemMoved(from, to);
|
||||||
DBWriter.moveQueueItem(from, to, true);
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -452,12 +464,25 @@ public class QueueFragment extends Fragment {
|
|||||||
RecyclerView.ViewHolder viewHolder) {
|
RecyclerView.ViewHolder viewHolder) {
|
||||||
super.clearView(recyclerView, viewHolder);
|
super.clearView(recyclerView, viewHolder);
|
||||||
|
|
||||||
|
// Check if drag finished
|
||||||
|
if(dragFrom != -1 && dragTo != -1 && dragFrom != dragTo) {
|
||||||
|
reallyMoved(dragFrom, dragTo);
|
||||||
|
}
|
||||||
|
|
||||||
|
dragFrom = dragTo = -1;
|
||||||
|
|
||||||
if (viewHolder instanceof QueueRecyclerAdapter.ItemTouchHelperViewHolder) {
|
if (viewHolder instanceof QueueRecyclerAdapter.ItemTouchHelperViewHolder) {
|
||||||
QueueRecyclerAdapter.ItemTouchHelperViewHolder itemViewHolder =
|
QueueRecyclerAdapter.ItemTouchHelperViewHolder itemViewHolder =
|
||||||
(QueueRecyclerAdapter.ItemTouchHelperViewHolder) viewHolder;
|
(QueueRecyclerAdapter.ItemTouchHelperViewHolder) viewHolder;
|
||||||
itemViewHolder.onItemClear();
|
itemViewHolder.onItemClear();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void reallyMoved(int from, int to) {
|
||||||
|
// Write drag operation to database
|
||||||
|
Log.d(TAG, "Write to database move(" + dragFrom + ", " + dragTo + ")");
|
||||||
|
DBWriter.moveQueueItem(dragFrom, dragTo, true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
itemTouchHelper.attachToRecyclerView(recyclerView);
|
itemTouchHelper.attachToRecyclerView(recyclerView);
|
||||||
|
@ -764,6 +764,10 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static String blankIfNull(String val) {
|
||||||
|
return val == null ? "" : val;
|
||||||
|
}
|
||||||
|
|
||||||
private void buildAutodownloadSelectedNetworsPreference() {
|
private void buildAutodownloadSelectedNetworsPreference() {
|
||||||
final Activity activity = ui.getActivity();
|
final Activity activity = ui.getActivity();
|
||||||
|
|
||||||
@ -778,7 +782,8 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
|
|||||||
Log.e(TAG, "Couldn't get list of configure Wi-Fi networks");
|
Log.e(TAG, "Couldn't get list of configure Wi-Fi networks");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Collections.sort(networks, (x, y) -> x.SSID.compareTo(y.SSID));
|
Collections.sort(networks, (x, y) ->
|
||||||
|
blankIfNull(x.SSID).compareTo(blankIfNull(y.SSID)));
|
||||||
selectedNetworks = new CheckBoxPreference[networks.size()];
|
selectedNetworks = new CheckBoxPreference[networks.size()];
|
||||||
List<String> prefValues = Arrays.asList(UserPreferences
|
List<String> prefValues = Arrays.asList(UserPreferences
|
||||||
.getAutodownloadSelectedNetworks());
|
.getAutodownloadSelectedNetworks());
|
||||||
|
10
build.gradle
10
build.gradle
@ -4,12 +4,11 @@ buildscript {
|
|||||||
repositories {
|
repositories {
|
||||||
jcenter()
|
jcenter()
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
|
google()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath "com.android.tools.build:gradle:2.3.3"
|
classpath "com.android.tools.build:gradle:3.0.1"
|
||||||
classpath "me.tatarka:gradle-retrolambda:3.7.0"
|
classpath "com.github.triplet.gradle:play-publisher:1.2.0"
|
||||||
classpath "me.tatarka.retrolambda.projectlombok:lombok.ast:0.2.3.a2"
|
|
||||||
classpath "com.github.triplet.gradle:play-publisher:1.1.4"
|
|
||||||
// Exclude the version that the android plugin depends on.
|
// Exclude the version that the android plugin depends on.
|
||||||
configurations.classpath.exclude group: "com.android.tools.external.lombok"
|
configurations.classpath.exclude group: "com.android.tools.external.lombok"
|
||||||
}
|
}
|
||||||
@ -18,6 +17,7 @@ buildscript {
|
|||||||
allprojects {
|
allprojects {
|
||||||
repositories {
|
repositories {
|
||||||
jcenter()
|
jcenter()
|
||||||
|
google()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ subprojects {
|
|||||||
|
|
||||||
project.ext {
|
project.ext {
|
||||||
compileSdkVersion = 25
|
compileSdkVersion = 25
|
||||||
buildToolsVersion = "25.0.3"
|
buildToolsVersion = "27.0.3"
|
||||||
minSdkVersion = 14
|
minSdkVersion = 14
|
||||||
targetSdkVersion = 25
|
targetSdkVersion = 25
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@ general:
|
|||||||
- app/build/outputs/apk
|
- app/build/outputs/apk
|
||||||
machine:
|
machine:
|
||||||
environment:
|
environment:
|
||||||
GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx2048m -XX:+HeapDumpOnOutOfMemoryError"'
|
GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx1536m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError"'
|
||||||
|
_JAVA_OPTIONS: "-Xms256m -Xmx1280m -XX:MaxPermSize=350m"
|
||||||
java:
|
java:
|
||||||
version: oraclejdk8
|
version: oraclejdk8
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -12,11 +13,11 @@ dependencies:
|
|||||||
- ~/android
|
- ~/android
|
||||||
pre:
|
pre:
|
||||||
- echo y | android update sdk --no-ui --all --filter "tool,extra-android-m2repository,extra-android-support,extra-google-google_play_services,extra-google-m2repository,android-25"
|
- echo y | android update sdk --no-ui --all --filter "tool,extra-android-m2repository,extra-android-support,extra-google-google_play_services,extra-google-m2repository,android-25"
|
||||||
- echo y | android update sdk --no-ui --all --filter "build-tools-25.0.3"
|
- echo y | android update sdk --no-ui --all --filter "build-tools-27.0.3"
|
||||||
override:
|
override:
|
||||||
- echo override dependencies
|
- echo override dependencies
|
||||||
|
|
||||||
test:
|
test:
|
||||||
override:
|
override:
|
||||||
- ./gradlew assembleDebug -PdisablePreDex:
|
- ./gradlew assembleDebug -PdisablePreDex:
|
||||||
timeout: 1800
|
timeout: 1800
|
@ -1,5 +1,4 @@
|
|||||||
apply plugin: "com.android.library"
|
apply plugin: "com.android.library"
|
||||||
apply plugin: "me.tatarka.retrolambda"
|
|
||||||
|
|
||||||
android {
|
android {
|
||||||
compileSdkVersion rootProject.ext.compileSdkVersion
|
compileSdkVersion rootProject.ext.compileSdkVersion
|
||||||
@ -30,11 +29,13 @@ android {
|
|||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility JavaVersion.VERSION_1_8
|
||||||
}
|
}
|
||||||
|
|
||||||
publishNonDefault true
|
flavorDimensions "market"
|
||||||
productFlavors {
|
productFlavors {
|
||||||
free {
|
free {
|
||||||
|
dimension "market"
|
||||||
}
|
}
|
||||||
play {
|
play {
|
||||||
|
dimension "market"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -46,32 +47,32 @@ repositories {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
compile "com.android.support:support-v4:$supportVersion"
|
implementation "com.android.support:support-v4:$supportVersion"
|
||||||
compile "com.android.support:appcompat-v7:$supportVersion"
|
implementation "com.android.support:appcompat-v7:$supportVersion"
|
||||||
compile "org.apache.commons:commons-lang3:$commonslangVersion"
|
implementation "org.apache.commons:commons-lang3:$commonslangVersion"
|
||||||
compile ("org.shredzone.flattr4j:flattr4j-core:$flattr4jVersion") {
|
implementation ("org.shredzone.flattr4j:flattr4j-core:$flattr4jVersion") {
|
||||||
exclude group: "org.json", module: "json"
|
exclude group: "org.json", module: "json"
|
||||||
}
|
}
|
||||||
compile "commons-io:commons-io:$commonsioVersion"
|
implementation "commons-io:commons-io:$commonsioVersion"
|
||||||
compile "com.jayway.android.robotium:robotium-solo:$robotiumSoloVersion"
|
implementation "com.jayway.android.robotium:robotium-solo:$robotiumSoloVersion"
|
||||||
compile "org.jsoup:jsoup:$jsoupVersion"
|
implementation "org.jsoup:jsoup:$jsoupVersion"
|
||||||
compile "com.github.bumptech.glide:glide:$glideVersion"
|
implementation "com.github.bumptech.glide:glide:$glideVersion"
|
||||||
compile "com.github.bumptech.glide:okhttp3-integration:$glideOkhttpIntegrationVersion@aar"
|
implementation "com.github.bumptech.glide:okhttp3-integration:$glideOkhttpIntegrationVersion@aar"
|
||||||
compile "com.squareup.okhttp3:okhttp:$okhttpVersion"
|
implementation "com.squareup.okhttp3:okhttp:$okhttpVersion"
|
||||||
compile "com.squareup.okhttp3:okhttp-urlconnection:$okhttpVersion"
|
implementation "com.squareup.okhttp3:okhttp-urlconnection:$okhttpVersion"
|
||||||
compile "com.squareup.okio:okio:$okioVersion"
|
implementation "com.squareup.okio:okio:$okioVersion"
|
||||||
compile "de.greenrobot:eventbus:$eventbusVersion"
|
implementation "de.greenrobot:eventbus:$eventbusVersion"
|
||||||
compile "io.reactivex:rxandroid:$rxAndroidVersion"
|
implementation "io.reactivex:rxandroid:$rxAndroidVersion"
|
||||||
|
|
||||||
compile "com.github.AntennaPod:AntennaPod-AudioPlayer:$audioPlayerVersion"
|
implementation "com.github.AntennaPod:AntennaPod-AudioPlayer:$audioPlayerVersion"
|
||||||
|
|
||||||
// Add casting features
|
// Add casting features
|
||||||
// free build hack: skip some dependencies
|
// free build hack: skip some dependencies
|
||||||
if (!doFreeBuild()) {
|
if (!doFreeBuild()) {
|
||||||
playCompile "com.google.android.libraries.cast.companionlibrary:ccl:$castCompanionLibVer"
|
playApi "com.google.android.libraries.cast.companionlibrary:ccl:$castCompanionLibVer"
|
||||||
compile "com.android.support:mediarouter-v7:$supportVersion"
|
api "com.android.support:mediarouter-v7:$supportVersion"
|
||||||
playCompile "com.google.android.gms:play-services-cast:$playServicesVersion"
|
playApi "com.google.android.gms:play-services-cast:$playServicesVersion"
|
||||||
compile "com.google.android.support:wearable:$wearableSupportVersion"
|
api "com.google.android.support:wearable:$wearableSupportVersion"
|
||||||
} else {
|
} else {
|
||||||
System.out.println("core: free build hack, skipping some dependencies")
|
System.out.println("core: free build hack, skipping some dependencies")
|
||||||
}
|
}
|
||||||
|
@ -305,8 +305,10 @@ public class Feed extends FeedFile implements FlattrThing, ImageResource {
|
|||||||
if (super.compareWithOther(other)) {
|
if (super.compareWithOther(other)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if(other.image != null && !TextUtils.equals(image.download_url, other.image.download_url)) {
|
if (other.image != null) {
|
||||||
return true;
|
if (image == null || !TextUtils.equals(image.download_url, other.image.download_url)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (!TextUtils.equals(feedTitle, other.feedTitle)) {
|
if (!TextUtils.equals(feedTitle, other.feedTitle)) {
|
||||||
return true;
|
return true;
|
||||||
|
@ -339,12 +339,9 @@ public class DownloadService extends Service {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void setupNotificationBuilders() {
|
private void setupNotificationBuilders() {
|
||||||
Bitmap icon = BitmapFactory.decodeResource(getResources(), R.drawable.stat_notify_sync);
|
|
||||||
|
|
||||||
notificationCompatBuilder = new NotificationCompat.Builder(this)
|
notificationCompatBuilder = new NotificationCompat.Builder(this)
|
||||||
.setOngoing(true)
|
.setOngoing(true)
|
||||||
.setContentIntent(ClientConfig.downloadServiceCallbacks.getNotificationContentIntent(this))
|
.setContentIntent(ClientConfig.downloadServiceCallbacks.getNotificationContentIntent(this))
|
||||||
.setLargeIcon(icon)
|
|
||||||
.setSmallIcon(R.drawable.stat_notify_sync);
|
.setSmallIcon(R.drawable.stat_notify_sync);
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||||
notificationCompatBuilder.setVisibility(Notification.VISIBILITY_PUBLIC);
|
notificationCompatBuilder.setVisibility(Notification.VISIBILITY_PUBLIC);
|
||||||
@ -511,10 +508,6 @@ public class DownloadService extends Service {
|
|||||||
successfulDownloads, failedDownloads)
|
successfulDownloads, failedDownloads)
|
||||||
)
|
)
|
||||||
.setSmallIcon(R.drawable.stat_notify_sync_error)
|
.setSmallIcon(R.drawable.stat_notify_sync_error)
|
||||||
.setLargeIcon(
|
|
||||||
BitmapFactory.decodeResource(getResources(),
|
|
||||||
R.drawable.stat_notify_sync_error)
|
|
||||||
)
|
|
||||||
.setContentIntent(
|
.setContentIntent(
|
||||||
ClientConfig.downloadServiceCallbacks.getReportNotificationContentIntent(this)
|
ClientConfig.downloadServiceCallbacks.getReportNotificationContentIntent(this)
|
||||||
)
|
)
|
||||||
@ -565,7 +558,6 @@ public class DownloadService extends Service {
|
|||||||
.setStyle(new NotificationCompat.BigTextStyle().bigText(getText(R.string.authentication_notification_msg)
|
.setStyle(new NotificationCompat.BigTextStyle().bigText(getText(R.string.authentication_notification_msg)
|
||||||
+ ": " + resourceTitle))
|
+ ": " + resourceTitle))
|
||||||
.setSmallIcon(R.drawable.ic_stat_authentication)
|
.setSmallIcon(R.drawable.ic_stat_authentication)
|
||||||
.setLargeIcon(BitmapFactory.decodeResource(getResources(), R.drawable.ic_stat_authentication))
|
|
||||||
.setAutoCancel(true)
|
.setAutoCancel(true)
|
||||||
.setContentIntent(ClientConfig.downloadServiceCallbacks.getAuthentificationNotificationContentIntent(DownloadService.this, downloadRequest));
|
.setContentIntent(ClientConfig.downloadServiceCallbacks.getAuthentificationNotificationContentIntent(DownloadService.this, downloadRequest));
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||||
|
@ -11,6 +11,7 @@ import android.view.SurfaceHolder;
|
|||||||
|
|
||||||
import org.antennapod.audio.MediaPlayer;
|
import org.antennapod.audio.MediaPlayer;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.concurrent.CountDownLatch;
|
import java.util.concurrent.CountDownLatch;
|
||||||
import java.util.concurrent.Future;
|
import java.util.concurrent.Future;
|
||||||
@ -165,8 +166,10 @@ public class LocalPSMP extends PlaybackServiceMediaPlayer {
|
|||||||
callback.onMediaChanged(false);
|
callback.onMediaChanged(false);
|
||||||
if (stream) {
|
if (stream) {
|
||||||
mediaPlayer.setDataSource(media.getStreamUrl());
|
mediaPlayer.setDataSource(media.getStreamUrl());
|
||||||
} else {
|
} else if (new File(media.getLocalMediaUrl()).canRead()) {
|
||||||
mediaPlayer.setDataSource(media.getLocalMediaUrl());
|
mediaPlayer.setDataSource(media.getLocalMediaUrl());
|
||||||
|
} else {
|
||||||
|
throw new IOException("Unable to read local file " + media.getLocalMediaUrl());
|
||||||
}
|
}
|
||||||
setPlayerStatus(PlayerStatus.INITIALIZED, media);
|
setPlayerStatus(PlayerStatus.INITIALIZED, media);
|
||||||
|
|
||||||
|
@ -3,7 +3,9 @@ package de.danoeh.antennapod.core.storage;
|
|||||||
import android.content.ContentValues;
|
import android.content.ContentValues;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.database.Cursor;
|
import android.database.Cursor;
|
||||||
|
import android.database.DatabaseErrorHandler;
|
||||||
import android.database.DatabaseUtils;
|
import android.database.DatabaseUtils;
|
||||||
|
import android.database.DefaultDatabaseErrorHandler;
|
||||||
import android.database.MergeCursor;
|
import android.database.MergeCursor;
|
||||||
import android.database.SQLException;
|
import android.database.SQLException;
|
||||||
import android.database.sqlite.SQLiteDatabase;
|
import android.database.sqlite.SQLiteDatabase;
|
||||||
@ -13,13 +15,12 @@ import android.media.MediaMetadataRetriever;
|
|||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.concurrent.atomic.AtomicInteger;
|
|
||||||
import java.util.concurrent.locks.Lock;
|
|
||||||
import java.util.concurrent.locks.ReentrantLock;
|
|
||||||
|
|
||||||
import de.danoeh.antennapod.core.R;
|
import de.danoeh.antennapod.core.R;
|
||||||
import de.danoeh.antennapod.core.event.ProgressEvent;
|
import de.danoeh.antennapod.core.event.ProgressEvent;
|
||||||
@ -35,6 +36,7 @@ import de.danoeh.antennapod.core.service.download.DownloadStatus;
|
|||||||
import de.danoeh.antennapod.core.util.LongIntMap;
|
import de.danoeh.antennapod.core.util.LongIntMap;
|
||||||
import de.danoeh.antennapod.core.util.flattr.FlattrStatus;
|
import de.danoeh.antennapod.core.util.flattr.FlattrStatus;
|
||||||
import de.greenrobot.event.EventBus;
|
import de.greenrobot.event.EventBus;
|
||||||
|
import org.apache.commons.io.FileUtils;
|
||||||
|
|
||||||
// TODO Remove media column from feeditem table
|
// TODO Remove media column from feeditem table
|
||||||
|
|
||||||
@ -1643,6 +1645,28 @@ public class PodDBAdapter {
|
|||||||
return db.rawQuery(FEED_STATISTICS_QUERY, null);
|
return db.rawQuery(FEED_STATISTICS_QUERY, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Called when a database corruption happens
|
||||||
|
*/
|
||||||
|
public static class PodDbErrorHandler implements DatabaseErrorHandler {
|
||||||
|
@Override
|
||||||
|
public void onCorruption(SQLiteDatabase db) {
|
||||||
|
Log.e(TAG, "Database corrupted: " + db.getPath());
|
||||||
|
|
||||||
|
File dbPath = new File(db.getPath());
|
||||||
|
File backupFolder = PodDBAdapter.context.getExternalFilesDir(null);
|
||||||
|
File backupFile = new File(backupFolder, "CorruptedDatabaseBackup.db");
|
||||||
|
try {
|
||||||
|
FileUtils.copyFile(dbPath, backupFile);
|
||||||
|
Log.d(TAG, "Dumped database to " + backupFile.getPath());
|
||||||
|
} catch (IOException e) {
|
||||||
|
Log.d(TAG, Log.getStackTraceString(e));
|
||||||
|
}
|
||||||
|
|
||||||
|
new DefaultDatabaseErrorHandler().onCorruption(db); // This deletes the database
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Helper class for opening the Antennapod database.
|
* Helper class for opening the Antennapod database.
|
||||||
*/
|
*/
|
||||||
@ -1661,7 +1685,7 @@ public class PodDBAdapter {
|
|||||||
*/
|
*/
|
||||||
public PodDBHelper(final Context context, final String name,
|
public PodDBHelper(final Context context, final String name,
|
||||||
final CursorFactory factory) {
|
final CursorFactory factory) {
|
||||||
super(context, name, factory, VERSION);
|
super(context, name, factory, VERSION, new PodDbErrorHandler());
|
||||||
this.context = context;
|
this.context = context;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,57 +11,57 @@
|
|||||||
<item name="progressBarTheme">@style/ProgressBarLight</item>
|
<item name="progressBarTheme">@style/ProgressBarLight</item>
|
||||||
<item name="buttonStyle">@style/Widget.AntennaPod.Button</item>
|
<item name="buttonStyle">@style/Widget.AntennaPod.Button</item>
|
||||||
<item name="alertDialogTheme">@style/AntennaPod.Dialog.Light</item>
|
<item name="alertDialogTheme">@style/AntennaPod.Dialog.Light</item>
|
||||||
<item name="attr/action_bar_icon_color">@color/grey600</item>
|
<item type="attr" name="action_bar_icon_color">@color/grey600</item>
|
||||||
<item name="attr/action_about">@drawable/ic_info_grey600_24dp</item>
|
<item type="attr" name="action_about">@drawable/ic_info_grey600_24dp</item>
|
||||||
<item name="attr/action_search">@drawable/ic_search_grey600_24dp</item>
|
<item type="attr" name="action_search">@drawable/ic_search_grey600_24dp</item>
|
||||||
<item name="attr/action_stream">@drawable/ic_settings_input_antenna_grey600_24dp</item>
|
<item type="attr" name="action_stream">@drawable/ic_settings_input_antenna_grey600_24dp</item>
|
||||||
<item name="attr/av_download">@drawable/ic_file_download_grey600_24dp</item>
|
<item type="attr" name="av_download">@drawable/ic_file_download_grey600_24dp</item>
|
||||||
<item name="attr/av_fast_forward">@drawable/ic_fast_forward_grey600_24dp</item>
|
<item type="attr" name="av_fast_forward">@drawable/ic_fast_forward_grey600_24dp</item>
|
||||||
<item name="attr/av_pause">@drawable/ic_pause_grey600_24dp</item>
|
<item type="attr" name="av_pause">@drawable/ic_pause_grey600_24dp</item>
|
||||||
<item name="attr/av_play">@drawable/ic_play_arrow_grey600_24dp</item>
|
<item type="attr" name="av_play">@drawable/ic_play_arrow_grey600_24dp</item>
|
||||||
<item name="attr/av_rewind">@drawable/ic_fast_rewind_grey600_24dp</item>
|
<item type="attr" name="av_rewind">@drawable/ic_fast_rewind_grey600_24dp</item>
|
||||||
<item name="attr/content_discard">@drawable/ic_delete_grey600_24dp</item>
|
<item type="attr" name="content_discard">@drawable/ic_delete_grey600_24dp</item>
|
||||||
<item name="attr/content_new">@drawable/ic_add_grey600_24dp</item>
|
<item type="attr" name="content_new">@drawable/ic_add_grey600_24dp</item>
|
||||||
<item name="attr/feed">@drawable/ic_feed_grey600_24dp</item>
|
<item type="attr" name="feed">@drawable/ic_feed_grey600_24dp</item>
|
||||||
<item name="attr/location_web_site">@drawable/ic_web_grey600_24dp</item>
|
<item type="attr" name="location_web_site">@drawable/ic_web_grey600_24dp</item>
|
||||||
<item name="attr/navigation_accept">@drawable/ic_done_grey600_24dp</item>
|
<item type="attr" name="navigation_accept">@drawable/ic_done_grey600_24dp</item>
|
||||||
<item name="attr/navigation_cancel">@drawable/ic_cancel_grey600_24dp</item>
|
<item type="attr" name="navigation_cancel">@drawable/ic_cancel_grey600_24dp</item>
|
||||||
<item name="attr/navigation_expand">@drawable/ic_expand_more_grey600_36dp</item>
|
<item type="attr" name="navigation_expand">@drawable/ic_expand_more_grey600_36dp</item>
|
||||||
<item name="attr/navigation_refresh">@drawable/ic_refresh_grey600_24dp</item>
|
<item type="attr" name="navigation_refresh">@drawable/ic_refresh_grey600_24dp</item>
|
||||||
<item name="attr/navigation_up">@drawable/navigation_up</item>
|
<item type="attr" name="navigation_up">@drawable/navigation_up</item>
|
||||||
<item name="attr/social_share">@drawable/ic_share_grey600_24dp</item>
|
<item type="attr" name="social_share">@drawable/ic_share_grey600_24dp</item>
|
||||||
<item name="attr/stat_playlist">@drawable/ic_list_grey600_24dp</item>
|
<item type="attr" name="stat_playlist">@drawable/ic_list_grey600_24dp</item>
|
||||||
<item name="attr/type_audio">@drawable/ic_hearing_grey600_18dp</item>
|
<item type="attr" name="type_audio">@drawable/ic_hearing_grey600_18dp</item>
|
||||||
<item name="attr/type_video">@drawable/ic_remove_red_eye_grey600_18dp</item>
|
<item type="attr" name="type_video">@drawable/ic_remove_red_eye_grey600_18dp</item>
|
||||||
<item name="attr/non_transparent_background">@color/white</item>
|
<item type="attr" name="non_transparent_background">@color/white</item>
|
||||||
<item name="attr/overlay_background">@color/overlay_light</item>
|
<item type="attr" name="overlay_background">@color/overlay_light</item>
|
||||||
<item name="attr/overlay_drawable">@drawable/overlay_drawable</item>
|
<item type="attr" name="overlay_drawable">@drawable/overlay_drawable</item>
|
||||||
<item name="attr/dragview_background">@drawable/ic_drag_vertical_grey600_48dp</item>
|
<item type="attr" name="dragview_background">@drawable/ic_drag_vertical_grey600_48dp</item>
|
||||||
<item name="attr/dragview_float_background">@color/white</item>
|
<item type="attr" name="dragview_float_background">@color/white</item>
|
||||||
<item name="attr/nav_drawer_background">@color/white</item>
|
<item type="attr" name="nav_drawer_background">@color/white</item>
|
||||||
<item name="attr/ic_new">@drawable/ic_new_releases_grey600_24dp</item>
|
<item type="attr" name="ic_new">@drawable/ic_new_releases_grey600_24dp</item>
|
||||||
<item name="attr/ic_history">@drawable/ic_history_grey600_24dp</item>
|
<item type="attr" name="ic_history">@drawable/ic_history_grey600_24dp</item>
|
||||||
<item name="attr/ic_folder">@drawable/ic_folder_grey600_24dp</item>
|
<item type="attr" name="ic_folder">@drawable/ic_folder_grey600_24dp</item>
|
||||||
<item name="attr/av_play_big">@drawable/ic_play_arrow_grey600_36dp</item>
|
<item type="attr" name="av_play_big">@drawable/ic_play_arrow_grey600_36dp</item>
|
||||||
<item name="attr/av_pause_big">@drawable/ic_pause_grey600_36dp</item>
|
<item type="attr" name="av_pause_big">@drawable/ic_pause_grey600_36dp</item>
|
||||||
<item name="attr/av_ff_big">@drawable/ic_fast_forward_grey600_36dp</item>
|
<item type="attr" name="av_ff_big">@drawable/ic_fast_forward_grey600_36dp</item>
|
||||||
<item name="attr/av_rew_big">@drawable/ic_fast_rewind_grey600_36dp</item>
|
<item type="attr" name="av_rew_big">@drawable/ic_fast_rewind_grey600_36dp</item>
|
||||||
<item name="attr/av_skip_big">@drawable/ic_skip_grey600_36dp</item>
|
<item type="attr" name="av_skip_big">@drawable/ic_skip_grey600_36dp</item>
|
||||||
<item name="attr/ic_fav">@drawable/ic_star_border_grey600_24dp</item>
|
<item type="attr" name="ic_fav">@drawable/ic_star_border_grey600_24dp</item>
|
||||||
<item name="attr/ic_unfav">@drawable/ic_star_grey600_24dp</item>
|
<item type="attr" name="ic_unfav">@drawable/ic_star_grey600_24dp</item>
|
||||||
<item name="attr/ic_settings">@drawable/ic_settings_grey600_24dp</item>
|
<item type="attr" name="ic_settings">@drawable/ic_settings_grey600_24dp</item>
|
||||||
<item name="attr/ic_lock_open">@drawable/ic_lock_open_grey600_24dp</item>
|
<item type="attr" name="ic_lock_open">@drawable/ic_lock_open_grey600_24dp</item>
|
||||||
<item name="attr/ic_lock_closed">@drawable/ic_lock_closed_grey600_24dp</item>
|
<item type="attr" name="ic_lock_closed">@drawable/ic_lock_closed_grey600_24dp</item>
|
||||||
<item name="attr/ic_filter">@drawable/ic_filter_grey600_24dp</item>
|
<item type="attr" name="ic_filter">@drawable/ic_filter_grey600_24dp</item>
|
||||||
<item name="attr/ic_sleep">@drawable/ic_sleep_grey600_24dp</item>
|
<item type="attr" name="ic_sleep">@drawable/ic_sleep_grey600_24dp</item>
|
||||||
<item name="attr/ic_sleep_off">@drawable/ic_sleep_off_grey600_24dp</item>
|
<item type="attr" name="ic_sleep_off">@drawable/ic_sleep_off_grey600_24dp</item>
|
||||||
<item name="attr/ic_check_box">@drawable/ic_check_box_grey600_24dp</item>
|
<item type="attr" name="ic_check_box">@drawable/ic_check_box_grey600_24dp</item>
|
||||||
<item name="attr/ic_check_box_outline">@drawable/ic_check_box_outline_blank_grey600_24dp</item>
|
<item type="attr" name="ic_check_box_outline">@drawable/ic_check_box_outline_blank_grey600_24dp</item>
|
||||||
<item name="attr/ic_indeterminate_check_box">@drawable/ic_indeterminate_check_box_grey600_24dp</item>
|
<item type="attr" name="ic_indeterminate_check_box">@drawable/ic_indeterminate_check_box_grey600_24dp</item>
|
||||||
<item name="attr/ic_sort">@drawable/ic_sort_grey600_24dp</item>
|
<item type="attr" name="ic_sort">@drawable/ic_sort_grey600_24dp</item>
|
||||||
<item name="attr/ic_sd_storage">@drawable/ic_sd_storage_grey600_36dp</item>
|
<item type="attr" name="ic_sd_storage">@drawable/ic_sd_storage_grey600_36dp</item>
|
||||||
<item name="attr/ic_create_new_folder">@drawable/ic_create_new_folder_grey600_24dp</item>
|
<item type="attr" name="ic_create_new_folder">@drawable/ic_create_new_folder_grey600_24dp</item>
|
||||||
<item name="attr/ic_cast_disconnect">@drawable/ic_cast_disconnect_grey600_36dp</item>
|
<item type="attr" name="ic_cast_disconnect">@drawable/ic_cast_disconnect_grey600_36dp</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.AntennaPod.Dark" parent="Theme.Base.AntennaPod.Dark">
|
<style name="Theme.AntennaPod.Dark" parent="Theme.Base.AntennaPod.Dark">
|
||||||
@ -74,57 +74,57 @@
|
|||||||
<item name="buttonStyle">@style/Widget.AntennaPod.Button</item>
|
<item name="buttonStyle">@style/Widget.AntennaPod.Button</item>
|
||||||
<item name="progressBarTheme">@style/ProgressBarDark</item>
|
<item name="progressBarTheme">@style/ProgressBarDark</item>
|
||||||
<item name="alertDialogTheme">@style/AntennaPod.Dialog.Dark</item>
|
<item name="alertDialogTheme">@style/AntennaPod.Dialog.Dark</item>
|
||||||
<item name="attr/action_bar_icon_color">@color/white</item>
|
<item type="attr" name="action_bar_icon_color">@color/white</item>
|
||||||
<item name="attr/action_about">@drawable/ic_info_white_24dp</item>g
|
<item type="attr" name="action_about">@drawable/ic_info_white_24dp</item>g
|
||||||
<item name="attr/action_search">@drawable/ic_search_white_24dp</item>
|
<item type="attr" name="action_search">@drawable/ic_search_white_24dp</item>
|
||||||
<item name="attr/action_stream">@drawable/ic_settings_input_antenna_white_24dp</item>
|
<item type="attr" name="action_stream">@drawable/ic_settings_input_antenna_white_24dp</item>
|
||||||
<item name="attr/av_download">@drawable/ic_file_download_white_24dp</item>
|
<item type="attr" name="av_download">@drawable/ic_file_download_white_24dp</item>
|
||||||
<item name="attr/av_fast_forward">@drawable/ic_fast_forward_white_24dp</item>
|
<item type="attr" name="av_fast_forward">@drawable/ic_fast_forward_white_24dp</item>
|
||||||
<item name="attr/av_pause">@drawable/ic_pause_white_24dp</item>
|
<item type="attr" name="av_pause">@drawable/ic_pause_white_24dp</item>
|
||||||
<item name="attr/av_play">@drawable/ic_play_arrow_white_24dp</item>
|
<item type="attr" name="av_play">@drawable/ic_play_arrow_white_24dp</item>
|
||||||
<item name="attr/av_rewind">@drawable/ic_fast_rewind_white_24dp</item>
|
<item type="attr" name="av_rewind">@drawable/ic_fast_rewind_white_24dp</item>
|
||||||
<item name="attr/content_discard">@drawable/ic_delete_white_24dp</item>
|
<item type="attr" name="content_discard">@drawable/ic_delete_white_24dp</item>
|
||||||
<item name="attr/content_new">@drawable/ic_add_white_24dp</item>
|
<item type="attr" name="content_new">@drawable/ic_add_white_24dp</item>
|
||||||
<item name="attr/feed">@drawable/ic_feed_white_24dp</item>
|
<item type="attr" name="feed">@drawable/ic_feed_white_24dp</item>
|
||||||
<item name="attr/location_web_site">@drawable/ic_web_white_24dp</item>
|
<item type="attr" name="location_web_site">@drawable/ic_web_white_24dp</item>
|
||||||
<item name="attr/navigation_accept">@drawable/ic_done_white_24dp</item>
|
<item type="attr" name="navigation_accept">@drawable/ic_done_white_24dp</item>
|
||||||
<item name="attr/navigation_cancel">@drawable/ic_cancel_white_24dp</item>
|
<item type="attr" name="navigation_cancel">@drawable/ic_cancel_white_24dp</item>
|
||||||
<item name="attr/navigation_expand">@drawable/ic_expand_more_white_36dp</item>
|
<item type="attr" name="navigation_expand">@drawable/ic_expand_more_white_36dp</item>
|
||||||
<item name="attr/navigation_refresh">@drawable/ic_refresh_white_24dp</item>
|
<item type="attr" name="navigation_refresh">@drawable/ic_refresh_white_24dp</item>
|
||||||
<item name="attr/navigation_up">@drawable/navigation_up_dark</item>
|
<item type="attr" name="navigation_up">@drawable/navigation_up_dark</item>
|
||||||
<item name="attr/social_share">@drawable/ic_share_white_24dp</item>
|
<item type="attr" name="social_share">@drawable/ic_share_white_24dp</item>
|
||||||
<item name="attr/stat_playlist">@drawable/ic_list_white_24dp</item>
|
<item type="attr" name="stat_playlist">@drawable/ic_list_white_24dp</item>
|
||||||
<item name="attr/type_audio">@drawable/ic_hearing_white_18dp</item>
|
<item type="attr" name="type_audio">@drawable/ic_hearing_white_18dp</item>
|
||||||
<item name="attr/type_video">@drawable/ic_remove_red_eye_white_18dp</item>
|
<item type="attr" name="type_video">@drawable/ic_remove_red_eye_white_18dp</item>
|
||||||
<item name="attr/non_transparent_background">@color/black</item>
|
<item type="attr" name="non_transparent_background">@color/black</item>
|
||||||
<item name="attr/overlay_background">@color/overlay_dark</item>
|
<item type="attr" name="overlay_background">@color/overlay_dark</item>
|
||||||
<item name="attr/overlay_drawable">@drawable/overlay_drawable_dark</item>
|
<item type="attr" name="overlay_drawable">@drawable/overlay_drawable_dark</item>
|
||||||
<item name="attr/dragview_background">@drawable/ic_drag_vertical_white_48dp</item>
|
<item type="attr" name="dragview_background">@drawable/ic_drag_vertical_white_48dp</item>
|
||||||
<item name="attr/dragview_float_background">@color/black</item>
|
<item type="attr" name="dragview_float_background">@color/black</item>
|
||||||
<item name="attr/nav_drawer_background">#3B3B3B</item>
|
<item type="attr" name="nav_drawer_background">#3B3B3B</item>
|
||||||
<item name="attr/ic_new">@drawable/ic_new_releases_white_24dp</item>
|
<item type="attr" name="ic_new">@drawable/ic_new_releases_white_24dp</item>
|
||||||
<item name="attr/ic_history">@drawable/ic_history_white_24dp</item>
|
<item type="attr" name="ic_history">@drawable/ic_history_white_24dp</item>
|
||||||
<item name="attr/ic_folder">@drawable/ic_folder_white_24dp</item>
|
<item type="attr" name="ic_folder">@drawable/ic_folder_white_24dp</item>
|
||||||
<item name="attr/av_play_big">@drawable/ic_play_arrow_white_36dp</item>
|
<item type="attr" name="av_play_big">@drawable/ic_play_arrow_white_36dp</item>
|
||||||
<item name="attr/av_pause_big">@drawable/ic_pause_white_36dp</item>
|
<item type="attr" name="av_pause_big">@drawable/ic_pause_white_36dp</item>
|
||||||
<item name="attr/av_ff_big">@drawable/ic_fast_forward_white_36dp</item>
|
<item type="attr" name="av_ff_big">@drawable/ic_fast_forward_white_36dp</item>
|
||||||
<item name="attr/av_rew_big">@drawable/ic_fast_rewind_white_36dp</item>
|
<item type="attr" name="av_rew_big">@drawable/ic_fast_rewind_white_36dp</item>
|
||||||
<item name="attr/av_skip_big">@drawable/ic_skip_white_36dp</item>
|
<item type="attr" name="av_skip_big">@drawable/ic_skip_white_36dp</item>
|
||||||
<item name="attr/ic_fav">@drawable/ic_star_border_white_24dp</item>
|
<item type="attr" name="ic_fav">@drawable/ic_star_border_white_24dp</item>
|
||||||
<item name="attr/ic_unfav">@drawable/ic_star_white_24dp</item>
|
<item type="attr" name="ic_unfav">@drawable/ic_star_white_24dp</item>
|
||||||
<item name="attr/ic_settings">@drawable/ic_settings_white_24dp</item>
|
<item type="attr" name="ic_settings">@drawable/ic_settings_white_24dp</item>
|
||||||
<item name="attr/ic_lock_open">@drawable/ic_lock_open_white_24dp</item>
|
<item type="attr" name="ic_lock_open">@drawable/ic_lock_open_white_24dp</item>
|
||||||
<item name="attr/ic_lock_closed">@drawable/ic_lock_closed_white_24dp</item>
|
<item type="attr" name="ic_lock_closed">@drawable/ic_lock_closed_white_24dp</item>
|
||||||
<item name="attr/ic_filter">@drawable/ic_filter_white_24dp</item>
|
<item type="attr" name="ic_filter">@drawable/ic_filter_white_24dp</item>
|
||||||
<item name="attr/ic_sleep">@drawable/ic_sleep_white_24dp</item>
|
<item type="attr" name="ic_sleep">@drawable/ic_sleep_white_24dp</item>
|
||||||
<item name="attr/ic_sleep_off">@drawable/ic_sleep_off_white_24dp</item>
|
<item type="attr" name="ic_sleep_off">@drawable/ic_sleep_off_white_24dp</item>
|
||||||
<item name="attr/ic_check_box">@drawable/ic_check_box_white_24dp</item>
|
<item type="attr" name="ic_check_box">@drawable/ic_check_box_white_24dp</item>
|
||||||
<item name="attr/ic_check_box_outline">@drawable/ic_check_box_outline_blank_white_24dp</item>
|
<item type="attr" name="ic_check_box_outline">@drawable/ic_check_box_outline_blank_white_24dp</item>
|
||||||
<item name="attr/ic_indeterminate_check_box">@drawable/ic_indeterminate_check_box_white_24dp</item>
|
<item type="attr" name="ic_indeterminate_check_box">@drawable/ic_indeterminate_check_box_white_24dp</item>
|
||||||
<item name="attr/ic_sort">@drawable/ic_sort_white_24dp</item>
|
<item type="attr" name="ic_sort">@drawable/ic_sort_white_24dp</item>
|
||||||
<item name="attr/ic_sd_storage">@drawable/ic_sd_storage_white_36dp</item>
|
<item type="attr" name="ic_sd_storage">@drawable/ic_sd_storage_white_36dp</item>
|
||||||
<item name="attr/ic_create_new_folder">@drawable/ic_create_new_folder_white_24dp</item>
|
<item type="attr" name="ic_create_new_folder">@drawable/ic_create_new_folder_white_24dp</item>
|
||||||
<item name="attr/ic_cast_disconnect">@drawable/ic_cast_disconnect_white_36dp</item>
|
<item type="attr" name="ic_cast_disconnect">@drawable/ic_cast_disconnect_white_36dp</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.AntennaPod.Light.NoTitle" parent="Theme.Base.AntennaPod.Light.NoTitle">
|
<style name="Theme.AntennaPod.Light.NoTitle" parent="Theme.Base.AntennaPod.Light.NoTitle">
|
||||||
@ -139,56 +139,56 @@
|
|||||||
<item name="colorAccent">@color/holo_blue_light</item>
|
<item name="colorAccent">@color/holo_blue_light</item>
|
||||||
<item name="buttonStyle">@style/Widget.AntennaPod.Button</item>
|
<item name="buttonStyle">@style/Widget.AntennaPod.Button</item>
|
||||||
<item name="alertDialogTheme">@style/AntennaPod.Dialog.Light</item>
|
<item name="alertDialogTheme">@style/AntennaPod.Dialog.Light</item>
|
||||||
<item name="attr/action_about">@drawable/ic_info_grey600_24dp</item>
|
<item type="attr" name="action_about">@drawable/ic_info_grey600_24dp</item>
|
||||||
<item name="attr/action_search">@drawable/ic_search_grey600_24dp</item>
|
<item type="attr" name="action_search">@drawable/ic_search_grey600_24dp</item>
|
||||||
<item name="attr/action_stream">@drawable/ic_settings_input_antenna_grey600_24dp</item>
|
<item type="attr" name="action_stream">@drawable/ic_settings_input_antenna_grey600_24dp</item>
|
||||||
<item name="attr/av_download">@drawable/ic_file_download_grey600_24dp</item>
|
<item type="attr" name="av_download">@drawable/ic_file_download_grey600_24dp</item>
|
||||||
<item name="attr/av_fast_forward">@drawable/ic_fast_forward_grey600_24dp</item>
|
<item type="attr" name="av_fast_forward">@drawable/ic_fast_forward_grey600_24dp</item>
|
||||||
<item name="attr/av_pause">@drawable/ic_pause_grey600_24dp</item>
|
<item type="attr" name="av_pause">@drawable/ic_pause_grey600_24dp</item>
|
||||||
<item name="attr/av_play">@drawable/ic_play_arrow_grey600_24dp</item>
|
<item type="attr" name="av_play">@drawable/ic_play_arrow_grey600_24dp</item>
|
||||||
<item name="attr/av_rewind">@drawable/ic_fast_rewind_grey600_24dp</item>
|
<item type="attr" name="av_rewind">@drawable/ic_fast_rewind_grey600_24dp</item>
|
||||||
<item name="attr/content_discard">@drawable/ic_delete_grey600_24dp</item>
|
<item type="attr" name="content_discard">@drawable/ic_delete_grey600_24dp</item>
|
||||||
<item name="attr/content_new">@drawable/ic_add_grey600_24dp</item>
|
<item type="attr" name="content_new">@drawable/ic_add_grey600_24dp</item>
|
||||||
<item name="attr/feed">@drawable/ic_feed_grey600_24dp</item>
|
<item type="attr" name="feed">@drawable/ic_feed_grey600_24dp</item>
|
||||||
<item name="attr/location_web_site">@drawable/ic_web_grey600_24dp</item>
|
<item type="attr" name="location_web_site">@drawable/ic_web_grey600_24dp</item>
|
||||||
<item name="attr/navigation_accept">@drawable/ic_done_grey600_24dp</item>
|
<item type="attr" name="navigation_accept">@drawable/ic_done_grey600_24dp</item>
|
||||||
<item name="attr/navigation_cancel">@drawable/ic_cancel_grey600_24dp</item>
|
<item type="attr" name="navigation_cancel">@drawable/ic_cancel_grey600_24dp</item>
|
||||||
<item name="attr/navigation_expand">@drawable/ic_expand_more_grey600_36dp</item>
|
<item type="attr" name="navigation_expand">@drawable/ic_expand_more_grey600_36dp</item>
|
||||||
<item name="attr/navigation_refresh">@drawable/ic_refresh_grey600_24dp</item>
|
<item type="attr" name="navigation_refresh">@drawable/ic_refresh_grey600_24dp</item>
|
||||||
<item name="attr/navigation_up">@drawable/navigation_up</item>
|
<item type="attr" name="navigation_up">@drawable/navigation_up</item>
|
||||||
<item name="attr/social_share">@drawable/ic_share_grey600_24dp</item>
|
<item type="attr" name="social_share">@drawable/ic_share_grey600_24dp</item>
|
||||||
<item name="attr/stat_playlist">@drawable/ic_list_grey600_24dp</item>
|
<item type="attr" name="stat_playlist">@drawable/ic_list_grey600_24dp</item>
|
||||||
<item name="attr/type_audio">@drawable/ic_hearing_grey600_18dp</item>
|
<item type="attr" name="type_audio">@drawable/ic_hearing_grey600_18dp</item>
|
||||||
<item name="attr/type_video">@drawable/ic_remove_red_eye_grey600_18dp</item>
|
<item type="attr" name="type_video">@drawable/ic_remove_red_eye_grey600_18dp</item>
|
||||||
<item name="attr/non_transparent_background">@color/white</item>
|
<item type="attr" name="non_transparent_background">@color/white</item>
|
||||||
<item name="attr/overlay_background">@color/overlay_light</item>
|
<item type="attr" name="overlay_background">@color/overlay_light</item>
|
||||||
<item name="attr/overlay_drawable">@drawable/overlay_drawable</item>
|
<item type="attr" name="overlay_drawable">@drawable/overlay_drawable</item>
|
||||||
<item name="attr/dragview_background">@drawable/ic_drag_vertical_grey600_48dp</item>
|
<item type="attr" name="dragview_background">@drawable/ic_drag_vertical_grey600_48dp</item>
|
||||||
<item name="attr/dragview_float_background">@color/white</item>
|
<item type="attr" name="dragview_float_background">@color/white</item>
|
||||||
<item name="attr/nav_drawer_background">@color/white</item>
|
<item type="attr" name="nav_drawer_background">@color/white</item>
|
||||||
<item name="attr/ic_new">@drawable/ic_new_releases_grey600_24dp</item>
|
<item type="attr" name="ic_new">@drawable/ic_new_releases_grey600_24dp</item>
|
||||||
<item name="attr/ic_history">@drawable/ic_history_grey600_24dp</item>
|
<item type="attr" name="ic_history">@drawable/ic_history_grey600_24dp</item>
|
||||||
<item name="attr/ic_folder">@drawable/ic_folder_grey600_24dp</item>
|
<item type="attr" name="ic_folder">@drawable/ic_folder_grey600_24dp</item>
|
||||||
<item name="attr/av_play_big">@drawable/ic_play_arrow_grey600_36dp</item>
|
<item type="attr" name="av_play_big">@drawable/ic_play_arrow_grey600_36dp</item>
|
||||||
<item name="attr/av_pause_big">@drawable/ic_pause_grey600_36dp</item>
|
<item type="attr" name="av_pause_big">@drawable/ic_pause_grey600_36dp</item>
|
||||||
<item name="attr/av_ff_big">@drawable/ic_fast_forward_grey600_36dp</item>
|
<item type="attr" name="av_ff_big">@drawable/ic_fast_forward_grey600_36dp</item>
|
||||||
<item name="attr/av_rew_big">@drawable/ic_fast_rewind_grey600_36dp</item>
|
<item type="attr" name="av_rew_big">@drawable/ic_fast_rewind_grey600_36dp</item>
|
||||||
<item name="attr/av_skip_big">@drawable/ic_skip_grey600_36dp</item>
|
<item type="attr" name="av_skip_big">@drawable/ic_skip_grey600_36dp</item>
|
||||||
<item name="attr/ic_fav">@drawable/ic_star_border_grey600_24dp</item>
|
<item type="attr" name="ic_fav">@drawable/ic_star_border_grey600_24dp</item>
|
||||||
<item name="attr/ic_unfav">@drawable/ic_star_grey600_24dp</item>
|
<item type="attr" name="ic_unfav">@drawable/ic_star_grey600_24dp</item>
|
||||||
<item name="attr/ic_settings">@drawable/ic_settings_grey600_24dp</item>
|
<item type="attr" name="ic_settings">@drawable/ic_settings_grey600_24dp</item>
|
||||||
<item name="attr/ic_lock_open">@drawable/ic_lock_open_grey600_24dp</item>
|
<item type="attr" name="ic_lock_open">@drawable/ic_lock_open_grey600_24dp</item>
|
||||||
<item name="attr/ic_lock_closed">@drawable/ic_lock_closed_grey600_24dp</item>
|
<item type="attr" name="ic_lock_closed">@drawable/ic_lock_closed_grey600_24dp</item>
|
||||||
<item name="attr/ic_filter">@drawable/ic_filter_grey600_24dp</item>
|
<item type="attr" name="ic_filter">@drawable/ic_filter_grey600_24dp</item>
|
||||||
<item name="attr/ic_sleep">@drawable/ic_sleep_grey600_24dp</item>
|
<item type="attr" name="ic_sleep">@drawable/ic_sleep_grey600_24dp</item>
|
||||||
<item name="attr/ic_sleep_off">@drawable/ic_sleep_off_grey600_24dp</item>
|
<item type="attr" name="ic_sleep_off">@drawable/ic_sleep_off_grey600_24dp</item>
|
||||||
<item name="attr/ic_check_box">@drawable/ic_check_box_grey600_24dp</item>
|
<item type="attr" name="ic_check_box">@drawable/ic_check_box_grey600_24dp</item>
|
||||||
<item name="attr/ic_check_box_outline">@drawable/ic_check_box_outline_blank_grey600_24dp</item>
|
<item type="attr" name="ic_check_box_outline">@drawable/ic_check_box_outline_blank_grey600_24dp</item>
|
||||||
<item name="attr/ic_indeterminate_check_box">@drawable/ic_indeterminate_check_box_grey600_24dp</item>
|
<item type="attr" name="ic_indeterminate_check_box">@drawable/ic_indeterminate_check_box_grey600_24dp</item>
|
||||||
<item name="attr/ic_sort">@drawable/ic_sort_grey600_24dp</item>
|
<item type="attr" name="ic_sort">@drawable/ic_sort_grey600_24dp</item>
|
||||||
<item name="attr/ic_sd_storage">@drawable/ic_sd_storage_grey600_36dp</item>
|
<item type="attr" name="ic_sd_storage">@drawable/ic_sd_storage_grey600_36dp</item>
|
||||||
<item name="attr/ic_create_new_folder">@drawable/ic_create_new_folder_grey600_24dp</item>
|
<item type="attr" name="ic_create_new_folder">@drawable/ic_create_new_folder_grey600_24dp</item>
|
||||||
<item name="attr/ic_cast_disconnect">@drawable/ic_cast_disconnect_grey600_36dp</item>
|
<item type="attr" name="ic_cast_disconnect">@drawable/ic_cast_disconnect_grey600_36dp</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.AntennaPod.Dark.NoTitle" parent="Theme.Base.AntennaPod.Dark.NoTitle">
|
<style name="Theme.AntennaPod.Dark.NoTitle" parent="Theme.Base.AntennaPod.Dark.NoTitle">
|
||||||
@ -203,56 +203,56 @@
|
|||||||
<item name="colorControlNormal">@color/white</item>
|
<item name="colorControlNormal">@color/white</item>
|
||||||
<item name="buttonStyle">@style/Widget.AntennaPod.Button</item>
|
<item name="buttonStyle">@style/Widget.AntennaPod.Button</item>
|
||||||
<item name="alertDialogTheme">@style/AntennaPod.Dialog.Dark</item>
|
<item name="alertDialogTheme">@style/AntennaPod.Dialog.Dark</item>
|
||||||
<item name="attr/action_about">@drawable/ic_info_white_24dp</item>
|
<item type="attr" name="action_about">@drawable/ic_info_white_24dp</item>
|
||||||
<item name="attr/action_search">@drawable/ic_search_white_24dp</item>
|
<item type="attr" name="action_search">@drawable/ic_search_white_24dp</item>
|
||||||
<item name="attr/action_stream">@drawable/ic_settings_input_antenna_white_24dp</item>
|
<item type="attr" name="action_stream">@drawable/ic_settings_input_antenna_white_24dp</item>
|
||||||
<item name="attr/av_download">@drawable/ic_file_download_white_24dp</item>
|
<item type="attr" name="av_download">@drawable/ic_file_download_white_24dp</item>
|
||||||
<item name="attr/av_fast_forward">@drawable/ic_fast_forward_white_24dp</item>
|
<item type="attr" name="av_fast_forward">@drawable/ic_fast_forward_white_24dp</item>
|
||||||
<item name="attr/av_pause">@drawable/ic_pause_white_24dp</item>
|
<item type="attr" name="av_pause">@drawable/ic_pause_white_24dp</item>
|
||||||
<item name="attr/av_play">@drawable/ic_play_arrow_white_24dp</item>
|
<item type="attr" name="av_play">@drawable/ic_play_arrow_white_24dp</item>
|
||||||
<item name="attr/av_rewind">@drawable/ic_fast_rewind_white_24dp</item>
|
<item type="attr" name="av_rewind">@drawable/ic_fast_rewind_white_24dp</item>
|
||||||
<item name="attr/content_discard">@drawable/ic_delete_white_24dp</item>
|
<item type="attr" name="content_discard">@drawable/ic_delete_white_24dp</item>
|
||||||
<item name="attr/content_new">@drawable/ic_add_white_24dp</item>
|
<item type="attr" name="content_new">@drawable/ic_add_white_24dp</item>
|
||||||
<item name="attr/feed">@drawable/ic_feed_white_24dp</item>
|
<item type="attr" name="feed">@drawable/ic_feed_white_24dp</item>
|
||||||
<item name="attr/location_web_site">@drawable/ic_web_white_24dp</item>
|
<item type="attr" name="location_web_site">@drawable/ic_web_white_24dp</item>
|
||||||
<item name="attr/navigation_accept">@drawable/ic_done_white_24dp</item>
|
<item type="attr" name="navigation_accept">@drawable/ic_done_white_24dp</item>
|
||||||
<item name="attr/navigation_cancel">@drawable/ic_cancel_white_24dp</item>
|
<item type="attr" name="navigation_cancel">@drawable/ic_cancel_white_24dp</item>
|
||||||
<item name="attr/navigation_expand">@drawable/ic_expand_more_white_36dp</item>
|
<item type="attr" name="navigation_expand">@drawable/ic_expand_more_white_36dp</item>
|
||||||
<item name="attr/navigation_refresh">@drawable/ic_refresh_white_24dp</item>
|
<item type="attr" name="navigation_refresh">@drawable/ic_refresh_white_24dp</item>
|
||||||
<item name="attr/navigation_up">@drawable/navigation_up_dark</item>
|
<item type="attr" name="navigation_up">@drawable/navigation_up_dark</item>
|
||||||
<item name="attr/social_share">@drawable/ic_share_white_24dp</item>
|
<item type="attr" name="social_share">@drawable/ic_share_white_24dp</item>
|
||||||
<item name="attr/stat_playlist">@drawable/ic_list_white_24dp</item>
|
<item type="attr" name="stat_playlist">@drawable/ic_list_white_24dp</item>
|
||||||
<item name="attr/type_audio">@drawable/ic_hearing_white_18dp</item>
|
<item type="attr" name="type_audio">@drawable/ic_hearing_white_18dp</item>
|
||||||
<item name="attr/type_video">@drawable/ic_remove_red_eye_white_18dp</item>
|
<item type="attr" name="type_video">@drawable/ic_remove_red_eye_white_18dp</item>
|
||||||
<item name="attr/non_transparent_background">@color/black</item>
|
<item type="attr" name="non_transparent_background">@color/black</item>
|
||||||
<item name="attr/overlay_background">@color/overlay_dark</item>
|
<item type="attr" name="overlay_background">@color/overlay_dark</item>
|
||||||
<item name="attr/overlay_drawable">@drawable/overlay_drawable_dark</item>
|
<item type="attr" name="overlay_drawable">@drawable/overlay_drawable_dark</item>
|
||||||
<item name="attr/dragview_background">@drawable/ic_drag_vertical_white_48dp</item>
|
<item type="attr" name="dragview_background">@drawable/ic_drag_vertical_white_48dp</item>
|
||||||
<item name="attr/dragview_float_background">@color/black</item>
|
<item type="attr" name="dragview_float_background">@color/black</item>
|
||||||
<item name="attr/nav_drawer_background">#3B3B3B</item>
|
<item type="attr" name="nav_drawer_background">#3B3B3B</item>
|
||||||
<item name="attr/ic_new">@drawable/ic_new_releases_white_24dp</item>
|
<item type="attr" name="ic_new">@drawable/ic_new_releases_white_24dp</item>
|
||||||
<item name="attr/ic_history">@drawable/ic_history_white_24dp</item>
|
<item type="attr" name="ic_history">@drawable/ic_history_white_24dp</item>
|
||||||
<item name="attr/ic_folder">@drawable/ic_folder_white_24dp</item>
|
<item type="attr" name="ic_folder">@drawable/ic_folder_white_24dp</item>
|
||||||
<item name="attr/av_play_big">@drawable/ic_play_arrow_white_36dp</item>
|
<item type="attr" name="av_play_big">@drawable/ic_play_arrow_white_36dp</item>
|
||||||
<item name="attr/av_pause_big">@drawable/ic_pause_white_36dp</item>
|
<item type="attr" name="av_pause_big">@drawable/ic_pause_white_36dp</item>
|
||||||
<item name="attr/av_ff_big">@drawable/ic_fast_forward_white_36dp</item>
|
<item type="attr" name="av_ff_big">@drawable/ic_fast_forward_white_36dp</item>
|
||||||
<item name="attr/av_rew_big">@drawable/ic_fast_rewind_white_36dp</item>
|
<item type="attr" name="av_rew_big">@drawable/ic_fast_rewind_white_36dp</item>
|
||||||
<item name="attr/av_skip_big">@drawable/ic_skip_white_36dp</item>
|
<item type="attr" name="av_skip_big">@drawable/ic_skip_white_36dp</item>
|
||||||
<item name="attr/ic_fav">@drawable/ic_star_border_white_24dp</item>
|
<item type="attr" name="ic_fav">@drawable/ic_star_border_white_24dp</item>
|
||||||
<item name="attr/ic_unfav">@drawable/ic_star_white_24dp</item>
|
<item type="attr" name="ic_unfav">@drawable/ic_star_white_24dp</item>
|
||||||
<item name="attr/ic_settings">@drawable/ic_settings_white_24dp</item>
|
<item type="attr" name="ic_settings">@drawable/ic_settings_white_24dp</item>
|
||||||
<item name="attr/ic_lock_open">@drawable/ic_lock_open_white_24dp</item>
|
<item type="attr" name="ic_lock_open">@drawable/ic_lock_open_white_24dp</item>
|
||||||
<item name="attr/ic_lock_closed">@drawable/ic_lock_closed_white_24dp</item>
|
<item type="attr" name="ic_lock_closed">@drawable/ic_lock_closed_white_24dp</item>
|
||||||
<item name="attr/ic_filter">@drawable/ic_filter_white_24dp</item>
|
<item type="attr" name="ic_filter">@drawable/ic_filter_white_24dp</item>
|
||||||
<item name="attr/ic_sleep">@drawable/ic_sleep_white_24dp</item>
|
<item type="attr" name="ic_sleep">@drawable/ic_sleep_white_24dp</item>
|
||||||
<item name="attr/ic_sleep_off">@drawable/ic_sleep_off_white_24dp</item>
|
<item type="attr" name="ic_sleep_off">@drawable/ic_sleep_off_white_24dp</item>
|
||||||
<item name="attr/ic_check_box">@drawable/ic_check_box_white_24dp</item>
|
<item type="attr" name="ic_check_box">@drawable/ic_check_box_white_24dp</item>
|
||||||
<item name="attr/ic_check_box_outline">@drawable/ic_check_box_outline_blank_white_24dp</item>
|
<item type="attr" name="ic_check_box_outline">@drawable/ic_check_box_outline_blank_white_24dp</item>
|
||||||
<item name="attr/ic_indeterminate_check_box">@drawable/ic_indeterminate_check_box_white_24dp</item>
|
<item type="attr" name="ic_indeterminate_check_box">@drawable/ic_indeterminate_check_box_white_24dp</item>
|
||||||
<item name="attr/ic_sort">@drawable/ic_sort_white_24dp</item>
|
<item type="attr" name="ic_sort">@drawable/ic_sort_white_24dp</item>
|
||||||
<item name="attr/ic_sd_storage">@drawable/ic_sd_storage_white_36dp</item>
|
<item type="attr" name="ic_sd_storage">@drawable/ic_sd_storage_white_36dp</item>
|
||||||
<item name="attr/ic_create_new_folder">@drawable/ic_create_new_folder_white_24dp</item>
|
<item type="attr" name="ic_create_new_folder">@drawable/ic_create_new_folder_white_24dp</item>
|
||||||
<item name="attr/ic_cast_disconnect">@drawable/ic_cast_disconnect_white_36dp</item>
|
<item type="attr" name="ic_cast_disconnect">@drawable/ic_cast_disconnect_white_36dp</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.AntennaPod.Dark.Splash" parent="Theme.AppCompat.NoActionBar">
|
<style name="Theme.AntennaPod.Dark.Splash" parent="Theme.AppCompat.NoActionBar">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user