@@ -15,6 +15,7 @@
17import QtQuick 2.4
17import QtQuick 2.4
18+import QtQuick.Window 2.2
18import Ubuntu.Settings.Menus 0.1 as Menus
19import Ubuntu.Settings.Menus 0.1 as Menus
19import Ubuntu.Settings.Components 0.1
20import Ubuntu.Settings.Components 0.1
20import QMenuModel 0.1
21import QMenuModel 0.1
@@ -22,6 +23,7 @@ import Utils 0.1 as Utils
22import Ubuntu.Components.ListItems 1.3 as ListItems
23import Ubuntu.Components.ListItems 1.3 as ListItems
23import Ubuntu.Components 1.3
24import Ubuntu.Components 1.3
24import Unity.Session 0.1
25import Unity.Session 0.1
26+import Unity.Platform 1.0
27 id: menuFactory
29 id: menuFactory
@@ -61,9 +63,11 @@ Item {
62 "com.canonical.indicator.calendar": calendarMenu,
64 "com.canonical.indicator.calendar": calendarMenu,
63 "com.canonical.indicator.location": timezoneMenu,
65 "com.canonical.indicator.location": timezoneMenu,
67+ "indicator-session": {
65− "indicator.user-menu-item": userMenuItem,
68+ "indicator.user-menu-item": Platform.isPC ? userMenuItem : null,
66− "indicator.guest-menu-item": userMenuItem
69+ "indicator.guest-menu-item": Platform.isPC ? userMenuItem : null,
70+ "com.canonical.indicator.switch": Screen.width >= units.gu(90) ? switchMenu : null // Desktop mode switch
68 "indicator-messages" : {
72 "indicator-messages" : {
69 "com.canonical.indicator.button" : messagesButtonMenu
73 "com.canonical.indicator.button" : messagesButtonMenu
@@ -977,6 +981,14 @@ Item {
979 function load(modelData, context) {
983 function load(modelData, context) {
984+ // tweak indicator-session items
985+ if (context === "indicator-session") {
986+ if ((modelData.action === "indicator.logout" || modelData.action === "indicator.suspend" || modelData.action === "indicator.hibernate")
987+ && !Platform.isPC) {
988+ return null; // logout, suspend and hibernate hidden on devices
980 if (modelData.type !== undefined && modelData.type !== "") {
992 if (modelData.type !== undefined && modelData.type !== "") {
981 var component = undefined;
993 var component = undefined;