diff --git a/applets/taskmanager/package/contents/ui/ContextMenu.qml b/applets/taskmanager/package/contents/ui/ContextMenu.qml --- a/applets/taskmanager/package/contents/ui/ContextMenu.qml +++ b/applets/taskmanager/package/contents/ui/ContextMenu.qml @@ -40,15 +40,15 @@ minimumWidth: visualParent.width onStatusChanged: { - if (visualParent && visualParent.launcherUrl != null && status == PlasmaComponents.DialogStatus.Open) { - launcherToggleAction.checked = (tasksModel.launcherPosition(visualParent.launcherUrl) != -1); + if (visualParent && visualParent.launcherUrlWithoutIcon != null && status == PlasmaComponents.DialogStatus.Open) { + launcherToggleAction.checked = (tasksModel.launcherPosition(visualParent.launcherUrlWithoutIcon) != -1); } else if (status == PlasmaComponents.DialogStatus.Closed) { menu.destroy(); } } function show() { - loadDynamicLaunchActions(visualParent.launcherUrl); + loadDynamicLaunchActions(visualParent.launcherUrlWithoutIcon); openRelative(); } @@ -199,7 +199,7 @@ PlasmaComponents.MenuItem { visible: (visualParent && !visualParent.isLauncher && !visualParent.isStartup) - enabled: visualParent && visualParent.launcherUrl != null + enabled: visualParent && visualParent.launcherUrlWithoutIcon != null text: i18n("Start New Instance") icon: "system-run" @@ -212,17 +212,17 @@ visible: (visualParent && !visualParent.isLauncher && !visualParent.isStartup) - enabled: visualParent && visualParent.launcherUrl != null + enabled: visualParent && visualParent.launcherUrlWithoutIcon != null checkable: true text: i18n("Show A Launcher When Not Running") onClicked: { - if (tasksModel.launcherPosition(visualParent.launcherUrl) != -1) { - tasksModel.requestRemoveLauncher(visualParent.launcherUrl); + if (tasksModel.launcherPosition(visualParent.launcherUrlWithoutIcon) != -1) { + tasksModel.requestRemoveLauncher(visualParent.launcherUrlWithoutIcon); } else { - tasksModel.requestAddLauncher(visualParent.launcherUrl); + tasksModel.requestAddLauncher(visualParent.launcherUrl()); } } } @@ -232,7 +232,7 @@ text: i18n("Remove Launcher") - onClicked: tasksModel.requestRemoveLauncher(visualParent.launcherUrl); + onClicked: tasksModel.requestRemoveLauncher(visualParent.launcherUrlWithoutIcon); } diff --git a/applets/taskmanager/package/contents/ui/Task.qml b/applets/taskmanager/package/contents/ui/Task.qml --- a/applets/taskmanager/package/contents/ui/Task.qml +++ b/applets/taskmanager/package/contents/ui/Task.qml @@ -58,7 +58,7 @@ property int wheelDelta: 0 // FIXME Clean up all these props. - property variant launcherUrl: model.LauncherUrl != undefined ? model.LauncherUrl : false + property variant launcherUrlWithoutIcon: model.LauncherUrlWithoutIcon property bool isClosable: model.IsClosable === true property bool isMovable: model.IsMovable === true @@ -187,7 +187,7 @@ if (pressX != -1 && mouse.buttons == Qt.LeftButton && dragHelper.isDrag(pressX, pressY, mouse.x, mouse.y)) { tasks.dragSource = task; dragHelper.startDrag(task, model.MimeType, model.MimeData, - model.LauncherUrl, model.decoration); + model.LauncherUrlWithoutIcon, model.decoration); pressX = -1; pressY = -1; @@ -207,7 +207,7 @@ import org.kde.plasma.private.taskmanager 0.1 as TaskManagerApplet; TaskManagerApplet.SmartLauncherItem { }", task); - smartLauncher.launcherUrl = Qt.binding(function() { return model.LauncherUrl; }); + smartLauncher.launcherUrl = Qt.binding(function() { return model.LauncherUrlWithoutIcon; }); smartLauncherItem = smartLauncher; } @@ -218,6 +218,10 @@ : tasksModel.makeModelIndex(index)); } + function launcherUrl() { + return model.LauncherUrl; + } + PlasmaCore.FrameSvgItem { id: frame @@ -264,7 +268,7 @@ return model.IsLauncher ? model.GenericName : toolTip.generateSubText(model); }); toolTipDelegate.launcherUrl = Qt.binding(function() { - return model.LauncherUrl; + return model.LauncherUrlWithoutIcon; }); } }