summaryrefslogtreecommitdiff
path: root/debian/patches
diff options
context:
space:
mode:
authorFathi Boudra <fabo@debian.org>2009-10-02 15:37:32 +0200
committerFathi Boudra <fabo@debian.org>2009-10-02 15:37:32 +0200
commit6ead2a63c9a3d104632f81a1e49ccb8ab84c3012 (patch)
treee289c480c2fe81c7f11449f5db6ac5a23003a640 /debian/patches
parent5422040a99aa94a377d7470bf6a67efdc095b47b (diff)
downloadqt4-x11-6ead2a63c9a3d104632f81a1e49ccb8ab84c3012.tar.gz
* Update changelog:
- Fix CVE-2009-2700 - QSSlCertificate incorrect verification of SSL certificate with NUL in subjectAltName. (Closes: #545793) - Fix a regresion in Qt 4.5.2 causing a broken clipboard with scim. (Closes: #544764, #546282) * Add qt-coy patches: - 0288-more-x-keycodes.diff Fill gap of X.org/XFree multimedia/special/launcher keys. Qt up to 4.5.x is missing whole setup of multimedia keys already defined by X. - 0289-context-for-shortcuts-tr.diff Some languages have special rules for using "+" to concatenate strings and for example it needs to be Ctrl + Shift instead of Ctrl+Shift, adding context to these strings helps creating a more correct translation - 0287-qmenu-respect-minwidth.diff If one sets a minimum width on a QMenu and that size is larger than the smallest size needed by the large menu item, it ignores the minimum width and just uses the largest menu item size. * Refresh and adjust patches. * Remove patches: - 0286-fix-error-string - Merged upstream. - 0287-attempt-to-fix-header-installation-for-phonon - Merged upstream. - 06_CVE-2009-1725 - Merged upstream.
Diffstat (limited to 'debian/patches')
-rw-r--r--debian/patches/0180-window-role.diff2
-rw-r--r--debian/patches/0216-allow-isystem-for-headers.diff4
-rw-r--r--debian/patches/0274-shm-native-image-fix.diff15
-rw-r--r--debian/patches/0286-fix-error-string.diff18
-rw-r--r--debian/patches/0287-attempt-to-fix-header-installation-for-phonon.diff129
-rw-r--r--debian/patches/0287-qmenu-respect-minwidth.diff26
-rw-r--r--debian/patches/0288-more-x-keycodes.diff651
-rw-r--r--debian/patches/0289-context-for-shortcuts-tr.diff65
-rw-r--r--debian/patches/05_append_qt4_target.diff18
-rw-r--r--debian/patches/06_CVE-2009-1725.diff26
-rw-r--r--debian/patches/07_trust_dpkg-arch_over_uname-m.diff2
-rw-r--r--debian/patches/09_qmake_lflags_as-needed.diff2
-rw-r--r--debian/patches/10_config_tests_fixes.diff28
-rw-r--r--debian/patches/15_fix_qmake_makefile_generation.diff2
-rw-r--r--debian/patches/17_add_postgresql_8.3_support.diff6
-rw-r--r--debian/patches/70_hppa_ldcw_fix.diff5
-rw-r--r--debian/patches/series6
17 files changed, 775 insertions, 230 deletions
diff --git a/debian/patches/0180-window-role.diff b/debian/patches/0180-window-role.diff
index dd3b21a..c27cede 100644
--- a/debian/patches/0180-window-role.diff
+++ b/debian/patches/0180-window-role.diff
@@ -86,7 +86,7 @@ Trolltech task ID : 168283 (status: "fixed" for Qt 4.4.0, but effectively refuse
}
// set client leader property
-@@ -2763,6 +2767,17 @@ void QWidgetPrivate::setWindowRole()
+@@ -2765,6 +2769,17 @@ void QWidgetPrivate::setWindowRole()
(unsigned char *)windowRole.constData(), windowRole.length());
}
diff --git a/debian/patches/0216-allow-isystem-for-headers.diff b/debian/patches/0216-allow-isystem-for-headers.diff
index 2b9528b..d3c2438 100644
--- a/debian/patches/0216-allow-isystem-for-headers.diff
+++ b/debian/patches/0216-allow-isystem-for-headers.diff
@@ -27,7 +27,7 @@ bugs.kde.org number :
--- a/configure
+++ b/configure
-@@ -928,6 +928,11 @@ while [ "$#" -gt 0 ]; do
+@@ -960,6 +960,11 @@ while [ "$#" -gt 0 ]; do
VAL=`echo $1 | sed 's,-D,,'`
fi
;;
@@ -39,7 +39,7 @@ bugs.kde.org number :
-I?*|-I)
VAR="add_ipath"
if [ "$1" = "-I" ]; then
-@@ -1891,6 +1896,9 @@ while [ "$#" -gt 0 ]; do
+@@ -1930,6 +1935,9 @@ while [ "$#" -gt 0 ]; do
add_ipath)
I_FLAGS="$I_FLAGS -I\"${VAL}\""
;;
diff --git a/debian/patches/0274-shm-native-image-fix.diff b/debian/patches/0274-shm-native-image-fix.diff
index ed45180..05e414b 100644
--- a/debian/patches/0274-shm-native-image-fix.diff
+++ b/debian/patches/0274-shm-native-image-fix.diff
@@ -19,15 +19,16 @@ bugs.kde.org number : none
--- a/src/gui/image/qnativeimage.cpp
+++ b/src/gui/image/qnativeimage.cpp
-@@ -147,7 +147,6 @@ QNativeImage::QNativeImage(int width, in
+@@ -144,7 +144,7 @@ QImage::Format QNativeImage::systemForma
+ #elif defined(Q_WS_X11) && !defined(QT_NO_MITSHM)
+
+ QNativeImage::QNativeImage(int width, int height, QImage::Format format,bool /* isTextBuffer */, QWidget *widget)
+- : xshmimg(0), xshmpm(0)
++ : xshmimg(0)
{
if (!X11->use_mitshm) {
- xshmimg = 0;
-- xshmpm = 0;
image = QImage(width, height, format);
- return;
- }
-@@ -191,11 +190,6 @@ QNativeImage::QNativeImage(int width, in
+@@ -195,11 +195,6 @@ QNativeImage::QNativeImage(int width, in
shmctl(xshminfo.shmid, IPC_RMID, 0);
return;
}
@@ -39,7 +40,7 @@ bugs.kde.org number : none
}
-@@ -204,10 +198,6 @@ QNativeImage::~QNativeImage()
+@@ -208,10 +203,6 @@ QNativeImage::~QNativeImage()
if (!xshmimg)
return;
diff --git a/debian/patches/0286-fix-error-string.diff b/debian/patches/0286-fix-error-string.diff
deleted file mode 100644
index 8206f1f..0000000
--- a/debian/patches/0286-fix-error-string.diff
+++ /dev/null
@@ -1,18 +0,0 @@
-From 4b5ae1db24fa1b96f00ef62bd2e1063a8a313e5c Mon Sep 17 00:00:00 2001
-From: Albert Astals Cid <aacid@kde.org>
-Date: Sat, 27 Jun 2009 14:19:23 +0200
-Subject: [PATCH 16/16] Fix #error line not to have a ' as it's not correct
-
----
- src/3rdparty/webkit/WebCore/DerivedSources.cpp | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
---- a/src/3rdparty/webkit/WebCore/DerivedSources.cpp
-+++ b/src/3rdparty/webkit/WebCore/DerivedSources.cpp
-@@ -334,5 +334,5 @@
- // want StaticConstructors.h to "pollute" all the source files we #include here
- // accidentally, so we'll throw an error whenever any file includes it.
- #ifdef StaticConstructors_h
--#error Don't include any file in DerivedSources.cpp that includes StaticConstructors.h
-+#error Do not include any file in DerivedSources.cpp that includes StaticConstructors.h
- #endif
diff --git a/debian/patches/0287-attempt-to-fix-header-installation-for-phonon.diff b/debian/patches/0287-attempt-to-fix-header-installation-for-phonon.diff
deleted file mode 100644
index 5d46ad7..0000000
--- a/debian/patches/0287-attempt-to-fix-header-installation-for-phonon.diff
+++ /dev/null
@@ -1,129 +0,0 @@
-From 2d1727e396d5dca24ae0fb6a45d35ffc1abd0c12 Mon Sep 17 00:00:00 2001
-From: Thiago Macieira <thiago.macieira@nokia.com>
-Date: Fri, 12 Jun 2009 14:27:54 +0200
-Subject: [PATCH] Attempt to fix header installation for Phonon.
-
-This is the long-standing issue of whether Phonon headers should be
-written with a capital P or a lowercase one. KDE releases of Phonon
-had <Phonon/CapitalClassName> whereas Qt 4.4 had <phonon/filename.h>.
-
-I tried to solve this before by adding a Phonon subdir next to phonon
-in include/, but that only compounded the error: the presence of two
-dirs caused problems and the installation wasn't fixed.
-
-So instead try to place Phonon/ClassName inside include/phonon. And
-fix the installation to do it properly: just copy the include/$lib dir
-into the target, then overwrite the .h files with the sources from
-src/$lib.
-
-Reviewed-by: Marius Storm-Olsen
-(cherry picked from commit 4b43263b870c17fd813d1d34f97146f4c725083e)
----
- bin/syncqt | 46 ++++++++++++++++++++++------------------------
- src/qt_install.pri | 16 ++++++++++++----
- 2 files changed, 34 insertions(+), 28 deletions(-)
-
---- a/bin/syncqt
-+++ b/bin/syncqt
-@@ -308,8 +308,6 @@ sub syncHeader {
- $header =~ s=\\=/=g;
- return copyFile($iheader, $header) if($copy);
-
-- my $iheader_no_basedir = $iheader;
-- $iheader_no_basedir =~ s,^$basedir/?,,;
- unless(-e "$header") {
- my $header_dir = dirname($header);
- mkpath $header_dir, 0777;
-@@ -798,10 +796,9 @@ foreach (@modules_to_sync) {
- my $class = $_;
- if ($class =~ m/::/) {
- $class =~ s,::,/,g;
-- $class = "../" . $class;
- }
- $class_lib_map_contents .= "QT_CLASS_LIB($_, $lib, $header_base)\n";
-- $header_copies++ if(syncHeader("$out_basedir/include/$lib/$class", $header, 0));
-+ $header_copies++ if(syncHeader("$out_basedir/include/$lib/$class", "$out_basedir/include/$lib/$header", 0));
- }
- } else {
- @headers = ( "$out_basedir/include/$lib/private/$header" );
-@@ -823,7 +820,6 @@ foreach (@modules_to_sync) {
- my $class = $_;
- if ($class =~ m/::/) {
- $class =~ s,::,/,g;
-- $class = "../" . $class;
- }
- my $class_header = fixPaths("$out_basedir/include/$lib/$class",
- $current_dir) . " ";
-@@ -844,25 +840,27 @@ foreach (@modules_to_sync) {
- $master_contents .= "#endif\n";
-
- unless($showonly) {
-- #generate the "master" include file
-- my $master_include = "$out_basedir/include/$lib/$lib";
-- $pri_install_files .= fixPaths($master_include, "$modules{$lib}") . " "; #get the master file installed too
-- if(-e "$master_include") {
-- open MASTERINCLUDE, "<$master_include";
-- local $/;
-- binmode MASTERINCLUDE;
-- my $oldmaster = <MASTERINCLUDE>;
-- close MASTERINCLUDE;
-- $oldmaster =~ s/\r//g; # remove \r's , so comparison is ok on all platforms
-- $master_include = 0 if($oldmaster eq $master_contents);
-- }
-- if($master_include && $master_contents) {
-- my $master_dir = dirname($master_include);
-- mkpath $master_dir, 0777;
-- print "header (master) created for $lib\n";
-- open MASTERINCLUDE, ">$master_include";
-- print MASTERINCLUDE "$master_contents";
-- close MASTERINCLUDE;
-+ unless ($lib eq "phonon") {
-+ #generate the "master" include file
-+ my $master_include = "$out_basedir/include/$lib/$lib";
-+ $pri_install_files .= fixPaths($master_include, "$modules{$lib}") . " "; #get the master file installed too
-+ if($master_include && -e "$master_include") {
-+ open MASTERINCLUDE, "<$master_include";
-+ local $/;
-+ binmode MASTERINCLUDE;
-+ my $oldmaster = <MASTERINCLUDE>;
-+ close MASTERINCLUDE;
-+ $oldmaster =~ s/\r//g; # remove \r's , so comparison is ok on all platforms
-+ $master_include = 0 if($oldmaster eq $master_contents);
-+ }
-+ if($master_include && $master_contents) {
-+ my $master_dir = dirname($master_include);
-+ mkpath $master_dir, 0777;
-+ print "header (master) created for $lib\n";
-+ open MASTERINCLUDE, ">$master_include";
-+ print MASTERINCLUDE "$master_contents";
-+ close MASTERINCLUDE;
-+ }
- }
-
- #handle the headers.pri for each module
---- a/src/qt_install.pri
-+++ b/src/qt_install.pri
-@@ -15,11 +15,19 @@ qt_install_headers {
- $$QT_SOURCE_TREE/src/corelib/arch/$$QT_ARCH/arch
- }
-
-- flat_headers.files = $$INSTALL_HEADERS
-- flat_headers.path = $$[QT_INSTALL_HEADERS]/Qt
-- INSTALLS += flat_headers
-+ equals(TARGET, phonon) {
-+ class_headers.path = $$[QT_INSTALL_HEADERS]/$$TARGET/Phonon
-+ } else {
-+ flat_headers.files = $$INSTALL_HEADERS
-+ flat_headers.path = $$[QT_INSTALL_HEADERS]/Qt
-+ INSTALLS += flat_headers
-
-- targ_headers.files = $$INSTALL_HEADERS $$SYNCQT.HEADER_CLASSES
-+ class_headers.path = $$[QT_INSTALL_HEADERS]/$$TARGET
-+ }
-+ class_headers.files = $$SYNCQT.HEADER_CLASSES
-+ INSTALLS += class_headers
-+
-+ targ_headers.files = $$INSTALL_HEADERS
- targ_headers.path = $$[QT_INSTALL_HEADERS]/$$TARGET
- INSTALLS += targ_headers
- }
diff --git a/debian/patches/0287-qmenu-respect-minwidth.diff b/debian/patches/0287-qmenu-respect-minwidth.diff
new file mode 100644
index 0000000..430f011
--- /dev/null
+++ b/debian/patches/0287-qmenu-respect-minwidth.diff
@@ -0,0 +1,26 @@
+From 01f26d0756839fbe783c637ca7dec5b7987f7e14 Mon Sep 17 00:00:00 2001
+From: Aaron Seigo <aseigo@kde.org>
+Date: Mon, 27 Jul 2009 21:46:22 -0600
+Subject: [PATCH 15/18] Make QMenu respect the minimum width set
+
+If one sets a minimum width on a QMenu and that size is larger than the
+smallest size needed by the large menu item, it ignores the minimum
+width and just uses the largest menu item size.
+
+This results in ugly painting artifacts. This currently affects
+(at least) the tasks widget in Plasma in KDE4.
+---
+ src/gui/widgets/qmenu.cpp | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+--- a/src/gui/widgets/qmenu.cpp
++++ b/src/gui/widgets/qmenu.cpp
+@@ -280,7 +280,7 @@ void QMenuPrivate::calcActionRects(QMap<
+
+
+ if (!sz.isEmpty()) {
+- max_column_width = qMax(max_column_width, sz.width());
++ max_column_width = qMax(q->minimumWidth(), qMax(max_column_width, sz.width()));
+ //wrapping
+ if (!scroll &&
+ y+sz.height()+vmargin > dh - (q->style()->pixelMetric(QStyle::PM_MenuDesktopFrameWidth, 0, q) * 2)) {
diff --git a/debian/patches/0288-more-x-keycodes.diff b/debian/patches/0288-more-x-keycodes.diff
new file mode 100644
index 0000000..6499039
--- /dev/null
+++ b/debian/patches/0288-more-x-keycodes.diff
@@ -0,0 +1,651 @@
+From 1a94cd7b132497f70a2b97ec2b58f6e2b1c5076a Mon Sep 17 00:00:00 2001
+From: Helio Chissini de Castro <helio@kde.org>
+Date: Fri, 10 Jul 2009 16:00:13 -0300
+Subject: [PATCH 16/18] Fill gap of X.org/XFree multimedia/special/launcher keys
+ Qt up to 4.5.x is missing whole setup of multimedia keys already defined by X
+
+---
+ src/corelib/global/qnamespace.h | 97 ++++++++++++-
+ src/gui/kernel/qkeymapper_x11.cpp | 286 ++++++++++++++++++++++++++++++-------
+ src/gui/kernel/qkeysequence.cpp | 174 +++++++++++++++++------
+ 3 files changed, 461 insertions(+), 96 deletions(-)
+
+--- a/src/corelib/global/qnamespace.h
++++ b/src/corelib/global/qnamespace.h
+@@ -895,12 +895,10 @@ public:
+ Key_Dead_Horn = 0x01001262,
+
+ // multimedia/internet keys - ignored by default - see QKeyEvent c'tor
+-
+ Key_Back = 0x01000061,
+ Key_Forward = 0x01000062,
+ Key_Stop = 0x01000063,
+ Key_Refresh = 0x01000064,
+-
+ Key_VolumeDown = 0x01000070,
+ Key_VolumeMute = 0x01000071,
+ Key_VolumeUp = 0x01000072,
+@@ -909,7 +907,6 @@ public:
+ Key_BassDown = 0x01000075,
+ Key_TrebleUp = 0x01000076,
+ Key_TrebleDown = 0x01000077,
+-
+ Key_MediaPlay = 0x01000080,
+ Key_MediaStop = 0x01000081,
+ Key_MediaPrevious = 0x01000082,
+@@ -918,13 +915,11 @@ public:
+ #endif
+ Key_MediaNext = 0x01000083,
+ Key_MediaRecord = 0x01000084,
+-
+ Key_HomePage = 0x01000090,
+ Key_Favorites = 0x01000091,
+ Key_Search = 0x01000092,
+ Key_Standby = 0x01000093,
+ Key_OpenUrl = 0x01000094,
+-
+ Key_LaunchMail = 0x010000a0,
+ Key_LaunchMedia = 0x010000a1,
+ Key_Launch0 = 0x010000a2,
+@@ -943,6 +938,98 @@ public:
+ Key_LaunchD = 0x010000af,
+ Key_LaunchE = 0x010000b0,
+ Key_LaunchF = 0x010000b1,
++ Key_MonBrightnessUp = 0x010000b2,
++ Key_MonBrightnessDown = 0x010000b3,
++ Key_KeyboardLightOnOff = 0x010000b4,
++ Key_KeyboardBrightnessUp = 0x010000b5,
++ Key_KeyboardBrightnessDown = 0x010000b6,
++ Key_PowerOff = 0x010000b7,
++ Key_WakeUp = 0x010000b8,
++ Key_Eject = 0x010000b9,
++ Key_ScreenSaver = 0x010000ba,
++ Key_WWW = 0x010000bb,
++ Key_Memo = 0x010000bc,
++ Key_LightBulb = 0x010000bd,
++ Key_Shop = 0x010000be,
++ Key_History = 0x010000bf,
++ Key_AddFavorite = 0x010000c0,
++ Key_HotLinks = 0x010000c1,
++ Key_BrightnessAdjust = 0x010000c2,
++ Key_Finance = 0x010000c3,
++ Key_Community = 0x010000c4,
++ Key_AudioRewind = 0x010000c5,
++ Key_BackForward = 0x010000c6,
++ Key_ApplicationLeft = 0x010000c7,
++ Key_ApplicationRight = 0x010000c8,
++ Key_Book = 0x010000c9,
++ Key_CD = 0x010000ca,
++ Key_Calculator = 0x010000cb,
++ Key_ToDoList = 0x010000cc,
++ Key_ClearGrab = 0x010000cd,
++ Key_Close = 0x010000ce,
++ Key_Copy = 0x010000cf,
++ Key_Cut = 0x010000d0,
++ Key_Display = 0x010000d1,
++ Key_DOS = 0x010000d2,
++ Key_Documents = 0x010000d3,
++ Key_Excel = 0x010000d4,
++ Key_Explorer = 0x010000d5,
++ Key_Game = 0x010000d6,
++ Key_Go = 0x010000d7,
++ Key_iTouch = 0x010000d8,
++ Key_LogOff = 0x010000d9,
++ Key_Market = 0x010000da,
++ Key_Meeting = 0x010000db,
++ Key_MenuKB = 0x010000dc,
++ Key_MenuPB = 0x010000dd,
++ Key_MySites = 0x010000de,
++ Key_News = 0x010000df,
++ Key_OfficeHome = 0x010000e0,
++ Key_Option = 0x010000e1,
++ Key_Paste = 0x010000e2,
++ Key_Phone = 0x010000e3,
++ Key_Calendar = 0x010000e4,
++ Key_Reply = 0x010000e5,
++ Key_Reload = 0x010000e6,
++ Key_RotateWindows = 0x010000e7,
++ Key_RotationPB = 0x010000e8,
++ Key_RotationKB = 0x010000e9,
++ Key_Save = 0x010000ea,
++ Key_Send = 0x010000eb,
++ Key_Spell = 0x010000ec,
++ Key_SplitScreen = 0x010000ed,
++ Key_Support = 0x010000ee,
++ Key_TaskPane = 0x010000ef,
++ Key_Terminal = 0x010000f0,
++ Key_Tools = 0x010000f1,
++ Key_Travel = 0x010000f2,
++ Key_Video = 0x010000f3,
++ Key_Word = 0x010000f4,
++ Key_Xfer = 0x010000f5,
++ Key_ZoomIn = 0x010000f6,
++ Key_ZoomOut = 0x010000f7,
++ Key_Away = 0x010000f8,
++ Key_Messenger = 0x010000f9,
++ Key_WebCam = 0x010000fa,
++ Key_MailForward = 0x010000fb,
++ Key_Pictures = 0x010000fc,
++ Key_Music = 0x010000fd,
++ Key_Battery = 0x010000fe,
++ Key_Bluetooth = 0x010000ff,
++ Key_WLAN = 0x01000100,
++ Key_UWB = 0x01000101,
++ Key_AudioForward = 0x01000102,
++ Key_AudioRepeat = 0x01000103,
++ Key_AudioRandomPlay = 0x01000104,
++ Key_Subtitle = 0x01000105,
++ Key_AudioCycleTrack = 0x01000106,
++ Key_Time = 0x01000107,
++ Key_Hibernate = 0x01000108,
++ Key_View = 0x01000109,
++ Key_TopMenu = 0x0100010a,
++ Key_PowerDown = 0x0100010b,
++ Key_Suspend = 0x0100010c,
++ Key_ContrastAdjust = 0x0100010d,
+
+ Key_MediaLast = 0x0100ffff,
+
+--- a/src/gui/kernel/qkeymapper_x11.cpp
++++ b/src/gui/kernel/qkeymapper_x11.cpp
+@@ -714,47 +714,144 @@ extern bool qt_sm_blockUserInput;
+ #define XK_KP_Delete 0xFF9F
+ #endif
+
+-// the next lines are taken from XFree > 4.0 (X11/XF86keysyms.h), defining some special
++// the next lines are taken on 10/2009 from X.org (X11/XF86keysym.h), defining some special
+ // multimedia keys. They are included here as not every system has them.
+-#define XF86XK_Standby 0x1008FF10
+-#define XF86XK_AudioLowerVolume 0x1008FF11
+-#define XF86XK_AudioMute 0x1008FF12
+-#define XF86XK_AudioRaiseVolume 0x1008FF13
+-#define XF86XK_AudioPlay 0x1008FF14
+-#define XF86XK_AudioStop 0x1008FF15
+-#define XF86XK_AudioPrev 0x1008FF16
+-#define XF86XK_AudioNext 0x1008FF17
+-#define XF86XK_HomePage 0x1008FF18
+-#define XF86XK_Calculator 0x1008FF1D
+-#define XF86XK_Mail 0x1008FF19
+-#define XF86XK_Start 0x1008FF1A
+-#define XF86XK_Search 0x1008FF1B
+-#define XF86XK_AudioRecord 0x1008FF1C
+-#define XF86XK_Back 0x1008FF26
+-#define XF86XK_Forward 0x1008FF27
+-#define XF86XK_Stop 0x1008FF28
+-#define XF86XK_Refresh 0x1008FF29
+-#define XF86XK_Favorites 0x1008FF30
+-#define XF86XK_AudioPause 0x1008FF31
+-#define XF86XK_AudioMedia 0x1008FF32
+-#define XF86XK_MyComputer 0x1008FF33
+-#define XF86XK_OpenURL 0x1008FF38
+-#define XF86XK_Launch0 0x1008FF40
+-#define XF86XK_Launch1 0x1008FF41
+-#define XF86XK_Launch2 0x1008FF42
+-#define XF86XK_Launch3 0x1008FF43
+-#define XF86XK_Launch4 0x1008FF44
+-#define XF86XK_Launch5 0x1008FF45
+-#define XF86XK_Launch6 0x1008FF46
+-#define XF86XK_Launch7 0x1008FF47
+-#define XF86XK_Launch8 0x1008FF48
+-#define XF86XK_Launch9 0x1008FF49
+-#define XF86XK_LaunchA 0x1008FF4A
+-#define XF86XK_LaunchB 0x1008FF4B
+-#define XF86XK_LaunchC 0x1008FF4C
+-#define XF86XK_LaunchD 0x1008FF4D
+-#define XF86XK_LaunchE 0x1008FF4E
+-#define XF86XK_LaunchF 0x1008FF4F
++#define XF86XK_MonBrightnessUp 0x1008FF02
++#define XF86XK_MonBrightnessDown 0x1008FF03
++#define XF86XK_KbdLightOnOff 0x1008FF04
++#define XF86XK_KbdBrightnessUp 0x1008FF05
++#define XF86XK_KbdBrightnessDown 0x1008FF06
++#define XF86XK_Standby 0x1008FF10
++#define XF86XK_AudioLowerVolume 0x1008FF11
++#define XF86XK_AudioMute 0x1008FF12
++#define XF86XK_AudioRaiseVolume 0x1008FF13
++#define XF86XK_AudioPlay 0x1008FF14
++#define XF86XK_AudioStop 0x1008FF15
++#define XF86XK_AudioPrev 0x1008FF16
++#define XF86XK_AudioNext 0x1008FF17
++#define XF86XK_HomePage 0x1008FF18
++#define XF86XK_Mail 0x1008FF19
++#define XF86XK_Start 0x1008FF1A
++#define XF86XK_Search 0x1008FF1B
++#define XF86XK_AudioRecord 0x1008FF1C
++#define XF86XK_Calculator 0x1008FF1D
++#define XF86XK_Memo 0x1008FF1E
++#define XF86XK_ToDoList 0x1008FF1F
++#define XF86XK_Calendar 0x1008FF20
++#define XF86XK_PowerDown 0x1008FF21
++#define XF86XK_ContrastAdjust 0x1008FF22
++#define XF86XK_Back 0x1008FF26
++#define XF86XK_Forward 0x1008FF27
++#define XF86XK_Stop 0x1008FF28
++#define XF86XK_Refresh 0x1008FF29
++#define XF86XK_PowerOff 0x1008FF2A
++#define XF86XK_WakeUp 0x1008FF2B
++#define XF86XK_Eject 0x1008FF2C
++#define XF86XK_ScreenSaver 0x1008FF2D
++#define XF86XK_WWW 0x1008FF2E
++#define XF86XK_Sleep 0x1008FF2F
++#define XF86XK_Favorites 0x1008FF30
++#define XF86XK_AudioPause 0x1008FF31
++#define XF86XK_AudioMedia 0x1008FF32
++#define XF86XK_MyComputer 0x1008FF33
++#define XF86XK_LightBulb 0x1008FF35
++#define XF86XK_Shop 0x1008FF36
++#define XF86XK_History 0x1008FF37
++#define XF86XK_OpenURL 0x1008FF38
++#define XF86XK_AddFavorite 0x1008FF39
++#define XF86XK_HotLinks 0x1008FF3A
++#define XF86XK_BrightnessAdjust 0x1008FF3B
++#define XF86XK_Finance 0x1008FF3C
++#define XF86XK_Community 0x1008FF3D
++#define XF86XK_AudioRewind 0x1008FF3E
++#define XF86XK_BackForward 0x1008FF3F
++#define XF86XK_Launch0 0x1008FF40
++#define XF86XK_Launch1 0x1008FF41
++#define XF86XK_Launch2 0x1008FF42
++#define XF86XK_Launch3 0x1008FF43
++#define XF86XK_Launch4 0x1008FF44
++#define XF86XK_Launch5 0x1008FF45
++#define XF86XK_Launch6 0x1008FF46
++#define XF86XK_Launch7 0x1008FF47
++#define XF86XK_Launch8 0x1008FF48
++#define XF86XK_Launch9 0x1008FF49
++#define XF86XK_LaunchA 0x1008FF4A
++#define XF86XK_LaunchB 0x1008FF4B
++#define XF86XK_LaunchC 0x1008FF4C
++#define XF86XK_LaunchD 0x1008FF4D
++#define XF86XK_LaunchE 0x1008FF4E
++#define XF86XK_LaunchF 0x1008FF4F
++#define XF86XK_ApplicationLeft 0x1008FF50
++#define XF86XK_ApplicationRight 0x1008FF51
++#define XF86XK_Book 0x1008FF52
++#define XF86XK_CD 0x1008FF53
++#define XF86XK_Calculater 0x1008FF54
++#define XF86XK_Clear 0x1008FF55
++#define XF86XK_ClearGrab 0x1008FE21
++#define XF86XK_Close 0x1008FF56
++#define XF86XK_Copy 0x1008FF57
++#define XF86XK_Cut 0x1008FF58
++#define XF86XK_Display 0x1008FF59
++#define XF86XK_DOS 0x1008FF5A
++#define XF86XK_Documents 0x1008FF5B
++#define XF86XK_Excel 0x1008FF5C
++#define XF86XK_Explorer 0x1008FF5D
++#define XF86XK_Game 0x1008FF5E
++#define XF86XK_Go 0x1008FF5F
++#define XF86XK_iTouch 0x1008FF60
++#define XF86XK_LogOff 0x1008FF61
++#define XF86XK_Market 0x1008FF62
++#define XF86XK_Meeting 0x1008FF63
++#define XF86XK_MenuKB 0x1008FF65
++#define XF86XK_MenuPB 0x1008FF66
++#define XF86XK_MySites 0x1008FF67
++#define XF86XK_News 0x1008FF69
++#define XF86XK_OfficeHome 0x1008FF6A
++#define XF86XK_Option 0x1008FF6C
++#define XF86XK_Paste 0x1008FF6D
++#define XF86XK_Phone 0x1008FF6E
++#define XF86XK_Reply 0x1008FF72
++#define XF86XK_Reload 0x1008FF73
++#define XF86XK_RotateWindows 0x1008FF74
++#define XF86XK_RotationPB 0x1008FF75
++#define XF86XK_RotationKB 0x1008FF76
++#define XF86XK_Save 0x1008FF77
++#define XF86XK_Send 0x1008FF7B
++#define XF86XK_Spell 0x1008FF7C
++#define XF86XK_SplitScreen 0x1008FF7D
++#define XF86XK_Support 0x1008FF7E
++#define XF86XK_TaskPane 0x1008FF7F
++#define XF86XK_Terminal 0x1008FF80
++#define XF86XK_Tools 0x1008FF81
++#define XF86XK_Travel 0x1008FF82
++#define XF86XK_Video 0x1008FF87
++#define XF86XK_Word 0x1008FF89
++#define XF86XK_Xfer 0x1008FF8A
++#define XF86XK_ZoomIn 0x1008FF8B
++#define XF86XK_ZoomOut 0x1008FF8C
++#define XF86XK_Away 0x1008FF8D
++#define XF86XK_Messenger 0x1008FF8E
++#define XF86XK_WebCam 0x1008FF8F
++#define XF86XK_MailForward 0x1008FF90
++#define XF86XK_Pictures 0x1008FF91
++#define XF86XK_Music 0x1008FF92
++#define XF86XK_Battery 0x1008FF93
++#define XF86XK_Bluetooth 0x1008FF94
++#define XF86XK_WLAN 0x1008FF95
++#define XF86XK_UWB 0x1008FF96
++#define XF86XK_AudioForward 0x1008FF97
++#define XF86XK_AudioRepeat 0x1008FF98
++#define XF86XK_AudioRandomPlay 0x1008FF99
++#define XF86XK_Subtitle 0x1008FF9A
++#define XF86XK_AudioCycleTrack 0x1008FF9B
++#define XF86XK_Time 0x1008FF9F
++#define XF86XK_Select 0x1008FFA0
++#define XF86XK_View 0x1008FFA1
++#define XF86XK_TopMenu 0x1008FFA2
++#define XF86XK_Suspend 0x1008FFA7
++#define XF86XK_Hibernate 0x1008FFA8
++
++
+ // end of XF86keysyms.h
+
+ // Special keys used by Qtopia, mapped into the X11 private keypad range.
+@@ -942,10 +1039,8 @@ static const unsigned int KeyTbl[] = {
+ XK_dead_hook, Qt::Key_Dead_Hook,
+ XK_dead_horn, Qt::Key_Dead_Horn,
+
+- // Special multimedia keys
+- // currently only tested with MS internet keyboard
+-
+- // browsing keys
++ // Special keys from X.org - This include multimedia keys,
++ // wireless/bluetooth/uwb keys, special launcher keys, etc.
+ XF86XK_Back, Qt::Key_Back,
+ XF86XK_Forward, Qt::Key_Forward,
+ XF86XK_Stop, Qt::Key_Stop,
+@@ -955,8 +1050,6 @@ static const unsigned int KeyTbl[] = {
+ XF86XK_OpenURL, Qt::Key_OpenUrl,
+ XF86XK_HomePage, Qt::Key_HomePage,
+ XF86XK_Search, Qt::Key_Search,
+-
+- // media keys
+ XF86XK_AudioLowerVolume, Qt::Key_VolumeDown,
+ XF86XK_AudioMute, Qt::Key_VolumeMute,
+ XF86XK_AudioRaiseVolume, Qt::Key_VolumeUp,
+@@ -965,13 +1058,106 @@ static const unsigned int KeyTbl[] = {
+ XF86XK_AudioPrev, Qt::Key_MediaPrevious,
+ XF86XK_AudioNext, Qt::Key_MediaNext,
+ XF86XK_AudioRecord, Qt::Key_MediaRecord,
+-
+- // launch keys
+ XF86XK_Mail, Qt::Key_LaunchMail,
+ XF86XK_MyComputer, Qt::Key_Launch0,
+- XF86XK_Calculator, Qt::Key_Launch1,
++ XF86XK_Calculator, Qt::Key_Calculator,
++ XF86XK_Memo, Qt::Key_Memo,
++ XF86XK_ToDoList, Qt::Key_ToDoList,
++ XF86XK_Calendar, Qt::Key_Calendar,
++ XF86XK_PowerDown, Qt::Key_PowerDown,
++ XF86XK_ContrastAdjust, Qt::Key_ContrastAdjust,
+ XF86XK_Standby, Qt::Key_Standby,
+-
++ XF86XK_MonBrightnessUp, Qt::Key_MonBrightnessUp,
++ XF86XK_MonBrightnessDown, Qt::Key_MonBrightnessDown,
++ XF86XK_KbdLightOnOff, Qt::Key_KeyboardLightOnOff,
++ XF86XK_KbdBrightnessUp, Qt::Key_KeyboardBrightnessUp,
++ XF86XK_KbdBrightnessDown, Qt::Key_KeyboardBrightnessDown,
++ XF86XK_PowerOff, Qt::Key_PowerOff,
++ XF86XK_WakeUp, Qt::Key_WakeUp,
++ XF86XK_Eject, Qt::Key_Eject,
++ XF86XK_ScreenSaver, Qt::Key_ScreenSaver,
++ XF86XK_WWW, Qt::Key_WWW,
++ XF86XK_Sleep, Qt::Key_Sleep,
++ XF86XK_LightBulb, Qt::Key_LightBulb,
++ XF86XK_Shop, Qt::Key_Shop,
++ XF86XK_History, Qt::Key_History,
++ XF86XK_AddFavorite, Qt::Key_AddFavorite,
++ XF86XK_HotLinks, Qt::Key_HotLinks,
++ XF86XK_BrightnessAdjust, Qt::Key_BrightnessAdjust,
++ XF86XK_Finance, Qt::Key_Finance,
++ XF86XK_Community, Qt::Key_Community,
++ XF86XK_AudioRewind, Qt::Key_AudioRewind,
++ XF86XK_BackForward, Qt::Key_BackForward,
++ XF86XK_ApplicationLeft, Qt::Key_ApplicationLeft,
++ XF86XK_ApplicationRight, Qt::Key_ApplicationRight,
++ XF86XK_Book, Qt::Key_Book,
++ XF86XK_CD, Qt::Key_CD,
++ XF86XK_Calculater, Qt::Key_Calculator,
++ XF86XK_Clear, Qt::Key_Clear,
++ XF86XK_ClearGrab, Qt::Key_ClearGrab,
++ XF86XK_Close, Qt::Key_Close,
++ XF86XK_Copy, Qt::Key_Copy,
++ XF86XK_Cut, Qt::Key_Cut,
++ XF86XK_Display, Qt::Key_Display,
++ XF86XK_DOS, Qt::Key_DOS,
++ XF86XK_Documents, Qt::Key_Documents,
++ XF86XK_Excel, Qt::Key_Excel,
++ XF86XK_Explorer, Qt::Key_Explorer,
++ XF86XK_Game, Qt::Key_Game,
++ XF86XK_Go, Qt::Key_Go,
++ XF86XK_iTouch, Qt::Key_iTouch,
++ XF86XK_LogOff, Qt::Key_LogOff,
++ XF86XK_Market, Qt::Key_Market,
++ XF86XK_Meeting, Qt::Key_Meeting,
++ XF86XK_MenuKB, Qt::Key_MenuKB,
++ XF86XK_MenuPB, Qt::Key_MenuPB,
++ XF86XK_MySites, Qt::Key_MySites,
++ XF86XK_News, Qt::Key_News,
++ XF86XK_OfficeHome, Qt::Key_OfficeHome,
++ XF86XK_Option, Qt::Key_Option,
++ XF86XK_Paste, Qt::Key_Paste,
++ XF86XK_Phone, Qt::Key_Phone,
++ XF86XK_Reply, Qt::Key_Reply,
++ XF86XK_Reload, Qt::Key_Reload,
++ XF86XK_RotateWindows, Qt::Key_RotateWindows,
++ XF86XK_RotationPB, Qt::Key_RotationPB,
++ XF86XK_RotationKB, Qt::Key_RotationKB,
++ XF86XK_Save, Qt::Key_Save,
++ XF86XK_Send, Qt::Key_Send,
++ XF86XK_Spell, Qt::Key_Spell,
++ XF86XK_SplitScreen, Qt::Key_SplitScreen,
++ XF86XK_Support, Qt::Key_Support,
++ XF86XK_TaskPane, Qt::Key_TaskPane,
++ XF86XK_Terminal, Qt::Key_Terminal,
++ XF86XK_Tools, Qt::Key_Tools,
++ XF86XK_Travel, Qt::Key_Travel,
++ XF86XK_Video, Qt::Key_Video,
++ XF86XK_Word, Qt::Key_Word,
++ XF86XK_Xfer, Qt::Key_Xfer,
++ XF86XK_ZoomIn, Qt::Key_ZoomIn,
++ XF86XK_ZoomOut, Qt::Key_ZoomOut,
++ XF86XK_Away, Qt::Key_Away,
++ XF86XK_Messenger, Qt::Key_Messenger,
++ XF86XK_WebCam, Qt::Key_WebCam,
++ XF86XK_MailForward, Qt::Key_MailForward,
++ XF86XK_Pictures, Qt::Key_Pictures,
++ XF86XK_Music, Qt::Key_Music,
++ XF86XK_Battery, Qt::Key_Battery,
++ XF86XK_Bluetooth, Qt::Key_Bluetooth,
++ XF86XK_WLAN, Qt::Key_WLAN,
++ XF86XK_UWB, Qt::Key_UWB,
++ XF86XK_AudioForward, Qt::Key_AudioForward,
++ XF86XK_AudioRepeat, Qt::Key_AudioRepeat,
++ XF86XK_AudioRandomPlay, Qt::Key_AudioRandomPlay,
++ XF86XK_Subtitle, Qt::Key_Subtitle,
++ XF86XK_AudioCycleTrack, Qt::Key_AudioCycleTrack,
++ XF86XK_Time, Qt::Key_Time,
++ XF86XK_Select, Qt::Key_Select,
++ XF86XK_View, Qt::Key_View,
++ XF86XK_TopMenu, Qt::Key_TopMenu,
++ XF86XK_Bluetooth, Qt::Key_Bluetooth,
++ XF86XK_Suspend, Qt::Key_Suspend,
++ XF86XK_Hibernate, Qt::Key_Hibernate,
+ XF86XK_Launch0, Qt::Key_Launch2,
+ XF86XK_Launch1, Qt::Key_Launch3,
+ XF86XK_Launch2, Qt::Key_Launch4,
+--- a/src/gui/kernel/qkeysequence.cpp
++++ b/src/gui/kernel/qkeysequence.cpp
+@@ -396,47 +396,139 @@ static const struct {
+ { Qt::Key_Menu, QT_TRANSLATE_NOOP("QShortcut", "Menu") },
+ { Qt::Key_Help, QT_TRANSLATE_NOOP("QShortcut", "Help") },
+
+- // Multimedia keys
+- { Qt::Key_Back, QT_TRANSLATE_NOOP("QShortcut", "Back") },
+- { Qt::Key_Forward, QT_TRANSLATE_NOOP("QShortcut", "Forward") },
+- { Qt::Key_Stop, QT_TRANSLATE_NOOP("QShortcut", "Stop") },
+- { Qt::Key_Refresh, QT_TRANSLATE_NOOP("QShortcut", "Refresh") },
+- { Qt::Key_VolumeDown, QT_TRANSLATE_NOOP("QShortcut", "Volume Down") },
+- { Qt::Key_VolumeMute, QT_TRANSLATE_NOOP("QShortcut", "Volume Mute") },
+- { Qt::Key_VolumeUp, QT_TRANSLATE_NOOP("QShortcut", "Volume Up") },
+- { Qt::Key_BassBoost, QT_TRANSLATE_NOOP("QShortcut", "Bass Boost") },
+- { Qt::Key_BassUp, QT_TRANSLATE_NOOP("QShortcut", "Bass Up") },
+- { Qt::Key_BassDown, QT_TRANSLATE_NOOP("QShortcut", "Bass Down") },
+- { Qt::Key_TrebleUp, QT_TRANSLATE_NOOP("QShortcut", "Treble Up") },
+- { Qt::Key_TrebleDown, QT_TRANSLATE_NOOP("QShortcut", "Treble Down") },
+- { Qt::Key_MediaPlay, QT_TRANSLATE_NOOP("QShortcut", "Media Play") },
+- { Qt::Key_MediaStop, QT_TRANSLATE_NOOP("QShortcut", "Media Stop") },
+- { Qt::Key_MediaPrevious,QT_TRANSLATE_NOOP("QShortcut", "Media Previous") },
+- { Qt::Key_MediaNext, QT_TRANSLATE_NOOP("QShortcut", "Media Next") },
+- { Qt::Key_MediaRecord, QT_TRANSLATE_NOOP("QShortcut", "Media Record") },
+- { Qt::Key_HomePage, QT_TRANSLATE_NOOP("QShortcut", "Home Page") },
+- { Qt::Key_Favorites, QT_TRANSLATE_NOOP("QShortcut", "Favorites") },
+- { Qt::Key_Search, QT_TRANSLATE_NOOP("QShortcut", "Search") },
+- { Qt::Key_Standby, QT_TRANSLATE_NOOP("QShortcut", "Standby") },
+- { Qt::Key_OpenUrl, QT_TRANSLATE_NOOP("QShortcut", "Open URL") },
+- { Qt::Key_LaunchMail, QT_TRANSLATE_NOOP("QShortcut", "Launch Mail") },
+- { Qt::Key_LaunchMedia, QT_TRANSLATE_NOOP("QShortcut", "Launch Media") },
+- { Qt::Key_Launch0, QT_TRANSLATE_NOOP("QShortcut", "Launch (0)") },
+- { Qt::Key_Launch1, QT_TRANSLATE_NOOP("QShortcut", "Launch (1)") },
+- { Qt::Key_Launch2, QT_TRANSLATE_NOOP("QShortcut", "Launch (2)") },
+- { Qt::Key_Launch3, QT_TRANSLATE_NOOP("QShortcut", "Launch (3)") },
+- { Qt::Key_Launch4, QT_TRANSLATE_NOOP("QShortcut", "Launch (4)") },
+- { Qt::Key_Launch5, QT_TRANSLATE_NOOP("QShortcut", "Launch (5)") },
+- { Qt::Key_Launch6, QT_TRANSLATE_NOOP("QShortcut", "Launch (6)") },
+- { Qt::Key_Launch7, QT_TRANSLATE_NOOP("QShortcut", "Launch (7)") },
+- { Qt::Key_Launch8, QT_TRANSLATE_NOOP("QShortcut", "Launch (8)") },
+- { Qt::Key_Launch9, QT_TRANSLATE_NOOP("QShortcut", "Launch (9)") },
+- { Qt::Key_LaunchA, QT_TRANSLATE_NOOP("QShortcut", "Launch (A)") },
+- { Qt::Key_LaunchB, QT_TRANSLATE_NOOP("QShortcut", "Launch (B)") },
+- { Qt::Key_LaunchC, QT_TRANSLATE_NOOP("QShortcut", "Launch (C)") },
+- { Qt::Key_LaunchD, QT_TRANSLATE_NOOP("QShortcut", "Launch (D)") },
+- { Qt::Key_LaunchE, QT_TRANSLATE_NOOP("QShortcut", "Launch (E)") },
+- { Qt::Key_LaunchF, QT_TRANSLATE_NOOP("QShortcut", "Launch (F)") },
++ // Special keys
++ // Includes multimedia, launcher, lan keys ( bluetooth, wireless )
++ // window navigation
++ { Qt::Key_Back, QT_TRANSLATE_NOOP("QShortcut", "Back") },
++ { Qt::Key_Forward, QT_TRANSLATE_NOOP("QShortcut", "Forward") },
++ { Qt::Key_Stop, QT_TRANSLATE_NOOP("QShortcut", "Stop") },
++ { Qt::Key_Refresh, QT_TRANSLATE_NOOP("QShortcut", "Refresh") },
++ { Qt::Key_VolumeDown, QT_TRANSLATE_NOOP("QShortcut", "Volume Down") },
++ { Qt::Key_VolumeMute, QT_TRANSLATE_NOOP("QShortcut", "Volume Mute") },
++ { Qt::Key_VolumeUp, QT_TRANSLATE_NOOP("QShortcut", "Volume Up") },
++ { Qt::Key_BassBoost, QT_TRANSLATE_NOOP("QShortcut", "Bass Boost") },
++ { Qt::Key_BassUp, QT_TRANSLATE_NOOP("QShortcut", "Bass Up") },
++ { Qt::Key_BassDown, QT_TRANSLATE_NOOP("QShortcut", "Bass Down") },
++ { Qt::Key_TrebleUp, QT_TRANSLATE_NOOP("QShortcut", "Treble Up") },
++ { Qt::Key_TrebleDown, QT_TRANSLATE_NOOP("QShortcut", "Treble Down") },
++ { Qt::Key_MediaPlay, QT_TRANSLATE_NOOP("QShortcut", "Media Play") },
++ { Qt::Key_MediaStop, QT_TRANSLATE_NOOP("QShortcut", "Media Stop") },
++ { Qt::Key_MediaPrevious, QT_TRANSLATE_NOOP("QShortcut", "Media Previous") },
++ { Qt::Key_MediaNext, QT_TRANSLATE_NOOP("QShortcut", "Media Next") },
++ { Qt::Key_MediaRecord, QT_TRANSLATE_NOOP("QShortcut", "Media Record") },
++ { Qt::Key_HomePage, QT_TRANSLATE_NOOP("QShortcut", "Home Page") },
++ { Qt::Key_Favorites, QT_TRANSLATE_NOOP("QShortcut", "Favorites") },
++ { Qt::Key_Search, QT_TRANSLATE_NOOP("QShortcut", "Search") },
++ { Qt::Key_Standby, QT_TRANSLATE_NOOP("QShortcut", "Standby") },
++ { Qt::Key_OpenUrl, QT_TRANSLATE_NOOP("QShortcut", "Open URL") },
++ { Qt::Key_LaunchMail, QT_TRANSLATE_NOOP("QShortcut", "Launch Mail") },
++ { Qt::Key_LaunchMedia, QT_TRANSLATE_NOOP("QShortcut", "Launch Media") },
++ { Qt::Key_Launch0, QT_TRANSLATE_NOOP("QShortcut", "Launch (0)") },
++ { Qt::Key_Launch1, QT_TRANSLATE_NOOP("QShortcut", "Launch (1)") },
++ { Qt::Key_Launch2, QT_TRANSLATE_NOOP("QShortcut", "Launch (2)") },
++ { Qt::Key_Launch3, QT_TRANSLATE_NOOP("QShortcut", "Launch (3)") },
++ { Qt::Key_Launch4, QT_TRANSLATE_NOOP("QShortcut", "Launch (4)") },
++ { Qt::Key_Launch5, QT_TRANSLATE_NOOP("QShortcut", "Launch (5)") },
++ { Qt::Key_Launch6, QT_TRANSLATE_NOOP("QShortcut", "Launch (6)") },
++ { Qt::Key_Launch7, QT_TRANSLATE_NOOP("QShortcut", "Launch (7)") },
++ { Qt::Key_Launch8, QT_TRANSLATE_NOOP("QShortcut", "Launch (8)") },
++ { Qt::Key_Launch9, QT_TRANSLATE_NOOP("QShortcut", "Launch (9)") },
++ { Qt::Key_LaunchA, QT_TRANSLATE_NOOP("QShortcut", "Launch (A)") },
++ { Qt::Key_LaunchB, QT_TRANSLATE_NOOP("QShortcut", "Launch (B)") },
++ { Qt::Key_LaunchC, QT_TRANSLATE_NOOP("QShortcut", "Launch (C)") },
++ { Qt::Key_LaunchD, QT_TRANSLATE_NOOP("QShortcut", "Launch (D)") },
++ { Qt::Key_LaunchE, QT_TRANSLATE_NOOP("QShortcut", "Launch (E)") },
++ { Qt::Key_LaunchF, QT_TRANSLATE_NOOP("QShortcut", "Launch (F)") },
++ { Qt::Key_MonBrightnessUp, QT_TRANSLATE_NOOP("QShortcut", "Monitor Brightness Up") },
++ { Qt::Key_MonBrightnessDown, QT_TRANSLATE_NOOP("QShortcut", "Monitor Brightness Down") },
++ { Qt::Key_KeyboardLightOnOff, QT_TRANSLATE_NOOP("QShortcut", "Keyboard Light On/Off") },
++ { Qt::Key_KeyboardBrightnessUp, QT_TRANSLATE_NOOP("QShortcut", "Keyboard Brightness Up") },
++ { Qt::Key_KeyboardBrightnessDown, QT_TRANSLATE_NOOP("QShortcut", "Keyboard Brightness Down") },
++ { Qt::Key_PowerOff, QT_TRANSLATE_NOOP("QShortcut", "Power Off") },
++ { Qt::Key_WakeUp, QT_TRANSLATE_NOOP("QShortcut", "Wake Up") },
++ { Qt::Key_Eject, QT_TRANSLATE_NOOP("QShortcut", "Eject") },
++ { Qt::Key_ScreenSaver, QT_TRANSLATE_NOOP("QShortcut", "Screensaver") },
++ { Qt::Key_WWW, QT_TRANSLATE_NOOP("QShortcut", "WWW") },
++ { Qt::Key_Sleep, QT_TRANSLATE_NOOP("QShortcut", "Sleep") },
++ { Qt::Key_LightBulb, QT_TRANSLATE_NOOP("QShortcut", "LightBulb") },
++ { Qt::Key_Shop, QT_TRANSLATE_NOOP("QShortcut", "Shop") },
++ { Qt::Key_History, QT_TRANSLATE_NOOP("QShortcut", "History") },
++ { Qt::Key_AddFavorite, QT_TRANSLATE_NOOP("QShortcut", "Add Favorite") },
++ { Qt::Key_HotLinks, QT_TRANSLATE_NOOP("QShortcut", "Hot Links") },
++ { Qt::Key_BrightnessAdjust, QT_TRANSLATE_NOOP("QShortcut", "Adjust Brightness") },
++ { Qt::Key_Finance, QT_TRANSLATE_NOOP("QShortcut", "Finance") },
++ { Qt::Key_Community, QT_TRANSLATE_NOOP("QShortcut", "Community") },
++ { Qt::Key_AudioRewind, QT_TRANSLATE_NOOP("QShortcut", "Audio Rewind") },
++ { Qt::Key_BackForward, QT_TRANSLATE_NOOP("QShortcut", "Back Forward") },
++ { Qt::Key_ApplicationLeft, QT_TRANSLATE_NOOP("QShortcut", "Application Left") },
++ { Qt::Key_ApplicationRight, QT_TRANSLATE_NOOP("QShortcut", "Application Right") },
++ { Qt::Key_Book, QT_TRANSLATE_NOOP("QShortcut", "Book") },
++ { Qt::Key_CD, QT_TRANSLATE_NOOP("QShortcut", "CD") },
++ { Qt::Key_Calculator, QT_TRANSLATE_NOOP("QShortcut", "Calculator") },
++ { Qt::Key_Clear, QT_TRANSLATE_NOOP("QShortcut", "Clear") },
++ { Qt::Key_ClearGrab, QT_TRANSLATE_NOOP("QShortcut", "Clear Grab") },
++ { Qt::Key_Close, QT_TRANSLATE_NOOP("QShortcut", "Close") },
++ { Qt::Key_Copy, QT_TRANSLATE_NOOP("QShortcut", "Copy") },
++ { Qt::Key_Cut, QT_TRANSLATE_NOOP("QShortcut", "Cut") },
++ { Qt::Key_Display, QT_TRANSLATE_NOOP("QShortcut", "Display") },
++ { Qt::Key_DOS, QT_TRANSLATE_NOOP("QShortcut", "DOS") },
++ { Qt::Key_Documents, QT_TRANSLATE_NOOP("QShortcut", "Documents") },
++ { Qt::Key_Excel, QT_TRANSLATE_NOOP("QShortcut", "Spreadsheet") },
++ { Qt::Key_Explorer, QT_TRANSLATE_NOOP("QShortcut", "Browser") },
++ { Qt::Key_Game, QT_TRANSLATE_NOOP("QShortcut", "Game") },
++ { Qt::Key_Go, QT_TRANSLATE_NOOP("QShortcut", "Go") },
++ { Qt::Key_iTouch, QT_TRANSLATE_NOOP("QShortcut", "iTouch") },
++ { Qt::Key_LogOff, QT_TRANSLATE_NOOP("QShortcut", "Logoff") },
++ { Qt::Key_Market, QT_TRANSLATE_NOOP("QShortcut", "Market") },
++ { Qt::Key_Meeting, QT_TRANSLATE_NOOP("QShortcut", "Meeting") },
++ { Qt::Key_MenuKB, QT_TRANSLATE_NOOP("QShortcut", "Keyboard Menu") },
++ { Qt::Key_MenuPB, QT_TRANSLATE_NOOP("QShortcut", "Menu PB") },
++ { Qt::Key_MySites, QT_TRANSLATE_NOOP("QShortcut", "My Sites") },
++ { Qt::Key_News, QT_TRANSLATE_NOOP("QShortcut", "News") },
++ { Qt::Key_OfficeHome, QT_TRANSLATE_NOOP("QShortcut", "Home Office") },
++ { Qt::Key_Option, QT_TRANSLATE_NOOP("QShortcut", "Option") },
++ { Qt::Key_Paste, QT_TRANSLATE_NOOP("QShortcut", "Paste") },
++ { Qt::Key_Phone, QT_TRANSLATE_NOOP("QShortcut", "Phone") },
++ { Qt::Key_Reply, QT_TRANSLATE_NOOP("QShortcut", "Reply") },
++ { Qt::Key_Reload, QT_TRANSLATE_NOOP("QShortcut", "Reload") },
++ { Qt::Key_RotateWindows, QT_TRANSLATE_NOOP("QShortcut", "Rotate Windows") },
++ { Qt::Key_RotationPB, QT_TRANSLATE_NOOP("QShortcut", "Rotation PB") },
++ { Qt::Key_RotationKB, QT_TRANSLATE_NOOP("QShortcut", "Rotation KB") },
++ { Qt::Key_Save, QT_TRANSLATE_NOOP("QShortcut", "Save") },
++ { Qt::Key_Send, QT_TRANSLATE_NOOP("QShortcut", "Send") },
++ { Qt::Key_Spell, QT_TRANSLATE_NOOP("QShortcut", "Spellchecker") },
++ { Qt::Key_SplitScreen, QT_TRANSLATE_NOOP("QShortcut", "Split Screen") },
++ { Qt::Key_Support, QT_TRANSLATE_NOOP("QShortcut", "Support") },
++ { Qt::Key_TaskPane, QT_TRANSLATE_NOOP("QShortcut", "Task Panel") },
++ { Qt::Key_Terminal, QT_TRANSLATE_NOOP("QShortcut", "Terminal") },
++ { Qt::Key_Tools, QT_TRANSLATE_NOOP("QShortcut", "Tools") },
++ { Qt::Key_Travel, QT_TRANSLATE_NOOP("QShortcut", "Travel") },
++ { Qt::Key_Video, QT_TRANSLATE_NOOP("QShortcut", "Video") },
++ { Qt::Key_Word, QT_TRANSLATE_NOOP("QShortcut", "Word Processor") },
++ { Qt::Key_Xfer, QT_TRANSLATE_NOOP("QShortcut", "XFer") },
++ { Qt::Key_ZoomIn, QT_TRANSLATE_NOOP("QShortcut", "Zoom In") },
++ { Qt::Key_ZoomOut, QT_TRANSLATE_NOOP("QShortcut", "Zoom Out") },
++ { Qt::Key_Away, QT_TRANSLATE_NOOP("QShortcut", "Away") },
++ { Qt::Key_Messenger, QT_TRANSLATE_NOOP("QShortcut", "Messenger") },
++ { Qt::Key_WebCam, QT_TRANSLATE_NOOP("QShortcut", "WebCam") },
++ { Qt::Key_MailForward, QT_TRANSLATE_NOOP("QShortcut", "Mail Forward") },
++ { Qt::Key_Pictures, QT_TRANSLATE_NOOP("QShortcut", "Pictures") },
++ { Qt::Key_Music, QT_TRANSLATE_NOOP("QShortcut", "Music") },
++ { Qt::Key_Battery, QT_TRANSLATE_NOOP("QShortcut", "Battery") },
++ { Qt::Key_Bluetooth, QT_TRANSLATE_NOOP("QShortcut", "Bluetooth") },
++ { Qt::Key_WLAN, QT_TRANSLATE_NOOP("QShortcut", "Wireless") },
++ { Qt::Key_UWB, QT_TRANSLATE_NOOP("QShortcut", "Ultra Wide Band") },
++ { Qt::Key_AudioForward, QT_TRANSLATE_NOOP("QShortcut", "Audio Forward") },
++ { Qt::Key_AudioRepeat, QT_TRANSLATE_NOOP("QShortcut", "Audio Repeat") },
++ { Qt::Key_AudioRandomPlay, QT_TRANSLATE_NOOP("QShortcut", "Audio Random Play") },
++ { Qt::Key_Subtitle, QT_TRANSLATE_NOOP("QShortcut", "Subtitle") },
++ { Qt::Key_AudioCycleTrack, QT_TRANSLATE_NOOP("QShortcut", "Audio Cycle Track") },
++ { Qt::Key_Time, QT_TRANSLATE_NOOP("QShortcut", "Time") },
++ { Qt::Key_Select, QT_TRANSLATE_NOOP("QShortcut", "Select") },
++ { Qt::Key_View, QT_TRANSLATE_NOOP("QShortcut", "View") },
++ { Qt::Key_TopMenu, QT_TRANSLATE_NOOP("QShortcut", "Top Menu") },
++ { Qt::Key_Suspend, QT_TRANSLATE_NOOP("QShortcut", "Suspend") },
++ { Qt::Key_Hibernate, QT_TRANSLATE_NOOP("QShortcut", "Hibernate") },
+
+ // --------------------------------------------------------------
+ // More consistent namings
diff --git a/debian/patches/0289-context-for-shortcuts-tr.diff b/debian/patches/0289-context-for-shortcuts-tr.diff
new file mode 100644
index 0000000..81fef9c
--- /dev/null
+++ b/debian/patches/0289-context-for-shortcuts-tr.diff
@@ -0,0 +1,65 @@
+From 9eb3560cfd5cd0bc9c7bf79f2c27657ee07b8f95 Mon Sep 17 00:00:00 2001
+From: Albert Astals Cid <aacid@kde.org>
+Date: Sat, 8 Aug 2009 14:40:25 +0200
+Subject: [PATCH 17/18] Add context to tr calls in QShortcut
+
+Some languages have special rules for using "+" to concatenate strings and
+for example it needs to be Ctrl + Shift instead of Ctrl+Shift, adding
+context to these strings helps creating a more correct translation
+---
+ src/gui/kernel/qkeysequence.cpp | 20 ++++++++++----------
+ 1 files changed, 10 insertions(+), 10 deletions(-)
+
+--- a/src/gui/kernel/qkeysequence.cpp
++++ b/src/gui/kernel/qkeysequence.cpp
+@@ -1083,10 +1083,10 @@ int QKeySequencePrivate::decodeString(co
+
+ QList<QModifKeyName> modifs;
+ if (nativeText) {
+- modifs << QModifKeyName(Qt::CTRL, QShortcut::tr("Ctrl").toLower().append(QLatin1Char('+')))
+- << QModifKeyName(Qt::SHIFT, QShortcut::tr("Shift").toLower().append(QLatin1Char('+')))
+- << QModifKeyName(Qt::ALT, QShortcut::tr("Alt").toLower().append(QLatin1Char('+')))
+- << QModifKeyName(Qt::META, QShortcut::tr("Meta").toLower().append(QLatin1Char('+')));
++ modifs << QModifKeyName(Qt::CTRL, QShortcut::tr("Ctrl", "Ctrl key, used for shortcuts").toLower().append(QLatin1Char('+')))
++ << QModifKeyName(Qt::SHIFT, QShortcut::tr("Shift", "Shift key, used for shortcuts").toLower().append(QLatin1Char('+')))
++ << QModifKeyName(Qt::ALT, QShortcut::tr("Alt", "Alt key, used for shortcuts").toLower().append(QLatin1Char('+')))
++ << QModifKeyName(Qt::META, QShortcut::tr("Meta", "Meta key, used for shortcuts").toLower().append(QLatin1Char('+')));
+ }
+ modifs += *gmodifs; // Test non-translated ones last
+
+@@ -1178,7 +1178,7 @@ QString QKeySequence::encodeString(int k
+ static inline void addKey(QString &str, const QString &theKey, QKeySequence::SequenceFormat format)
+ {
+ if (!str.isEmpty())
+- str += (format == QKeySequence::NativeText) ? QShortcut::tr("+")
++ str += (format == QKeySequence::NativeText) ? QShortcut::tr("+", "Symbol used to concatenate keys in shortcuts")
+ : QString::fromLatin1("+");
+ str += theKey;
+ }
+@@ -1203,13 +1203,13 @@ QString QKeySequencePrivate::encodeStrin
+ {
+ // On other systems the order is Meta, Control, Alt, Shift
+ if ((key & Qt::META) == Qt::META)
+- s = nativeText ? QShortcut::tr("Meta") : QString::fromLatin1("Meta");
++ s = nativeText ? QShortcut::tr("Meta", "Meta key, used for shortcuts") : QString::fromLatin1("Meta");
+ if ((key & Qt::CTRL) == Qt::CTRL)
+- addKey(s, nativeText ? QShortcut::tr("Ctrl") : QString::fromLatin1("Ctrl"), format);
++ addKey(s, nativeText ? QShortcut::tr("Ctrl", "Ctrl key, used for shortcuts") : QString::fromLatin1("Ctrl"), format);
+ if ((key & Qt::ALT) == Qt::ALT)
+- addKey(s, nativeText ? QShortcut::tr("Alt") : QString::fromLatin1("Alt"), format);
++ addKey(s, nativeText ? QShortcut::tr("Alt", "Alt key, used for shortcuts") : QString::fromLatin1("Alt"), format);
+ if ((key & Qt::SHIFT) == Qt::SHIFT)
+- addKey(s, nativeText ? QShortcut::tr("Shift") : QString::fromLatin1("Shift"), format);
++ addKey(s, nativeText ? QShortcut::tr("Shift", "Shift key, used for shortcuts") : QString::fromLatin1("Shift"), format);
+ }
+
+
+@@ -1224,7 +1224,7 @@ QString QKeySequencePrivate::encodeStrin
+ p += QChar((key-0x10000)%400+0xdc00);
+ }
+ } else if (key >= Qt::Key_F1 && key <= Qt::Key_F35) {
+- p = nativeText ? QShortcut::tr("F%1").arg(key - Qt::Key_F1 + 1)
++ p = nativeText ? QShortcut::tr("F%1", "Fx key, used for shortcuts").arg(key - Qt::Key_F1 + 1)
+ : QString::fromLatin1("F%1").arg(key - Qt::Key_F1 + 1);
+ } else if (key) {
+ int i=0;
diff --git a/debian/patches/05_append_qt4_target.diff b/debian/patches/05_append_qt4_target.diff
index 735ea8f..3a4bd00 100644
--- a/debian/patches/05_append_qt4_target.diff
+++ b/debian/patches/05_append_qt4_target.diff
@@ -2,10 +2,10 @@ author: Fathi Boudra <fabo@debian.org>
--- a/config.tests/unix/compile.test
+++ b/config.tests/unix/compile.test
-@@ -60,7 +60,7 @@ test -d "$OUTDIR/$TEST" || mkdir -p "$OU
- cd "$OUTDIR/$TEST"
+@@ -61,7 +61,7 @@ cd "$OUTDIR/$TEST"
+
+ test -r Makefile && make distclean >/dev/null 2>&1
- make distclean >/dev/null 2>&1
-"$OUTDIR/bin/qmake" -nocache -spec "$QMKSPEC" "CONFIG+=$QMAKE_CONFIG" "LIBS*=$LFLAGS" "LIBS+=$MAC_ARCH_LFLAGS" "INCLUDEPATH*=$INCLUDEPATH" "QMAKE_CXXFLAGS*=$CXXFLAGS" "QMAKE_CXXFLAGS+=$MAC_ARCH_CXXFLAGS" "$SRCDIR/$TEST/$EXE.pro" -o "$OUTDIR/$TEST/Makefile"
+"$OUTDIR/bin/qmake-qt4" -nocache -spec "$QMKSPEC" "CONFIG+=$QMAKE_CONFIG" "LIBS*=$LFLAGS" "LIBS+=$MAC_ARCH_LFLAGS" "INCLUDEPATH*=$INCLUDEPATH" "QMAKE_CXXFLAGS*=$CXXFLAGS" "QMAKE_CXXFLAGS+=$MAC_ARCH_CXXFLAGS" "$SRCDIR/$TEST/$EXE.pro" -o "$OUTDIR/$TEST/Makefile"
@@ -57,7 +57,7 @@ author: Fathi Boudra <fabo@debian.org>
if [ "$VERBOSE" = "yes" ]; then
--- a/configure
+++ b/configure
-@@ -4028,7 +4028,7 @@ END {
+@@ -4077,7 +4077,7 @@ END {
}
# build qmake
@@ -66,7 +66,7 @@ author: Fathi Boudra <fabo@debian.org>
echo "Creating qmake. Please wait..."
OLD_QCONFIG_H=
-@@ -6661,8 +6661,8 @@ QMAKE_ABSOLUTE_SOURCE_ROOT = \$\$QT_SOUR
+@@ -6737,8 +6737,8 @@ QMAKE_ABSOLUTE_SOURCE_ROOT = \$\$QT_SOUR
QMAKE_MOC_SRC = \$\$QT_BUILD_TREE/src/moc
#local paths that cannot be queried from the QT_INSTALL_* properties while building QTDIR
@@ -77,7 +77,7 @@ author: Fathi Boudra <fabo@debian.org>
QMAKE_UIC3 = \$\$QT_BUILD_TREE/bin/uic3
QMAKE_RCC = \$\$QT_BUILD_TREE/bin/rcc
QMAKE_QDBUSXML2CPP = \$\$QT_BUILD_TREE/bin/qdbusxml2cpp
-@@ -7011,11 +7011,11 @@ EXEC=""
+@@ -7088,11 +7088,11 @@ EXEC=""
#-------------------------------------------------------------------------------
echo "Finding project files. Please wait..."
@@ -91,7 +91,7 @@ author: Fathi Boudra <fabo@debian.org>
fi
# .projects -> projects to process
-@@ -7188,7 +7188,7 @@ for file in .projects .projects.3; do
+@@ -7265,7 +7265,7 @@ for file in .projects .projects.3; do
echo " for $a\c"
fi
@@ -102,7 +102,7 @@ author: Fathi Boudra <fabo@debian.org>
if echo '\c' | grep '\c' >/dev/null; then
--- a/projects.pro
+++ b/projects.pro
-@@ -115,7 +115,7 @@ qmake.path=$$[QT_INSTALL_BINS]
+@@ -119,7 +119,7 @@ qmake.path=$$[QT_INSTALL_BINS]
win32 {
qmake.files=$$QT_BUILD_TREE/bin/qmake.exe
} else {
@@ -195,7 +195,7 @@ author: Fathi Boudra <fabo@debian.org>
include($$QT_SOURCE_TREE/tools/shared/qttoolbardialog/qttoolbardialog.pri)
--- a/tools/linguist/linguist/linguist.pro
+++ b/tools/linguist/linguist/linguist.pro
-@@ -68,7 +68,7 @@ HEADERS += \
+@@ -67,7 +67,7 @@ HEADERS += \
contains(QT_PRODUCT, OpenSource.*):DEFINES *= QT_OPENSOURCE
DEFINES += QT_KEYWORDS
diff --git a/debian/patches/06_CVE-2009-1725.diff b/debian/patches/06_CVE-2009-1725.diff
deleted file mode 100644
index dcf357e..0000000
--- a/debian/patches/06_CVE-2009-1725.diff
+++ /dev/null
@@ -1,26 +0,0 @@
-Fixed upstream and included in Qt 4.5.3
-
---- a/src/3rdparty/webkit/WebCore/html/HTMLTokenizer.cpp
-+++ b/src/3rdparty/webkit/WebCore/html/HTMLTokenizer.cpp
-@@ -867,7 +867,9 @@ HTMLTokenizer::State HTMLTokenizer::pars
- }
- } else {
- // FIXME: We should eventually colorize entities by sending them as a special token.
-- checkBuffer(11);
-+ // 12 bytes required: up to 10 bytes in m_cBuffer plus the
-+ // leading '&' and trailing ';'
-+ checkBuffer(12);
- *dest++ = '&';
- for (unsigned i = 0; i < cBufferPos; i++)
- dest[i] = m_cBuffer[i];
-@@ -878,7 +880,9 @@ HTMLTokenizer::State HTMLTokenizer::pars
- }
- }
- } else {
-- checkBuffer(10);
-+ // 11 bytes required: up to 10 bytes in m_cBuffer plus the
-+ // leading '&'
-+ checkBuffer(11);
- // ignore the sequence, add it to the buffer as plaintext
- *dest++ = '&';
- for (unsigned i = 0; i < cBufferPos; i++)
diff --git a/debian/patches/07_trust_dpkg-arch_over_uname-m.diff b/debian/patches/07_trust_dpkg-arch_over_uname-m.diff
index 730132c..37a0fa8 100644
--- a/debian/patches/07_trust_dpkg-arch_over_uname-m.diff
+++ b/debian/patches/07_trust_dpkg-arch_over_uname-m.diff
@@ -4,7 +4,7 @@ Trolltech task ID : 181882
--- a/configure
+++ b/configure
-@@ -94,7 +94,50 @@ getQMakeConf()
+@@ -125,7 +125,50 @@ getQMakeConf()
#-------------------------------------------------------------------------------
# need that throughout the script
diff --git a/debian/patches/09_qmake_lflags_as-needed.diff b/debian/patches/09_qmake_lflags_as-needed.diff
index 5fb7a7f..a559d64 100644
--- a/debian/patches/09_qmake_lflags_as-needed.diff
+++ b/debian/patches/09_qmake_lflags_as-needed.diff
@@ -5,7 +5,7 @@ Bug reported to Trolltech.
--- a/configure
+++ b/configure
-@@ -583,6 +583,8 @@ mkdir -p "$outpath/config.tests"
+@@ -614,6 +614,8 @@ mkdir -p "$outpath/config.tests"
rm -f "$outpath/config.tests/.qmake.cache"
cp "$QMAKE_VARS_FILE" "$outpath/config.tests/.qmake.cache"
diff --git a/debian/patches/10_config_tests_fixes.diff b/debian/patches/10_config_tests_fixes.diff
index bbfa574..28acd03 100644
--- a/debian/patches/10_config_tests_fixes.diff
+++ b/debian/patches/10_config_tests_fixes.diff
@@ -6,36 +6,8 @@
mac:CONFIG -= app_bundle
-LIBS += -lgds
+LIBS += -lfbclient
---- a/config.tests/unix/odbc/odbc.pro
-+++ b/config.tests/unix/odbc/odbc.pro
-@@ -1,4 +1,4 @@
- SOURCES = odbc.cpp
- CONFIG -= qt dylib
- mac:CONFIG -= app_bundle
--LIBS += -lodbc
-+LIBS += -liodbc
---- a/src/plugins/sqldrivers/odbc/odbc.pro
-+++ b/src/plugins/sqldrivers/odbc/odbc.pro
-@@ -12,7 +12,7 @@ mac {
-
- unix {
- !contains( LIBS, .*odbc.* ) {
-- LIBS *= -lodbc
-+ LIBS *= -liodbc
- }
- }
-
--- a/src/sql/drivers/drivers.pri
+++ b/src/sql/drivers/drivers.pri
-@@ -48,7 +48,7 @@ contains(sql-drivers, odbc) {
- SOURCES += drivers/odbc/qsql_odbc.cpp
-
- mac:!contains( LIBS, .*odbc.* ):LIBS *= -liodbc
-- unix:!contains( LIBS, .*odbc.* ):LIBS *= -lodbc
-+ unix:!contains( LIBS, .*odbc.* ):LIBS *= -liodbc
-
- win32 {
- !win32-borland:LIBS *= -lodbc32
@@ -93,7 +93,7 @@ contains(sql-drivers, ibase) {
HEADERS += drivers/ibase/qsql_ibase.h
SOURCES += drivers/ibase/qsql_ibase.cpp
diff --git a/debian/patches/15_fix_qmake_makefile_generation.diff b/debian/patches/15_fix_qmake_makefile_generation.diff
index c38ce3f..6e5a981 100644
--- a/debian/patches/15_fix_qmake_makefile_generation.diff
+++ b/debian/patches/15_fix_qmake_makefile_generation.diff
@@ -1,6 +1,6 @@
--- a/qmake/generators/makefile.cpp
+++ b/qmake/generators/makefile.cpp
-@@ -2334,7 +2334,7 @@ MakefileGenerator::writeSubTargets(QText
+@@ -2333,7 +2333,7 @@ MakefileGenerator::writeSubTargets(QText
QString mkfile = subtarget->makefile;
if(!in_directory.isEmpty())
diff --git a/debian/patches/17_add_postgresql_8.3_support.diff b/debian/patches/17_add_postgresql_8.3_support.diff
index f0db9f6..fa2e470 100644
--- a/debian/patches/17_add_postgresql_8.3_support.diff
+++ b/debian/patches/17_add_postgresql_8.3_support.diff
@@ -2,7 +2,7 @@ Enable PostgreSQL 8.3 support.
--- a/src/sql/drivers/psql/qsql_psql.cpp
+++ b/src/sql/drivers/psql/qsql_psql.cpp
-@@ -638,9 +638,12 @@ static QPSQLDriver::Protocol getPSQLVers
+@@ -659,9 +659,12 @@ static QPSQLDriver::Protocol getPSQLVers
serverVersion = QPSQLDriver::Version81;
break;
case 2:
@@ -16,7 +16,7 @@ Enable PostgreSQL 8.3 support.
}
break;
default:
-@@ -921,6 +924,7 @@ QSqlIndex QPSQLDriver::primaryIndex(cons
+@@ -956,6 +959,7 @@ QSqlIndex QPSQLDriver::primaryIndex(cons
case QPSQLDriver::Version8:
case QPSQLDriver::Version81:
case QPSQLDriver::Version82:
@@ -24,7 +24,7 @@ Enable PostgreSQL 8.3 support.
stmt = QLatin1String("SELECT pg_attribute.attname, pg_attribute.atttypid::int, "
"pg_class.relname "
"FROM pg_attribute, pg_class "
-@@ -994,6 +998,7 @@ QSqlRecord QPSQLDriver::record(const QSt
+@@ -1029,6 +1033,7 @@ QSqlRecord QPSQLDriver::record(const QSt
case QPSQLDriver::Version8:
case QPSQLDriver::Version81:
case QPSQLDriver::Version82:
diff --git a/debian/patches/70_hppa_ldcw_fix.diff b/debian/patches/70_hppa_ldcw_fix.diff
index c5b2125..71a959a 100644
--- a/debian/patches/70_hppa_ldcw_fix.diff
+++ b/debian/patches/70_hppa_ldcw_fix.diff
@@ -4,7 +4,10 @@ patch from Ubuntu to properly support hppa.
--- a/src/corelib/arch/parisc/q_ldcw.s
+++ b/src/corelib/arch/parisc/q_ldcw.s
-@@ -1,17 +1,7 @@
+@@ -38,20 +38,10 @@
+ ;** $QT_END_LICENSE$
+ ;**
+ ;****************************************************************************/
- .SPACE $PRIVATE$
- .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
- .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
diff --git a/debian/patches/series b/debian/patches/series
index 173bd24..c376f33 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -7,8 +7,9 @@
0255-qtreeview-selection-columns-hidden.diff
0274-shm-native-image-fix.diff
0280-deserialization-custom-dbus-properties.diff
-0286-fix-error-string.diff
-0287-attempt-to-fix-header-installation-for-phonon.diff
+0288-more-x-keycodes.diff
+0289-context-for-shortcuts-tr.diff
+0287-qmenu-respect-minwidth.diff
# debian patches
01_qmake_for_debian.diff
@@ -16,7 +17,6 @@
03_launch_moc-qt4.diff
04_launch_uic-qt4.diff
05_append_qt4_target.diff
-06_CVE-2009-1725.diff
07_trust_dpkg-arch_over_uname-m.diff
09_qmake_lflags_as-needed.diff
10_config_tests_fixes.diff