Bug 136950

Summary: konversation does not honour the kde settings for keyboard shortcuts everywhere
Product: [Applications] konversation Reporter: Halla Rempt <halla>
Component: generalAssignee: Konversation Bugs <konversation-bugs-null>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Halla Rempt 2006-11-06 15:19:20 UTC
Version:            (using KDE KDE 3.5.5)
Installed from:    Ubuntu Packages

I do not use the default shortcuts for cut copy and paste (ctrl-c etc), but the old cua shortcuts. In the line where I enter my messages, these shortcuts work, but if I select something in the are with all messages over the text entry area, only ctrl-c copies, not the shortcut I have added in kcontrol.
Comment 1 Eike Hein 2006-11-23 23:43:10 UTC
SVN commit 607280 by hein:

Move some KTextEdit functionality in our KTextBrowser
derivative to support copy/paste shortcuts other than
the default Ctrl+C/V ones in the ircview.
BUG:136950


 M  +3 -0      ChangeLog  
 M  +2 -0      src/chatwindow.cpp  
 M  +2 -0      src/ircinput.cpp  
 M  +11 -1     src/ircview.cpp  


--- trunk/extragear/network/konversation/ChangeLog #607279:607280
@@ -44,6 +44,9 @@
 - Fixed bug leading to crash upon initiating DCC Chat when "Focus new tabs"
   was enabled.
 - Support command aliases in network connect commands.
+- Fixed copy/paste from the ircview widget with shortcuts other than the
+  default Ctrl+C/V ones.
+
 -------------------------------------------------------------------------------
 
 Changes from 1.0 to 1.0.1
--- trunk/extragear/network/konversation/src/chatwindow.cpp #607279:607280
@@ -445,6 +445,8 @@
 {
     if(e->type() == QEvent::KeyPress)
     {
+        kdDebug() << "muh" << endl;
+
         QKeyEvent* ke = static_cast<QKeyEvent*>(e);
 
         bool scrollMod = (Preferences::useMultiRowInputBox() ? false : (ke->state() == Qt::ShiftButton));
--- trunk/extragear/network/konversation/src/ircinput.cpp #607279:607280
@@ -221,6 +221,8 @@
 // Take care of Tab, Cursor and so on
 void IRCInput::keyPressEvent(QKeyEvent* e)
 {
+        kdDebug() << "bloo" << endl;
+
     switch(e->key())
     {
         case Key_Tab:
--- trunk/extragear/network/konversation/src/ircview.cpp #607279:607280
@@ -51,6 +51,7 @@
 #include <kmenubar.h>
 #include <kfiledialog.h>
 #include <kio/job.h>
+#include <kstdaccel.h>
 
 #include "channel.h"
 #include "dccchat.h"
@@ -1541,9 +1542,18 @@
 
 void IRCView::keyPressEvent(QKeyEvent* e)
 {
-    if((e->key() == Qt::Key_V) && (e->state() == Qt::ControlButton))
+    KKey key(e);
+
+    if (KStdAccel::copy().contains(key))
     {
+        copy();
+        e->accept();
+        return;
+    }
+    else if (KStdAccel::paste().contains(key))
+    {
         emit textPasted(false);
+        e->accept();
         return;
     }