Blob Blame History Raw
From bbae87dc1be3ae063796a582774bd5642cacdd5d Mon Sep 17 00:00:00 2001
From: David Faure <faure@kde.org>
Date: Wed, 18 Jun 2014 20:29:04 +0200
Subject: [PATCH 08/12] Don't require a job to handle messageboxes.

The POP3 ioslave doesn't have a job when it gets here.
---
 kio/kio/usernotificationhandler.cpp | 27 +++++++++++++--------------
 1 file changed, 13 insertions(+), 14 deletions(-)

diff --git a/kio/kio/usernotificationhandler.cpp b/kio/kio/usernotificationhandler.cpp
index 10043cf..2b2e091 100644
--- a/kio/kio/usernotificationhandler.cpp
+++ b/kio/kio/usernotificationhandler.cpp
@@ -19,7 +19,7 @@
 #include "usernotificationhandler_p.h"
 
 #include "slave.h"
-#include "job_p.h"
+#include "jobuidelegate.h"
 
 #include <kdebug.h>
 
@@ -76,19 +76,18 @@ void UserNotificationHandler::processRequest()
 
         if (m_cachedResults.contains(key)) {
             result = *(m_cachedResults[key]);
-        } else if (r->slave->job()) {
-            SimpleJobPrivate* jobPrivate = SimpleJobPrivate::get(r->slave->job());
-            if (jobPrivate) {
-                result = jobPrivate->requestMessageBox(r->type,
-                                                      r->data.value(MSG_TEXT).toString(),
-                                                      r->data.value(MSG_CAPTION).toString(),
-                                                      r->data.value(MSG_YES_BUTTON_TEXT).toString(),
-                                                      r->data.value(MSG_NO_BUTTON_TEXT).toString(),
-                                                      r->data.value(MSG_YES_BUTTON_ICON).toString(),
-                                                      r->data.value(MSG_NO_BUTTON_ICON).toString(),
-                                                      r->data.value(MSG_DONT_ASK_AGAIN).toString(),
-                                                      r->data.value(MSG_META_DATA).toMap());
-            }
+        } else {
+            JobUiDelegate ui;
+            const JobUiDelegate::MessageBoxType type = static_cast<JobUiDelegate::MessageBoxType>(r->type);
+            result = ui.requestMessageBox(type,
+                                          r->data.value(MSG_TEXT).toString(),
+                                          r->data.value(MSG_CAPTION).toString(),
+                                          r->data.value(MSG_YES_BUTTON_TEXT).toString(),
+                                          r->data.value(MSG_NO_BUTTON_TEXT).toString(),
+                                          r->data.value(MSG_YES_BUTTON_ICON).toString(),
+                                          r->data.value(MSG_NO_BUTTON_ICON).toString(),
+                                          r->data.value(MSG_DONT_ASK_AGAIN).toString(),
+                                          r->data.value(MSG_META_DATA).toMap());
             m_cachedResults.insert(key, new int(result));
         }
     } else {
-- 
1.8.3.1