@@ -174,6 +174,25 @@ Item {
179+ Menus.CheckableMenu {
180+ objectName: "checkableMenu"
181+ property QtObject menuData: null
182+ property int menuIndex: -1
184+ text: menuData && menuData.label || ""
185+ enabled: menuData && menuData.sensitive || false
186+ checked: menuData && menuData.isToggled || false
189+ menuModel.activate(menuIndex);
190+ shell.hideIndicatorMenu(UbuntuAnimation.BriskDuration);
177 Component {
196 Component {
178 id: switchMenu;
197 id: switchMenu;
179 Menus.SwitchMenu {
198 Menus.SwitchMenu {
@@ -386,6 +405,7 @@ Item {
386 Component {
405 Component {
387 id: mediaPayerMenu;
406 id: mediaPayerMenu;
388 Menus.MediaPlayerMenu {
407 Menus.MediaPlayerMenu {
408+ objectName: "mediaPayerMenu"
389 property QtObject menuData: null
409 property QtObject menuData: null
390 property var menuModel: menuFactory.menuModel
410 property var menuModel: menuFactory.menuModel
391 property int menuIndex: -1
411 property int menuIndex: -1
@@ -410,6 +430,7 @@ Item {
410 Component {
430 Component {
411 id: playbackItemMenu;
431 id: playbackItemMenu;
412 Menus.PlaybackItemMenu {
432 Menus.PlaybackItemMenu {
433+ objectName: "playbackItemMenu"
413 property var menuModel: menuFactory.menuModel
434 property var menuModel: menuFactory.menuModel
414 property int menuIndex: -1
435 property int menuIndex: -1
415 property var extendedData: menuData && menuData.ext || undefined
436 property var extendedData: menuData && menuData.ext || undefined
@@ -467,6 +488,9 @@ Item {
467 return component;
488 return component;
491+ if (modelData.isCheck || modelData.isRadio) {
492+ return checkableMenu;
470 if (modelData.isSeparator) {
494 if (modelData.isSeparator) {
471 return separatorMenu;
495 return separatorMenu;