Changeset View
Changeset View
Standalone View
Standalone View
applets/taskmanager/package/contents/ui/ContextMenu.qml
| Show First 20 Lines • Show All 332 Lines • ▼ Show 20 Line(s) | 318 | function refresh() { | |||
|---|---|---|---|---|---|
| 333 | }); | 333 | }); | ||
| 334 | 334 | | |||
| 335 | menuItem = menu.newMenuItem(activitiesDesktopsMenu); | 335 | menuItem = menu.newMenuItem(activitiesDesktopsMenu); | ||
| 336 | menuItem.text = i18n("All Activities"); | 336 | menuItem.text = i18n("All Activities"); | ||
| 337 | menuItem.checkable = true; | 337 | menuItem.checkable = true; | ||
| 338 | menuItem.checked = Qt.binding(function() { | 338 | menuItem.checked = Qt.binding(function() { | ||
| 339 | return menu.visualParent && menu.get(atm.Activities).length === 0; | 339 | return menu.visualParent && menu.get(atm.Activities).length === 0; | ||
| 340 | }); | 340 | }); | ||
| 341 | menuItem.clicked.connect(function() { | 341 | menuItem.toggled.connect(function(checked) { | ||
| 342 | var checked = menuItem.checked; | | |||
| 343 | var newActivities = undefined; // will cast to an empty QStringList i.e all activities | 342 | var newActivities = undefined; // will cast to an empty QStringList i.e all activities | ||
| 344 | if (!checked) { | 343 | if (!checked) { | ||
| 345 | newActivities = new Array(activityInfo.currentActivity); | 344 | newActivities = new Array(activityInfo.currentActivity); | ||
| 346 | } | 345 | } | ||
| 347 | tasksModel.requestActivities(menu.modelIndex, newActivities); | 346 | tasksModel.requestActivities(menu.modelIndex, newActivities); | ||
| 348 | }); | 347 | }); | ||
| 349 | 348 | | |||
| 350 | menu.newSeparator(activitiesDesktopsMenu); | 349 | menu.newSeparator(activitiesDesktopsMenu); | ||
| 351 | 350 | | |||
| 352 | var runningActivities = activityInfo.runningActivities(); | 351 | var runningActivities = activityInfo.runningActivities(); | ||
| 353 | for (var i = 0; i < runningActivities.length; ++i) { | 352 | for (var i = 0; i < runningActivities.length; ++i) { | ||
| 354 | var activityId = runningActivities[i]; | 353 | var activityId = runningActivities[i]; | ||
| 355 | 354 | | |||
| 356 | menuItem = menu.newMenuItem(activitiesDesktopsMenu); | 355 | menuItem = menu.newMenuItem(activitiesDesktopsMenu); | ||
| 357 | menuItem.text = activityInfo.activityName(runningActivities[i]); | 356 | menuItem.text = activityInfo.activityName(runningActivities[i]); | ||
| 358 | menuItem.checkable = true; | 357 | menuItem.checkable = true; | ||
| 359 | menuItem.checked = Qt.binding( (function(activityId) { | 358 | menuItem.checked = Qt.binding( (function(activityId) { | ||
| 360 | return function() { | 359 | return function() { | ||
| 361 | return menu.visualParent && menu.get(atm.Activities).indexOf(activityId) >= 0; | 360 | return menu.visualParent && menu.get(atm.Activities).indexOf(activityId) >= 0; | ||
| 362 | }; | 361 | }; | ||
| 363 | })(activityId)); | 362 | })(activityId)); | ||
| 364 | menuItem.clicked.connect((function(activityId) { | 363 | menuItem.toggled.connect((function(activityId) { | ||
| 365 | return function () { | 364 | return function (checked) { | ||
| 366 | var checked = menuItem.checked; | | |||
| 367 | var newActivities = menu.get(atm.Activities); | 365 | var newActivities = menu.get(atm.Activities); | ||
| 368 | if (checked) { | 366 | if (checked) { | ||
| 369 | newActivities = newActivities.concat(activityId); | 367 | newActivities = newActivities.concat(activityId); | ||
| 370 | } else { | 368 | } else { | ||
| 371 | var index = newActivities.indexOf(activityId) | 369 | var index = newActivities.indexOf(activityId) | ||
| 372 | if (index < 0) { | 370 | if (index < 0) { | ||
| 373 | return; | 371 | return; | ||
| 374 | } | 372 | } | ||
| 375 | newActivities = newActivities.splice(index, 1); | 373 | | ||
| 374 | newActivities.splice(index, 1); | ||||
| 376 | } | 375 | } | ||
| 377 | return tasksModel.requestActivities(menu.modelIndex, newActivities); | 376 | return tasksModel.requestActivities(menu.modelIndex, newActivities); | ||
| 378 | }; | 377 | }; | ||
| 379 | })(activityId)); | 378 | })(activityId)); | ||
broulik: You could have passed the correct menuItem in here just like it's already done correctly with… | |||||
| 380 | } | 379 | } | ||
| 381 | 380 | | |||
| 382 | menu.newSeparator(activitiesDesktopsMenu); | 381 | menu.newSeparator(activitiesDesktopsMenu); | ||
| 383 | } | 382 | } | ||
| 384 | 383 | | |||
| 385 | Component.onCompleted: refresh() | 384 | Component.onCompleted: refresh() | ||
| 386 | } | 385 | } | ||
| 387 | } | 386 | } | ||
| ▲ Show 20 Lines • Show All 270 Lines • Show Last 20 Lines | |||||
You could have passed the correct menuItem in here just like it's already done correctly with activityId