Как можно подписаться на событие компонента, в MainView

Jmix version: 2.2.1
Jmix Studio plugin version: 2.2.1-233
IntelliJ version: IntelliJ IDEA 2023.3.6 (Ultimate Edition)

Добрый день!
Есть необходимость подписаться на событие изменения текстового поля в дочернем контроллере экрана, но само текстовое поле находится в заголовке главного экрана.
Пробовал делать через PARENT_CONTROLLER:

@Subscribe(id = "textFieldId", target = Target.PARENT_CONTROLLER)

На что получаю исключение unsupported @subscribe target PARENT_CONTROLLER

Есть какие-нибудь правильные способы пробрасывать события в дочерние экраны?

Здравствуйте,

Расскажите поподробнее о вашем кейсе, какое поле вы изменяете и как открываете дочернее окно, в формате диалога или новой страницы? Будет здорово, если вы приложите демо проект.

Для изменения полей между экранами можно воспользоваться несколькими способами, например:

  • Один из них это отправлять кастомный UIEvent из дочернего экрана и отлавливать этот UIEvent в родительском. Здесь вы можете посмотреть пример данного подхода:
  • Другой способ, это добавить слушатель на закрытие дочернего окна в MainView и после закрытия экрана менять ваше поле. Этот вариант подойдёт для диалогового окна.

https://docs.jmix.ru/jmix/flow-ui/opening-views.html#dialog-windows

Это некоторые из способов, в зависимости от вашего кейса можно применить и другие подходы.

С Уважением,
Никита