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