Does compose somehow disable skipping after a conf...
# compose
v
Does compose somehow disable skipping after a config change? I'm seeing composables with no parameters and reading no state be recomposed after a locale change
s
I think it gets recreated because
staticCompositionLocalOf
is changed, not sure which one though.
1
v
Copy code
LocalIndication: true
LocalInspectionTables: true
LocalSaveableStateRegistry: true
LocalContext: true
LocalLifecycleOwner: true
LocalSavedStateRegistryOwner: true
LocalView: true
LocalAccessibilityManager: true
LocalAutofill: true
LocalAutofillTree: true
LocalClipboardManager: true
LocalDensity: true
LocalFocusManager: true
LocalFontFamilyResolver: true
LocalFontLoader: true
LocalHapticFeedback: true
LocalInputModeManager: true
LocalLayoutDirection: true
LocalSoftwareKeyboardController: false
LocalTextInputService: false
LocalTextToolbar: true
LocalUriHandler: true
LocalViewConfiguration: true
LocalWindowInfo: true
LocalInspectionMode: true
equals checks, looks like LocalSoftwareKeyboardController and LocalTextInputService are different
Copy code
override val textInputService
        get() = TextInputService(
            platformTextInputServiceInterceptor(
                legacyTextInputServiceAndroid
            )
        )
Copy code
val softwareKeyboardController: SoftwareKeyboardController
        get() = DelegatingSoftwareKeyboardController(textInputService)
the provided values' getters seem to always instantiate new classes
s
Feel free to file a bug to Compose Text to maybe fix this, not sure if that is correct
@Zach Klippenstein (he/him) [MOD] pinging you directly since you introduced both changes, you probably know best if those are required for some functionality
z
Oops, will fix