diff options
Diffstat (limited to 'redhat/kdebase/kdebase-3.5.13-enable_xtest_support.patch')
-rw-r--r-- | redhat/kdebase/kdebase-3.5.13-enable_xtest_support.patch | 135 |
1 files changed, 135 insertions, 0 deletions
diff --git a/redhat/kdebase/kdebase-3.5.13-enable_xtest_support.patch b/redhat/kdebase/kdebase-3.5.13-enable_xtest_support.patch new file mode 100644 index 000000000..cec848973 --- /dev/null +++ b/redhat/kdebase/kdebase-3.5.13-enable_xtest_support.patch @@ -0,0 +1,135 @@ +commit 45fb5561be6e828c78180c781f74d0ae9d1c3ea4 +Author: Timothy Pearson <kb9vqf@pearsoncomputing.net> +Date: 1326230757 -0600 + + Enable xtest support flag + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b832a92..f4d11ac 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -65,6 +65,7 @@ option( WITH_XRANDR "Enable xrandr support" OFF ) + option( WITH_XRENDER "Enable xrender support" OFF ) + option( WITH_XDAMAGE "Enable xdamage support" OFF ) + option( WITH_XEXT "Enable xext support" OFF ) ++option( WITH_XTEST "Enable xext support" OFF ) + option( WITH_LIBUSB "Enable control of some mouse models through libusb" OFF ) + option( WITH_LIBRAW1394 "Enable visualization of ieee1394 devices through libraw1394" OFF ) + option( WITH_SUDO_KDESU_BACKEND "Use sudo as backend for kdesu (default is su)" OFF ) +diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake +index 7b7a1b4..df892e1 100644 +--- a/ConfigureChecks.cmake ++++ b/ConfigureChecks.cmake +@@ -100,12 +100,25 @@ endif( ) + # xext (kwin/kompmgr) + if( WITH_XEXT ) + pkg_search_module( XEXT xext ) +- if( NOT XEXT_FOUND ) ++ if( XEXT_FOUND ) ++ set( HAVE_XEXT 1 ) ++ else( XEXT_FOUND ) + tde_message_fatal( "xext is requested, but was not found on your system" ) + endif( ) + endif( ) + + ++# xtest (kxkb) ++if( WITH_XTEST ) ++ pkg_search_module( XTEST xtst ) ++ if( XTEST_FOUND ) ++ set( HAVE_XTEST 1 ) ++ else( XTEST_FOUND ) ++ tde_message_fatal( "xtest is requested, but was not found on your system" ) ++ endif( ) ++endif( ) ++ ++ + # GL + if( BUILD_KDESKTOP OR BUILD_KCONTROL OR BUILD_KSCREENSAVER ) + check_library_exists( GL glXChooseVisual "" HAVE_GLXCHOOSEVISUAL ) +diff --git a/config.h.cmake b/config.h.cmake +index d72a96c..a8de2fa 100644 +--- a/config.h.cmake ++++ b/config.h.cmake +@@ -18,6 +18,9 @@ + // konsole, kdm, kxkb + #cmakedefine HAVE_XKB 1 + ++// kxkb ++#cmakedefine HAVE_XTEST 1 ++ + // kdm, kioslave + #cmakedefine HAVE_TERMIOS_H 1 + +diff --git a/kxkb/CMakeLists.txt b/kxkb/CMakeLists.txt +index 703591a..f36a003 100644 +--- a/kxkb/CMakeLists.txt ++++ b/kxkb/CMakeLists.txt +@@ -22,6 +22,7 @@ include_directories( + + link_directories( + ${TQT_LIBRARY_DIRS} ++ ${XTEST_LIBDIR} + ) + + +@@ -39,7 +40,7 @@ tde_add_kpart( kcm_keyboard AUTOMOC + extension.cpp x11helper.cpp rules.cpp kxkbconfig.cpp + pixmap.cpp kcmlayout.cpp kcmlayoutwidget.ui + kcmmisc.cpp kcmmiscwidget.ui +- LINK kio-shared xkbfile ++ LINK kio-shared xkbfile ${XTEST_LIBRARIES} + DESTINATION ${PLUGIN_INSTALL_DIR} + ) + +diff --git a/kxkb/kcmmisc.cpp b/kxkb/kcmmisc.cpp +index b4c18a4..8850d89 100644 +--- a/kxkb/kcmmisc.cpp ++++ b/kxkb/kcmmisc.cpp +@@ -344,6 +344,21 @@ int xkb_set_off() + return 1; + } + ++int xkb_state() ++ { ++ unsigned int mask; ++ unsigned int numlockState; ++ XkbStateRec xkbState; ++ if( !xkb_init()) ++ return 0; ++ mask = xkb_numlock_mask(); ++ if( mask == 0 ) ++ return 0; ++ XkbGetState( dpy, XkbUseCoreKbd, &xkbState); ++ numlockState = xkbState.locked_mods & mask; ++ return numlockState; ++ } ++ + int xkb_toggle() + { + unsigned int mask; +@@ -443,7 +458,14 @@ void numlock_toggle() + return; + #endif + #ifdef HAVE_XTEST ++#ifdef HAVE_XKB ++ if (xkb_state()) ++ xtest_set_on(); ++ else ++ xtest_set_off(); ++#else // HAVE_XKB + xtest_toggle(); ++#endif // HAVE_XKB + #endif + } + // This code is taken from xset utility from XFree 4.3 (http://www.xfree86.org/) +--- kdebase/khotkeys/shared/CMakeLists.txt.ORI 2012-01-14 21:49:34.423813010 +0100 ++++ kdebase/khotkeys/shared/CMakeLists.txt 2012-01-14 21:53:23.915008098 +0100 +@@ -36,6 +36,6 @@ + tde_add_library( ${target} SHARED AUTOMOC + SOURCES ${${target}_SRCS} + VERSION 1.0.0 +- LINK kio-shared ++ LINK kio-shared ${XTEST_LIBRARIES} + DESTINATION ${LIB_INSTALL_DIR} + ) |