Skip to content

Instantly share code, notes, and snippets.

@Marchuck
Marchuck / AssistedViewModel.kt
Last active December 9, 2019 20:43
AssistedViewModel
class AssistedViewModel @AssistedInject constructor(
private val dependency1: Dependency1,
private val dependency2: Dependency2,
...
@Assisted private val id: Int){
@AssistedInject.Factory
interface Factory{ fun create(id: Int) : AssistedViewModel }
}
@Marchuck
Marchuck / SomeFragment.kt
Created November 17, 2019 20:30
SomeFragment
class SomeFragment: Fragment(){
@Inject factory: AssistedViewModel.Factory
override fun onActivityCreated(savedInstanceState: Bundle?){
super.onActivityCreated(savedInstanceState)
val viewModel = factory.create(301)
...
}
class CounterViewModelFactory(val name: String) : ViewModelProvider.Factory {
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
return CounterViewModel(name) as T
}
}
//inside activity
val viewModel: CounterViewModel by lazy {
ViewModelProvider(
MainActivity@ this,
fun generateImage(width: Int, height: Int): Bitmap {
val bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888)
val canvas = Canvas(bitmap)
val paint = Paint()
val path = generatePath()
canvas.drawPath(path, paint)
return bitmap
}
@Marchuck
Marchuck / AccessibilityChecksTest.kt
Created April 25, 2026 12:04
automate verification my composables have issues with a11y
package com.marchuck.accessibilitychecks
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.size
import androidx.compose.ui.Modifier
import androidx.compose.ui.semantics.contentDescription
import androidx.compose.ui.semantics.semantics
import androidx.compose.ui.test.junit4.accessibility.enableAccessibilityChecks