Package: libqscintilla2-8
Version: 2.6-3
Severity: important
Tags: patch

Hi,

since 2.6, libqscintilla2 breaks apps that define custom keyboard shortcuts.
You can test it by using qscintilla2-2.6/example-Qt4/ and changing
mainwindow.cpp:

....
#include <Qsci/qscicommandset.h>
....
MainWindow::MainWindow()
{
    textEdit = new QsciScintilla;

    // these two are important
    textEdit->standardCommands()->clearKeys();
    textEdit->standardCommands()->clearAlternateKeys();

    setCentralWidget(textEdit);

    createActions();
....

The attached patch by upstream fixes the issue for me.
Please include it until 2.6.1 is released.

Regards
Evgeni

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.2.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libqscintilla2-8 depends on:
ii  libc6       2.13-26
ii  libgcc1     1:4.6.2-13
ii  libqtcore4  4:4.7.4-2
ii  libqtgui4   4:4.7.4-2
ii  libstdc++6  4.6.2-13

libqscintilla2-8 recommends no packages.

libqscintilla2-8 suggests no packages.

-- no debconf information
Index: qscintilla2-2.6/Qt4/qsciscintilla.cpp
===================================================================
--- qscintilla2-2.6.orig/Qt4/qsciscintilla.cpp	2011-11-11 14:02:16.000000000 +0100
+++ qscintilla2-2.6/Qt4/qsciscintilla.cpp	2012-02-09 20:29:01.223115096 +0100
@@ -4037,15 +4039,6 @@
 
         if (ke->key())
         {
-            // We want any of the standard context menu shortcuts.
-            if (ke == QKeySequence::Undo || ke == QKeySequence::Redo ||
-                ke == QKeySequence::Cut || ke == QKeySequence::Copy ||
-                ke == QKeySequence::Paste || ke == QKeySequence::SelectAll)
-            {
-                ke->accept();
-                return true;
-            }
-
             // We want ordinary characters.
             if ((ke->modifiers() == Qt::NoModifier || ke->modifiers() == Qt::ShiftModifier || ke->modifiers() == Qt::KeypadModifier) && ke->key() < Qt::Key_Escape)
             {

Reply via email to