@@ -235,7 +235,7 @@ Item {
235 property int draggedIndex: -1
235 property int draggedIndex: -1
236 property var selectedItem
236 property var selectedItem
237 property bool preDragging: false
237 property bool preDragging: false
238− property bool dragging: selectedItem !== undefined && selectedItem.dragging
238+ property bool dragging: selectedItem !== undefined && selectedItem !== null && selectedItem.dragging
239 property bool postDragging: false
239 property bool postDragging: false
240 property int startX
240 property int startX
241 property int startY
241 property int startY
@@ -243,13 +243,20 @@ Item {
244 onPressed: {
244 onPressed: {
245 selectedItem = launcherListView.itemAt(mouseX, mouseY + launcherListView.realContentY)
245 selectedItem = launcherListView.itemAt(mouseX, mouseY + launcherListView.realContentY)
246+ if (selectedItem !== null) {
246− selectedItem.highlighted = true
247+ selectedItem.highlighted = true
249 onClicked: {
251 onClicked: {
250 var index = Math.floor((mouseY + launcherListView.realContentY) / launcherListView.realItemHeight);
252 var index = Math.floor((mouseY + launcherListView.realContentY) / launcherListView.realItemHeight);
251 var clickedItem = launcherListView.itemAt(mouseX, mouseY + launcherListView.realContentY)
253 var clickedItem = launcherListView.itemAt(mouseX, mouseY + launcherListView.realContentY)
255+ // Check if we actually clicked an item or only at the spacing in between
256+ if (clickedItem === null) {
253 // First/last item do the scrolling at more than 12 degrees
260 // First/last item do the scrolling at more than 12 degrees
254 if (index == 0 || index == launcherListView.count - 1) {
261 if (index == 0 || index == launcherListView.count - 1) {
255 if (clickedItem.angle > 12) {
262 if (clickedItem.angle > 12) {
@@ -287,6 +294,10 @@ Item {
287 draggedIndex = -1;
294 draggedIndex = -1;
297+ if (!selectedItem) {
290 selectedItem.highlighted = false
301 selectedItem.highlighted = false
291 selectedItem.dragging = false;
302 selectedItem.dragging = false;
292 selectedItem = undefined;
303 selectedItem = undefined;