소스 검색

data fixes

Milan Jurkulak 3 년 전
부모
커밋
1f494585fc
2개의 변경된 파일과 14개의 추가작업 그리고 8개의 파일을 삭제
  1. 8 7
      app/src/main/kotlin/org/mjdev/tvapp/data/local/Movie.kt
  2. 6 1
      app/src/main/kotlin/org/mjdev/tvapp/ui/pages/MainPage.kt

+ 8 - 7
app/src/main/kotlin/org/mjdev/tvapp/data/local/Movie.kt

@@ -46,28 +46,29 @@ class Movie :
         }
 
     @Json(name = "studio")
-    var studio: String? = ""
+    var studio: String? = null
 
     @Json(name = "country")
-    var country: String? = ""
+    var country: String? = null
 
     @Json(name = "isNsfw")
     var isNsfw: Boolean = false
 
     @Json(name = "title")
-    override var title: String? = ""
+    override var title: String? = null
 
     @Json(name = "description")
-    override var description: String? = ""
+    override var description: String? = null
 
     @Json(name = "backgroundImageUrl")
-    override var background: String? = ""
+    override var background: String? = null
+        get() = field ?: image
 
     @Json(name = "imageUrl")
-    override var image: String? = ""
+    override var image: String? = null
 
     @Json(name = "videoUri")
-    override var uri: String? = ""
+    override var uri: String? = null
 
     override var subtitle: String?
         get() = studio

+ 6 - 1
app/src/main/kotlin/org/mjdev/tvapp/ui/pages/MainPage.kt

@@ -9,6 +9,7 @@
 package org.mjdev.tvapp.ui.pages
 
 import android.annotation.SuppressLint
+import android.net.Uri
 import androidx.compose.foundation.layout.Box
 import androidx.compose.foundation.layout.fillMaxSize
 import androidx.compose.material.icons.Icons
@@ -41,6 +42,7 @@ import org.mjdev.tvlib.interfaces.ItemVideo
 import org.mjdev.tvlib.interfaces.ItemWithBackground
 import org.mjdev.tvlib.interfaces.ItemWithImage
 import org.mjdev.tvlib.ui.components.image.FadingPhotoImage
+import java.net.URL
 
 @SuppressLint("ComposableNaming")
 class MainPage : Page() {
@@ -103,10 +105,13 @@ class MainPage : Page() {
 
         val onItemSelect: (item: Any?) -> Unit = { item ->
             when (item) {
+                is String -> item
+                is URL -> item
+                is Uri -> item
                 is ItemPhoto -> item.uri
                 is ItemWithBackground<*> -> item.background
                 is ItemWithImage<*> -> item.image
-                else -> null
+                else -> item.toString()
             }.also { uri ->
                 backgroundState.value = uri
             }