Здравствуйте!
Jmix version: 2.1.1. Столкнулись со следующей проблемой - если создать пункт меню типа Bean, то он не выделяется цветом при активации.
Когда стали пробовать разные варианты, то заметили, что выделяется цветом не тот пункт меню, который активирован, а тот, в котором указан открытый экран.
Воспроизводили на примере git@github.com:jmix-framework/jmix-petclinic-2.git
.
menu.xml:
<item id="myVisitsViewId" view="petclinic_MyVisits"
title="msg://io.jmix.petclinic.view.visit/myVisitsView.title" icon="CLIPBOARD_USER"/>
<menu opened="true" id="petclinic" title="msg://io.jmix.petclinic/menu.petclinic.title" icon="CLIPBOARD_PULSE">
<item id="myVisitsViewFromBeanId" bean="petclinic_MenuBean" title="msg://io.jmix.petclinic/menu_config.browseMyVisitsItem.title"
beanMethod="browseMyVisits" icon="CLIPBOARD_USER"/>
<item view="petclinic_Pet.list" title="msg://io.jmix.petclinic.view.pet.pet/petListView.title"/>
<item view="petclinic_Owner.list" title="msg://io.jmix.petclinic.view.owner/ownerListView.title"/>
<item view="petclinic_Visit.list" title="msg://io.jmix.petclinic.view.visit/visitListView.title"/>
<item id="myVisitsViewId2" view="petclinic_MyVisits"
title="msg://io.jmix.petclinic.view.visit/myVisitsView.title" icon="CLIPBOARD_USER"/>
</menu>
MenuBean:
@Component("petclinic_MenuBean")
public class MenuBean {
@Autowired
private ViewNavigators viewNavigators;
public void browseMyVisits() {
viewNavigators.view(MyVisitsView.class)
.navigate();
}
}
Скрин результата при нажатии на пункт меню, в котором вызов экрана осуществляется из MenuBean:
Видно что при открытии экрана подсвечиваются пункты меню, которые связаны с экраном (id “myVisitsViewId” и “myVisitsViewId2”), а не то которое активировано (id=“myVisitsViewFromBeanId”).
Как можно сделать, чтобы выделялся цветом именно тот пункт меню, который активирован?