Indicate whether a key is set for the buffer.
[quassel.git] / src / core / coreuserinputhandler.cpp
index 24d5f8b..12c13cd 100644 (file)
@@ -368,12 +368,17 @@ void CoreUserInputHandler::handleKeyx(const BufferInfo &bufferInfo, const QStrin
         parms.prepend(bufferInfo.bufferName());
     else if (parms.count() != 1) {
         emit displayMsg(Message::Info, bufname,
-            tr("[usage] /keyx [<nick|channel>] Initiates a DH1080 key exchange with the target."));
+            tr("[usage] /keyx [<nick>] Initiates a DH1080 key exchange with the target."));
         return;
     }
 
     QString target = parms.at(0);
 
+    if (network()->isChannelName(target)) {
+        emit displayMsg(Message::Info, bufname, tr("It is only possible to exchange keys in a query buffer."));
+        return;
+    }
+
     Cipher *cipher = network()->cipher(target);
     if (!cipher) // happens when there is no CoreIrcChannel for the target
         return;