<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Mathias Panzenb&ouml;ck wrote:<br>
<blockquote cite="mid:4BD18C61.2020500@gmx.net" type="cite">
  <blockquote type="cite">
    <blockquote type="cite">
      <pre wrap="">Dropping files from my KDE Desktop into amaroks playlist seems to be broken.</pre>
    </blockquote>
  </blockquote>
</blockquote>
<br>
Pfew! <br>
<br>
a) I can reproduce your exact fail mode.<br>
<br>
b) I found the culprit. It's a bug in Qt!<br>
<br>
It's unrelated to my MIME changes, this line in PrettyListView.cpp
triggers it:<br>
&nbsp;&nbsp;&nbsp; setMouseTracking( true );<br>
<br>
introduced in commit 234138ba372e3be466c216fcdd564c2e50915b7a by
Oleksandr Khayrullin and Nikolaj.<br>
<br>
<br>
--<br>
The code in Qt that detects the start of a mouse drag is pretty fragile
(IMHO). See 'mouseMoveEvent()' in <br>
&nbsp;
<a class="moz-txt-link-freetext" href="http://qt.gitorious.org/qt/qt/blobs/master/src/gui/itemviews/qabstractitemview.cpp">http://qt.gitorious.org/qt/qt/blobs/master/src/gui/itemviews/qabstractitemview.cpp</a><br>
<br>
It 1) never checks the state of the mouse buttons, nor 2) does it check
whether another drag is already in progress.<br>
<br>
Apparently crusty old code that Trolltech didn't update when they
introduced the 'setMouseTracking()' feature.<br>
<br>
<br>
--<br>
Oleksandr Khayrullin / Nikolaj, you have 2 ways to work around this bug:<br>
<ul>
  <li>Don't use 'setMouseTracking()' for the foreseeable future.<br>
    <br>
  </li>
  <li>Override 'mouseMoveEvent()', and only call
'QListView::mouseMoveEvent()' if 'event-&gt;buttons != 0'.<br>
  </li>
</ul>
<br>
&nbsp;&nbsp;&nbsp; Cheers,<br>
&nbsp;&nbsp;&nbsp; Nanno<br>
<br>
</body>
</html>