Fix "Show Launcher when not running" option in taskbar widget

Review Request #112241 - Created Aug. 24, 2013 and discarded

Bhushan Shah
KDE/4.11, master
kde-workspace, plasma
Fix the crash in plasma-desktop caused by newer QML taskbar widget.

Simple steps to reproduce this crash.

1) Pin any task/application to taskbar using "show launcher when not running" option.
2) Close application.
3) Desktop crashes.

Reason :

1) In Tasks::itemGeometryChanged(int,int,int,int,int) line 300 it checks for three conditions, 

  -> pointer to task is not null
  -> taskItem itself is not null
  -> scene is not null

2) This condition gets false when item is LauncherItem. In function later line 334 when calling iconRect.moveTopLeft(QPoint) function it gets crashed.

Patch :

This patch adds check in if condition to check if taskItem is TaskManager::LauncherItemType and return from function if this is launcher item.

compilation - check
installation - check
plasmoidviewer - check
in panel - check
independently - check
Eike Hein
Bhushan Shah
Review request changed

Status: Discarded

Change Summary:

Superseded by kde-workspace 6878e972 and 750a5b90, which avoid attempts to publish icon geometry for launcher items (saving us some cycles) and make itemGeometryChanged() perform more sanity checking regardless, respectively.