Fixed
Status Update
Comments
lp...@google.com <lp...@google.com> #2
This also brings back dialog content size animations issues :( But on all devices this time.
See attached video
Repro:
Dialog(
onDismissRequest = {
if (dialogState.canDismiss.value) {
dialogNavigator.hide()
}
},
properties = properties,
content = {
Surface(
modifier = modifier
.safeContentPadding()
.fillMaxWidth(0.8f)
.animateContentSize(),
shape = shape,
color = backgroundColor,
contentColor = contentColor,
) {
.....A composable that change it's size
}
},
)
so...@gmail.com <so...@gmail.com> #3
Can you give a fuller example for the animateContentSize()
problem?
Description
When using a SummaryProvider with MultiSelectListPreference to display a summary of the currently selected items, SummaryProvider#provideSummary() is not called so the summary is not updated to represent the newly selected items. This is because notifyChanged() is not called from within setValues().
Comparison of code from ListPreference and MultiSelectListPreference
--- ListPreference ---
public void setValue(String value) {
// Always persist/notify the first time.
final boolean changed = !TextUtils.equals(mValue, value);
if (changed || !mValueSet) {
mValue = value;
mValueSet = true;
persistString(value);
if (changed) {
notifyChanged();
}
}
}
--- --- ---
--- MultiSelectListPreference ---
public void setValues(Set<String> values) {
mValues.clear();
mValues.addAll(values);
persistStringSet(values);
}
--- --- ---
Current workaround: subclass MultiSelectListPreference and override:
@Override
public void setValues(Set<String> values) {
super.setValues(values);
notifyChanged();
}