in case of job failure, be sure we don't leave the context menu just hanging around there
svn path=/trunk/KDE/kdelibs/; revision=1029846
This commit is contained in:
parent
2d2c2ea22f
commit
4cd5189513
@ -1233,6 +1233,7 @@ void ContainmentPrivate::dropData(QPointF scenePos, QPoint screenPos, QGraphicsS
|
||||
KIO::JobFlags flags = KIO::HideProgressInfo;
|
||||
KIO::TransferJob *job = KIO::get(url, KIO::NoReload, flags);
|
||||
dropPoints[job] = dropEvent->scenePos();
|
||||
QObject::connect(job, SIGNAL(result(KJob*)), q, SLOT(dropJobResult(KJob*)));
|
||||
QObject::connect(job, SIGNAL(mimetype(KIO::Job *, const QString&)),
|
||||
q, SLOT(mimeTypeRetrieved(KIO::Job *, const QString&)));
|
||||
|
||||
@ -1342,7 +1343,16 @@ void ContainmentPrivate::remoteAppletReady(Plasma::AccessAppletJob *job)
|
||||
q->addApplet(job->applet(), pos);
|
||||
}
|
||||
|
||||
void ContainmentPrivate::mimeTypeRetrieved(KIO::Job * job, const QString &mimetype)
|
||||
void ContainmentPrivate::dropJobResult(KJob *job)
|
||||
{
|
||||
if (job->error()) {
|
||||
// TODO: error feedback
|
||||
clearDataForMimeJob(qobject_cast<KIO::Job *>(job));
|
||||
kDebug() << "ERROR" << job->error() << ' ' << job->errorString();
|
||||
}
|
||||
}
|
||||
|
||||
void ContainmentPrivate::mimeTypeRetrieved(KIO::Job *job, const QString &mimetype)
|
||||
{
|
||||
kDebug() << "Mimetype Job returns." << mimetype;
|
||||
if (job->error()) {
|
||||
|
@ -586,6 +586,7 @@ class PLASMA_EXPORT Containment : public Applet
|
||||
* This slot is called when the 'stat' after a job event has finished.
|
||||
*/
|
||||
Q_PRIVATE_SLOT(d, void mimeTypeRetrieved(KIO::Job *, const QString &))
|
||||
Q_PRIVATE_SLOT(d, void dropJobResult(KJob *))
|
||||
|
||||
friend class Applet;
|
||||
friend class AppletPrivate;
|
||||
|
@ -88,6 +88,7 @@ public:
|
||||
void clearDataForMimeJob(KIO::Job *job);
|
||||
void remoteAppletReady(Plasma::AccessAppletJob *job);
|
||||
void mimeTypeRetrieved(KIO::Job *job, const QString &mimetype);
|
||||
void dropJobResult(KJob *);
|
||||
void containmentActions(KMenu &desktopMenu);
|
||||
void appletActions(KMenu &desktopMenu, Applet *applet, bool includeApplet);
|
||||
bool showContextMenu(const QPointF &point, const QPoint &screenPos, bool includeApplet, bool isMouseEvent);
|
||||
|
Loading…
Reference in New Issue
Block a user