update bookmarked playlist thumbnails when changed

This commit is contained in:
Bnyro 2022-12-10 12:55:45 +01:00
parent 7f76799380
commit c470339ee9
3 changed files with 19 additions and 1 deletions

View File

@ -5,6 +5,7 @@ import androidx.room.Delete
import androidx.room.Insert import androidx.room.Insert
import androidx.room.OnConflictStrategy import androidx.room.OnConflictStrategy
import androidx.room.Query import androidx.room.Query
import androidx.room.Update
import com.github.libretube.db.obj.PlaylistBookmark import com.github.libretube.db.obj.PlaylistBookmark
@Dao @Dao
@ -21,6 +22,9 @@ interface PlaylistBookmarkDao {
@Delete @Delete
fun delete(playlistBookmark: PlaylistBookmark) fun delete(playlistBookmark: PlaylistBookmark)
@Update
fun update(playlistBookmark: PlaylistBookmark)
@Query("DELETE FROM playlistBookmark WHERE playlistId = :playlistId") @Query("DELETE FROM playlistBookmark WHERE playlistId = :playlistId")
fun deleteById(playlistId: String) fun deleteById(playlistId: String)

View File

@ -95,7 +95,9 @@ class MainActivity : BaseActivity() {
// sets the navigation bar color to the previously calculated color // sets the navigation bar color to the previously calculated color
window.navigationBarColor = if (binding.bottomNav.menu.size() > 0) { window.navigationBarColor = if (binding.bottomNav.menu.size() > 0) {
SurfaceColors.getColorForElevation(this, 10F) SurfaceColors.getColorForElevation(this, 10F)
} else ThemeHelper.getThemeColor(this, android.R.attr.colorBackground) } else {
ThemeHelper.getThemeColor(this, android.R.attr.colorBackground)
}
// set default tab as start fragment // set default tab as start fragment
navController.graph.setStartDestination(startFragmentId) navController.graph.setStartDestination(startFragmentId)

View File

@ -224,6 +224,18 @@ class PlaylistFragment : BaseFragment() {
val itemTouchHelper = ItemTouchHelper(itemTouchCallback) val itemTouchHelper = ItemTouchHelper(itemTouchCallback)
itemTouchHelper.attachToRecyclerView(binding.playlistRecView) itemTouchHelper.attachToRecyclerView(binding.playlistRecView)
} }
// update the playlist thumbnail if bookmarked
val playlistBookmark = DatabaseHolder.Database.playlistBookmarkDao().getAll()
.firstOrNull { it.playlistId == playlistId }
playlistBookmark?.let {
if (playlistBookmark.thumbnailUrl != response.thumbnailUrl) {
playlistBookmark.thumbnailUrl = response.thumbnailUrl
query {
DatabaseHolder.Database.playlistBookmarkDao().update(playlistBookmark)
}
}
}
} }
} }
} }