[rd debugger] IJPL-228675 Trigger presentation update on set value

GitOrigin-RevId: d146165cb32e5a2edbeeb16f0e2176f69888162c
This commit is contained in:
Maksim Zuev
2026-01-14 13:59:35 +00:00
committed by intellij-monorepo-bot
parent 7e839b87f2
commit 56fd81d321
@@ -9,7 +9,8 @@ import kotlinx.coroutines.CompletableDeferred
internal class BackendXDebuggerValueModifierApi : XDebuggerValueModifierApi {
override suspend fun setValue(xValueId: XValueId, xExpressionDto: XExpressionDto): TimeoutSafeResult<SetValueResult> {
val xValue = BackendXValueModel.findById(xValueId)?.xValue ?: return CompletableDeferred(SetValueResult.Success)
val model = BackendXValueModel.findById(xValueId) ?: return CompletableDeferred(SetValueResult.Success)
val xValue = model.xValue
val valueSetDeferred = CompletableDeferred<SetValueResult>()
val modifier = xValue.modifier
@@ -21,6 +22,8 @@ internal class BackendXDebuggerValueModifierApi : XDebuggerValueModifierApi {
modifier.setValue(xExpressionDto.xExpression(), object : XValueModifier.XModificationCallback {
override fun valueModified() {
valueSetDeferred.complete(SetValueResult.Success)
// Future compute presentations should have the updated presentation
model.computeValuePresentation()
}
override fun errorOccurred(errorMessage: @NlsContexts.DialogMessage String) {