@@ -251,34 +251,18 @@ Item {
251251 onTriggered: {
252252 menuModel.activate(menuIndex);
253253 }
254−
255− // FIXME : At the moment, the indicators aren't using
256− // com.canonical.indicators.link for settings menu. Need to fudge it.
257− property bool settingsMenu: menuData && menuData.action.indexOf("settings") > -1 || false
258− backColor: settingsMenu ? Qt.rgba(1,1,1,0.07) : "transparent"
259− component: settingsMenu ? buttonForSettings : undefined
260− Component {
261− id: buttonForSettings
262− Icon {
263− name: "settings"
264− height: units.gu(3)
265− width: height
266− color: theme.palette.normal.backgroundText
267− }
268− }
269254 }
270255 }
271256
272257 Component {
273258 id: linkMenu;
274259
275− Menus.StandardMenu {
260+ Menus.BaseLayoutMenu {
276261 objectName: "linkMenu"
277262 property QtObject menuData: null
278263 property int menuIndex: -1
279264
280265 text: menuData && menuData.label || ""
281− iconSource: menuData && menuData.icon || ""
282266 enabled: menuData && menuData.sensitive || false
283267 highlightWhenPressed: false
284268
@@ -288,15 +272,21 @@ Item {
288272
289273 backColor: Qt.rgba(1,1,1,0.07)
290274
291− component: menuData.icon ? icon : undefined
292− Component {
293− id: icon
294− Icon {
295− source: menuData.icon
296− height: units.gu(3)
297− width: height
298− color: theme.palette.normal.backgroundText
275+ slots: Icon {
276+ source: {
277+ if (menuData) {
278+ if (menuData.icon && menuData.icon != "") {
279+ return menuData.icon
280+ } else if (menuData.action.indexOf("settings") > -1) {
281+ return "image://theme/settings"
282+ }
283+ }
284+ return ""
299285 }
286+ height: units.gu(3)
287+ width: height
288+ color: theme.palette.normal.backgroundText
289+ SlotsLayout.position: SlotsLayout.Trailing
300290 }
301291 }
302292 }
@@ -1073,6 +1063,11 @@ Item {
10731063 if (modelData.isSeparator) {
10741064 return separatorMenu;
10751065 }
1066+ if (modelData.action !== undefined && modelData.action.indexOf("settings") > -1) {
1067+ // FIXME : At the moment, the indicators aren't using
1068+ // com.canonical.indicators.link for settings menu. Need to fudge it.
1069+ return linkMenu;
1070+ }
10761071 return standardMenu;
10771072 }
10781073}