broulik added a comment.
What happens if there is only one activity? I don't use activities and I don't want a complicated submenu for pinning applications in this case. INLINE COMMENTS > ContextMenu.qml:413 > + > + var createNewItem = function(id, title, url, activities) { > + var result = menu.newMenuItem(activitiesLaunchersMenu); Imho this should be a regular function() like the others > ContextMenu.qml:422 > + > + for (var j = 0; j < activities.length; ++j) { > + if (id == activities[j]) { result.checked = activities.some(function(activity) { return activity === id }) > ContextMenu.qml:442 > + > + menu.onVisualParentChanged.connect(function() { > + Don't you keep adding a connection everytime you call refresh()? > ContextMenu.qml:464 > + > + for (var i = 0; i < runningActivities.length; ++i) { > + var id = runningActivities[i]; runningActivities.forEach(function(activity) { createNewItem(activity, name, ...) }) REPOSITORY rPLASMADESKTOP Plasma Desktop REVISION DETAIL https://phabricator.kde.org/D3106 EMAIL PREFERENCES https://phabricator.kde.org/settings/panel/emailpreferences/ To: ivan, #plasma, mart, hein Cc: broulik, plasma-devel, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas