@@ -16,6 +16,8 @@ import com.shifthackz.aisdv1.core.model.UiText
1616import com.shifthackz.aisdv1.core.model.asUiText
1717import com.shifthackz.aisdv1.presentation.R
1818import com.shifthackz.aisdv1.presentation.core.GenerationMviIntent
19+ import com.shifthackz.aisdv1.presentation.core.ImageToImageIntent
20+ import com.shifthackz.aisdv1.presentation.modal.crop.CropImageModal
1921import com.shifthackz.aisdv1.presentation.modal.embedding.EmbeddingScreen
2022import com.shifthackz.aisdv1.presentation.modal.extras.ExtrasScreen
2123import com.shifthackz.aisdv1.presentation.modal.history.InputHistoryScreen
@@ -24,6 +26,7 @@ import com.shifthackz.aisdv1.presentation.modal.tag.EditTagDialog
2426import com.shifthackz.aisdv1.presentation.model.Modal
2527import com.shifthackz.aisdv1.presentation.screen.gallery.detail.GalleryDetailIntent
2628import com.shifthackz.aisdv1.presentation.screen.gallery.list.GalleryIntent
29+ import com.shifthackz.aisdv1.presentation.screen.inpaint.InPaintIntent
2730import com.shifthackz.aisdv1.presentation.screen.settings.SettingsIntent
2831import com.shifthackz.aisdv1.presentation.screen.setup.ServerSetupIntent
2932import com.shifthackz.aisdv1.presentation.widget.dialog.DecisionInteractiveDialog
@@ -46,6 +49,7 @@ fun ModalRenderer(
4649 processIntent(GenerationMviIntent .SetModal (Modal .None ))
4750 processIntent(GalleryIntent .DismissDialog )
4851 processIntent(GalleryDetailIntent .DismissDialog )
52+ processIntent(InPaintIntent .ScreenModal .Dismiss )
4953 }
5054 when (screenModal) {
5155 Modal .None -> Unit
@@ -223,5 +227,20 @@ fun ModalRenderer(
223227 onConfirmAction = { processIntent(ServerSetupIntent .LocalModel .DeleteConfirm (screenModal.model)) },
224228 onDismissRequest = dismiss,
225229 )
230+
231+ Modal .ClearInPaintConfirm -> DecisionInteractiveDialog (
232+ title = R .string.interaction_in_paint_clear_title.asUiText(),
233+ text = R .string.interaction_in_paint_clear_title.asUiText(),
234+ confirmActionResId = R .string.yes,
235+ dismissActionResId = R .string.no,
236+ onConfirmAction = { processIntent(InPaintIntent .Action .Clear ) },
237+ onDismissRequest = dismiss,
238+ )
239+
240+ is Modal .Image .Crop -> CropImageModal (
241+ bitmap = screenModal.bitmap,
242+ onDismissRequest = dismiss,
243+ onResult = { processIntent(ImageToImageIntent .UpdateImage (it)) }
244+ )
226245 }
227246}
0 commit comments