Hello community, here is the log from the commit of package kglobalaccel for openSUSE:Factory checked in at 2017-10-27 13:54:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kglobalaccel (Old) and /work/SRC/openSUSE:Factory/.kglobalaccel.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kglobalaccel" Fri Oct 27 13:54:57 2017 rev:47 rq:536323 version:5.39.0 Changes: -------- --- /work/SRC/openSUSE:Factory/kglobalaccel/kglobalaccel.changes 2017-09-19 16:23:44.720349278 +0200 +++ /work/SRC/openSUSE:Factory/.kglobalaccel.new/kglobalaccel.changes 2017-10-27 13:54:58.970075278 +0200 @@ -1,0 +2,12 @@ +Mon Oct 23 06:41:40 CEST 2017 - [email protected] + +- Update to 5.39.0 + * New feature release + * For more details please see: + * https://www.kde.org/announcements/kde-frameworks-5.39.0.php +- Changes since 5.38.0: + * Revert "KGlobalAccel: port to KKeyServer's new method symXModXToKeyQt, to fix numpad keys" (kde#384597) +- Dropped patches, now usptream: + * 0001-Revert-KGlobalAccel-port-to-KKeyServer-s-new-method-.patch + +------------------------------------------------------------------- Old: ---- 0001-Revert-KGlobalAccel-port-to-KKeyServer-s-new-method-.patch kglobalaccel-5.38.0.tar.xz New: ---- kglobalaccel-5.39.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kglobalaccel.spec ++++++ --- /var/tmp/diff_new_pack.GkptCE/_old 2017-10-27 13:54:59.950029473 +0200 +++ /var/tmp/diff_new_pack.GkptCE/_new 2017-10-27 13:54:59.950029473 +0200 @@ -19,9 +19,9 @@ %bcond_without lang %define lname libKF5GlobalAccel5 -%define _tar_path 5.38 +%define _tar_path 5.39 Name: kglobalaccel -Version: 5.38.0 +Version: 5.39.0 Release: 0 # Full KF5 version (e.g. 5.33.0) %{!?_kf5_version: %global _kf5_version %{version}} @@ -33,8 +33,6 @@ Url: http://www.kde.org Source: http://download.kde.org/stable/frameworks/%{_tar_path}/%{name}-%{version}.tar.xz Source1: baselibs.conf -# PATCH-FIX-OPENSUSE -Patch1: 0001-Revert-KGlobalAccel-port-to-KKeyServer-s-new-method-.patch BuildRequires: cmake >= 3.0 BuildRequires: extra-cmake-modules >= %{_kf5_bugfix_version} BuildRequires: fdupes @@ -112,7 +110,6 @@ %prep %setup -q -%patch1 -p1 %build %cmake_kf5 -d build -- -Dlconvert_executable=%{_kf5_libdir}/qt5/bin/lconvert ++++++ kglobalaccel-5.38.0.tar.xz -> kglobalaccel-5.39.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kglobalaccel-5.38.0/CMakeLists.txt new/kglobalaccel-5.39.0/CMakeLists.txt --- old/kglobalaccel-5.38.0/CMakeLists.txt 2017-09-03 10:06:21.000000000 +0200 +++ new/kglobalaccel-5.39.0/CMakeLists.txt 2017-10-07 21:14:37.000000000 +0200 @@ -1,12 +1,12 @@ cmake_minimum_required(VERSION 3.0) -set(KF5_VERSION "5.38.0") # handled by release scripts -set(KF5_DEP_VERSION "5.38.0") # handled by release scripts +set(KF5_VERSION "5.39.0") # handled by release scripts +set(KF5_DEP_VERSION "5.39.0") # handled by release scripts project(KGlobalAccel VERSION ${KF5_VERSION}) # ECM setup include(FeatureSummary) -find_package(ECM 5.38.0 NO_MODULE) +find_package(ECM 5.39.0 NO_MODULE) set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://projects.kde.org/projects/kdesupport/extra-cmake-modules") feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kglobalaccel-5.38.0/po/zh_CN/kglobalaccel5_qt.po new/kglobalaccel-5.39.0/po/zh_CN/kglobalaccel5_qt.po --- old/kglobalaccel-5.38.0/po/zh_CN/kglobalaccel5_qt.po 2017-09-03 10:06:21.000000000 +0200 +++ new/kglobalaccel-5.39.0/po/zh_CN/kglobalaccel5_qt.po 2017-10-07 21:14:37.000000000 +0200 @@ -1,3 +1,15 @@ +# translation of kdelibs4.po to Chinese Simplified +# Copyright (C) 2007 Free Software Foundation, Inc. +# +# Lie Ex <[email protected]> 2007-2011. +# Wang Jian <[email protected]>, 1998. +# Sarah Smith <[email protected]>, 2002. +# Xiong Jiang <[email protected]>, 2002,2003,2004. +# Funda Wang <[email protected]>, 2002,2003,2004. +# Liang Qi <[email protected]>, 2007. +# Feng Chao <[email protected]>, 2010, 2012, 2014. +# Ni Hui <[email protected]>, 2010, 2011, 2012. +# Weng Xuetian <[email protected]>, 2011, 2012, 2013, 2015. msgid "" msgstr "" "Project-Id-Version: kdeorg\n" @@ -12,9 +24,7 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: crowdin.com\n" -"X-Crowdin-Project: kdeorg\n" -"X-Crowdin-Language: zh-CN\n" -"X-Crowdin-File: /kf5-trunk/messages/frameworks/baloo_file5.pot\n" +"X-Qt-Contexts: true\n" #: kglobalaccel.cpp:553 msgctxt "KGlobalAccel|" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kglobalaccel-5.38.0/src/runtime/plugins/xcb/kglobalaccel_x11.cpp new/kglobalaccel-5.39.0/src/runtime/plugins/xcb/kglobalaccel_x11.cpp --- old/kglobalaccel-5.38.0/src/runtime/plugins/xcb/kglobalaccel_x11.cpp 2017-09-03 10:06:21.000000000 +0200 +++ new/kglobalaccel-5.39.0/src/runtime/plugins/xcb/kglobalaccel_x11.cpp 2017-10-07 21:14:37.000000000 +0200 @@ -122,7 +122,6 @@ // can remove shift for some keys. (all the %&* and such) if( !(keyQt & Qt::SHIFT) && !KKeyServer::isShiftAsModifierAllowed( keyQt ) && - !(keyQt & Qt::KeypadModifier) && keySymX != xcb_key_symbols_get_keysym(m_keySymbols, keyCodeX, 0) && keySymX == xcb_key_symbols_get_keysym(m_keySymbols, keyCodeX, 1) ) { @@ -244,12 +243,51 @@ xcb_ungrab_keyboard(c, XCB_TIME_CURRENT_TIME); xcb_flush(c); - int keyQt; - if (!KKeyServer::xcbKeyPressEventToQt(pEvent, &keyQt)) { - qCWarning(KGLOBALACCELD) << "KKeyServer::xcbKeyPressEventToQt failed"; - return false; - } - //qDebug() << "keyQt=" << QString::number(keyQt, 16); + xcb_keycode_t keyCodeX = pEvent->detail; + uint16_t keyModX = pEvent->state & (g_keyModMaskXAccel | KKeyServer::MODE_SWITCH); + + xcb_keysym_t keySymX = xcb_key_press_lookup_keysym(m_keySymbols, pEvent, 0); + + // If numlock is active and a keypad key is pressed, XOR the SHIFT state. + // e.g., KP_4 => Shift+KP_Left, and Shift+KP_4 => KP_Left. + if (pEvent->state & KKeyServer::modXNumLock()) { + // If this is a keypad key, + if( keySymX >= XK_KP_Space && keySymX <= XK_KP_9 ) { + switch( keySymX ) { + + // Leave the following keys unaltered + // FIXME: The proper solution is to see which keysyms don't change when shifted. + case XK_KP_Multiply: + case XK_KP_Add: + case XK_KP_Subtract: + case XK_KP_Divide: + case XK_KP_Enter: + break; + + default: + keyModX ^= KKeyServer::modXShift(); + } + } + } + + int keyCodeQt; + int keyModQt; + KKeyServer::symXToKeyQt(keySymX, &keyCodeQt); + KKeyServer::modXToQt(keyModX, &keyModQt); + + if ((keyModQt & Qt::SHIFT) && !KKeyServer::isShiftAsModifierAllowed( keyCodeQt ) ) { +#ifdef KDEDGLOBALACCEL_TRACE + qCDebug(KGLOBALACCELD) << "removing shift modifier"; +#endif + if (keyCodeQt != Qt::Key_Tab) { // KKeySequenceWidget does not map shift+tab to backtab + static const int FirstLevelShift = 1; + keySymX = xcb_key_symbols_get_keysym(m_keySymbols, keyCodeX, FirstLevelShift); + KKeyServer::symXToKeyQt(keySymX, &keyCodeQt); + } + keyModQt &= ~Qt::SHIFT; + } + + int keyQt = keyCodeQt | keyModQt; // All that work for this hey... argh... if (NET::timestampCompare(pEvent->time, QX11Info::appTime()) > 0) {
