Skip to content

Commit 9f04fd0

Browse files
committedAug 8, 2022
Use KSP in the gallery sample, remove references to generated API.
This helps verify that the ksp process works and shows the changes required when the generated API is not available.
1 parent 813ebd6 commit 9f04fd0

File tree

5 files changed

+17
-7
lines changed

5 files changed

+17
-7
lines changed
 

‎samples/gallery/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'com.android.application'
22
apply plugin: 'kotlin-android'
3-
apply plugin: 'kotlin-kapt'
43
apply plugin: "org.jetbrains.kotlin.plugin.parcelize"
4+
apply plugin: 'com.google.devtools.ksp'
55

66
dependencies {
77
implementation project(':library')
@@ -18,7 +18,7 @@ dependencies {
1818
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$JETBRAINS_KOTLINX_COROUTINES_VERSION"
1919
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$JETBRAINS_KOTLIN_VERSION"
2020

21-
kapt project(':annotation:compiler')
21+
ksp project(':annotation:ksp')
2222
}
2323

2424
kotlin {
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,15 @@
11
package com.bumptech.glide.samples.gallery
22

3+
import android.content.Context
4+
import com.bumptech.glide.GlideBuilder
35
import com.bumptech.glide.annotation.GlideModule
46
import com.bumptech.glide.module.AppGlideModule
57

68
/** Ensures that Glide's generated API is created for the Gallery sample. */
79
@GlideModule
8-
class GalleryModule : AppGlideModule()
10+
class GalleryModule : AppGlideModule() {
11+
override fun applyOptions(context: Context, builder: GlideBuilder) {
12+
super.applyOptions(context, builder)
13+
builder.setIsActiveResourceRetentionAllowed(true)
14+
}
15+
}

‎samples/gallery/src/main/java/com/bumptech/glide/samples/gallery/HorizontalGalleryFragment.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import androidx.lifecycle.lifecycleScope
1111
import androidx.lifecycle.repeatOnLifecycle
1212
import androidx.recyclerview.widget.RecyclerView
1313
import androidx.recyclerview.widget.GridLayoutManager
14+
import com.bumptech.glide.Glide
1415
import com.bumptech.glide.integration.recyclerview.RecyclerViewPreloader
1516
import kotlinx.coroutines.launch
1617

@@ -40,7 +41,7 @@ class HorizontalGalleryFragment : Fragment() {
4041
recyclerView.layoutManager = layoutManager
4142
recyclerView.setHasFixedSize(true)
4243

43-
val glideRequests = GlideApp.with(this)
44+
val glideRequests = Glide.with(this)
4445
adapter = RecyclerAdapter(requireContext(), glideRequests)
4546
val preloader = RecyclerViewPreloader(glideRequests, adapter, adapter, 3)
4647
recyclerView.addOnScrollListener(preloader)

‎samples/gallery/src/main/java/com/bumptech/glide/samples/gallery/MainActivity.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,15 @@ import androidx.core.app.ActivityCompat
88
import androidx.core.content.ContextCompat
99
import androidx.fragment.app.Fragment
1010
import androidx.fragment.app.FragmentActivity
11+
import com.bumptech.glide.Glide
1112
import com.bumptech.glide.MemoryCategory
1213

1314
/** Displays a [HorizontalGalleryFragment]. */
1415
class MainActivity : FragmentActivity() {
1516
override fun onCreate(savedInstanceState: Bundle?) {
1617
super.onCreate(savedInstanceState)
1718
setContentView(R.layout.main_activity)
18-
GlideApp.get(this).setMemoryCategory(MemoryCategory.HIGH)
19+
Glide.get(this).setMemoryCategory(MemoryCategory.HIGH)
1920
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE)
2021
!= PackageManager.PERMISSION_GRANTED
2122
) {

‎samples/gallery/src/main/java/com/bumptech/glide/samples/gallery/RecyclerAdapter.kt

+3-2
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,20 @@ import com.bumptech.glide.samples.gallery.RecyclerAdapter.ListViewHolder
1515
import com.bumptech.glide.ListPreloader.PreloadSizeProvider
1616
import com.bumptech.glide.ListPreloader.PreloadModelProvider
1717
import com.bumptech.glide.RequestBuilder
18+
import com.bumptech.glide.RequestManager
1819
import com.bumptech.glide.load.Key
1920
import com.bumptech.glide.signature.MediaStoreSignature
2021
import com.bumptech.glide.util.Preconditions
2122

2223
/** Displays [com.bumptech.glide.samples.gallery.MediaStoreData] in a recycler view. */
2324
internal class RecyclerAdapter(
2425
context: Context,
25-
glideRequests: GlideRequests,
26+
glideRequests: RequestManager,
2627
) : RecyclerView.Adapter<ListViewHolder?>(), PreloadSizeProvider<MediaStoreData?>,
2728
PreloadModelProvider<MediaStoreData?> {
2829
private var data: List<MediaStoreData> = emptyList()
2930
private val screenWidth: Int
30-
private val requestBuilder: GlideRequest<Drawable>
31+
private val requestBuilder: RequestBuilder<Drawable>
3132
private var actualDimensions: IntArray? = null
3233

3334
override fun onCreateViewHolder(viewGroup: ViewGroup, viewType: Int): ListViewHolder {

0 commit comments

Comments
 (0)
Please sign in to comment.