QMenu with icons not happenning

I think I found the issue

sample:

from krita import *
from PyQt5 import QtWidgets, QtCore, QtGui, uic

QApplication.setAttribute(Qt.AA_DontShowIconsInMenus, True)

icon = Krita.instance().icon('folder-pictures')

cmenu = QMenu()

action_0 = QAction(text="0",
                icon=icon,
                iconVisibleInMenu=True,  # overrides Qt.AA_DontShowIconsInMenu
                parent=cmenu
                )
action_1 = QAction(text="1",
                icon=icon,
                iconVisibleInMenu=True,  # overrides Qt.AA_DontShowIconsInMenu
                parent=cmenu
                )
action_2 = QAction(text="2",
                icon=icon,
                iconVisibleInMenu=True,  # overrides Qt.AA_DontShowIconsInMenu
                parent=cmenu
                )
                
cmenu_0 = cmenu.addAction(action_0)
cmenu_1 = cmenu.addAction(action_1)
cmenu_2 = cmenu.addAction(action_2)

# Execute
position = QPoint(100,100)
action = cmenu.exec_(position)
# Triggers
if action == cmenu_0:
    QtCore.qDebug("0")
if action == cmenu_1:
    QtCore.qDebug("1")
if action == cmenu_2:
    QtCore.qDebug("2")

If you have the icon set on the action before you set it up on the qmenu it will not trigger the action.

however if you set up the icon on the qmenu element it will trigger the action.

sample:

from krita import *
from PyQt5 import QtWidgets, QtCore, QtGui, uic

QApplication.setAttribute(Qt.AA_DontShowIconsInMenus, False)

icon = Krita.instance().icon('folder-pictures')

cmenu = QMenu()

cmenu_0 = cmenu.addAction("0")
cmenu_1 = cmenu.addAction("1")
cmenu_2 = cmenu.addAction("2")
# Icons
cmenu_0.setIcon(icon)
cmenu_1.setIcon(icon)
cmenu_2.setIcon(icon)

# Execute
position = QPoint(100,100)
action = cmenu.exec_(position)
# Triggers
if action == cmenu_0:
    QtCore.qDebug("0")
if action == cmenu_1:
    QtCore.qDebug("1")
if action == cmenu_2:
    QtCore.qDebug("2")

Must be this the reason why it is unactive for Windows.